Lines Matching refs:rdev
52 static uint32_t radeon_invalid_rreg(struct radeon_device *rdev, uint32_t reg) in radeon_invalid_rreg() argument
69 static void radeon_invalid_wreg(struct radeon_device *rdev, uint32_t reg, uint32_t v) in radeon_invalid_wreg() argument
84 static void radeon_register_accessor_init(struct radeon_device *rdev) in radeon_register_accessor_init() argument
86 rdev->mc_rreg = &radeon_invalid_rreg; in radeon_register_accessor_init()
87 rdev->mc_wreg = &radeon_invalid_wreg; in radeon_register_accessor_init()
88 rdev->pll_rreg = &radeon_invalid_rreg; in radeon_register_accessor_init()
89 rdev->pll_wreg = &radeon_invalid_wreg; in radeon_register_accessor_init()
90 rdev->pciep_rreg = &radeon_invalid_rreg; in radeon_register_accessor_init()
91 rdev->pciep_wreg = &radeon_invalid_wreg; in radeon_register_accessor_init()
94 if (rdev->family < CHIP_RV515) { in radeon_register_accessor_init()
95 rdev->pcie_reg_mask = 0xff; in radeon_register_accessor_init()
97 rdev->pcie_reg_mask = 0x7ff; in radeon_register_accessor_init()
100 if (rdev->family <= CHIP_R580) { in radeon_register_accessor_init()
101 rdev->pll_rreg = &r100_pll_rreg; in radeon_register_accessor_init()
102 rdev->pll_wreg = &r100_pll_wreg; in radeon_register_accessor_init()
104 if (rdev->family >= CHIP_R420) { in radeon_register_accessor_init()
105 rdev->mc_rreg = &r420_mc_rreg; in radeon_register_accessor_init()
106 rdev->mc_wreg = &r420_mc_wreg; in radeon_register_accessor_init()
108 if (rdev->family >= CHIP_RV515) { in radeon_register_accessor_init()
109 rdev->mc_rreg = &rv515_mc_rreg; in radeon_register_accessor_init()
110 rdev->mc_wreg = &rv515_mc_wreg; in radeon_register_accessor_init()
112 if (rdev->family == CHIP_RS400 || rdev->family == CHIP_RS480) { in radeon_register_accessor_init()
113 rdev->mc_rreg = &rs400_mc_rreg; in radeon_register_accessor_init()
114 rdev->mc_wreg = &rs400_mc_wreg; in radeon_register_accessor_init()
116 if (rdev->family == CHIP_RS690 || rdev->family == CHIP_RS740) { in radeon_register_accessor_init()
117 rdev->mc_rreg = &rs690_mc_rreg; in radeon_register_accessor_init()
118 rdev->mc_wreg = &rs690_mc_wreg; in radeon_register_accessor_init()
120 if (rdev->family == CHIP_RS600) { in radeon_register_accessor_init()
121 rdev->mc_rreg = &rs600_mc_rreg; in radeon_register_accessor_init()
122 rdev->mc_wreg = &rs600_mc_wreg; in radeon_register_accessor_init()
124 if (rdev->family == CHIP_RS780 || rdev->family == CHIP_RS880) { in radeon_register_accessor_init()
125 rdev->mc_rreg = &rs780_mc_rreg; in radeon_register_accessor_init()
126 rdev->mc_wreg = &rs780_mc_wreg; in radeon_register_accessor_init()
129 if (rdev->family >= CHIP_BONAIRE) { in radeon_register_accessor_init()
130 rdev->pciep_rreg = &cik_pciep_rreg; in radeon_register_accessor_init()
131 rdev->pciep_wreg = &cik_pciep_wreg; in radeon_register_accessor_init()
132 } else if (rdev->family >= CHIP_R600) { in radeon_register_accessor_init()
133 rdev->pciep_rreg = &r600_pciep_rreg; in radeon_register_accessor_init()
134 rdev->pciep_wreg = &r600_pciep_wreg; in radeon_register_accessor_init()
138 static int radeon_invalid_get_allowed_info_register(struct radeon_device *rdev, in radeon_invalid_get_allowed_info_register() argument
153 void radeon_agp_disable(struct radeon_device *rdev) in radeon_agp_disable() argument
155 rdev->flags &= ~RADEON_IS_AGP; in radeon_agp_disable()
156 if (rdev->family >= CHIP_R600) { in radeon_agp_disable()
158 rdev->flags |= RADEON_IS_PCIE; in radeon_agp_disable()
159 } else if (rdev->family >= CHIP_RV515 || in radeon_agp_disable()
160 rdev->family == CHIP_RV380 || in radeon_agp_disable()
161 rdev->family == CHIP_RV410 || in radeon_agp_disable()
162 rdev->family == CHIP_R423) { in radeon_agp_disable()
164 rdev->flags |= RADEON_IS_PCIE; in radeon_agp_disable()
165 rdev->asic->gart.tlb_flush = &rv370_pcie_gart_tlb_flush; in radeon_agp_disable()
166 rdev->asic->gart.get_page_entry = &rv370_pcie_gart_get_page_entry; in radeon_agp_disable()
167 rdev->asic->gart.set_page = &rv370_pcie_gart_set_page; in radeon_agp_disable()
170 rdev->flags |= RADEON_IS_PCI; in radeon_agp_disable()
171 rdev->asic->gart.tlb_flush = &r100_pci_gart_tlb_flush; in radeon_agp_disable()
172 rdev->asic->gart.get_page_entry = &r100_pci_gart_get_page_entry; in radeon_agp_disable()
173 rdev->asic->gart.set_page = &r100_pci_gart_set_page; in radeon_agp_disable()
175 rdev->mc.gtt_size = radeon_gart_size * 1024 * 1024; in radeon_agp_disable()
2316 int radeon_asic_init(struct radeon_device *rdev) in radeon_asic_init() argument
2318 radeon_register_accessor_init(rdev); in radeon_asic_init()
2321 if (rdev->flags & RADEON_SINGLE_CRTC) in radeon_asic_init()
2322 rdev->num_crtc = 1; in radeon_asic_init()
2324 rdev->num_crtc = 2; in radeon_asic_init()
2326 rdev->has_uvd = false; in radeon_asic_init()
2328 switch (rdev->family) { in radeon_asic_init()
2334 rdev->asic = &r100_asic; in radeon_asic_init()
2340 rdev->asic = &r200_asic; in radeon_asic_init()
2346 if (rdev->flags & RADEON_IS_PCIE) in radeon_asic_init()
2347 rdev->asic = &r300_asic_pcie; in radeon_asic_init()
2349 rdev->asic = &r300_asic; in radeon_asic_init()
2354 rdev->asic = &r420_asic; in radeon_asic_init()
2356 if (rdev->bios == NULL) { in radeon_asic_init()
2357 rdev->asic->pm.get_engine_clock = &radeon_legacy_get_engine_clock; in radeon_asic_init()
2358 rdev->asic->pm.set_engine_clock = &radeon_legacy_set_engine_clock; in radeon_asic_init()
2359 rdev->asic->pm.get_memory_clock = &radeon_legacy_get_memory_clock; in radeon_asic_init()
2360 rdev->asic->pm.set_memory_clock = NULL; in radeon_asic_init()
2361 rdev->asic->display.set_backlight_level = &radeon_legacy_set_backlight_level; in radeon_asic_init()
2366 rdev->asic = &rs400_asic; in radeon_asic_init()
2369 rdev->asic = &rs600_asic; in radeon_asic_init()
2373 rdev->asic = &rs690_asic; in radeon_asic_init()
2376 rdev->asic = &rv515_asic; in radeon_asic_init()
2383 rdev->asic = &r520_asic; in radeon_asic_init()
2386 rdev->asic = &r600_asic; in radeon_asic_init()
2393 rdev->asic = &rv6xx_asic; in radeon_asic_init()
2394 rdev->has_uvd = true; in radeon_asic_init()
2398 rdev->asic = &rs780_asic; in radeon_asic_init()
2400 if ((rdev->pdev->device == 0x9616)|| in radeon_asic_init()
2401 (rdev->pdev->device == 0x9611)|| in radeon_asic_init()
2402 (rdev->pdev->device == 0x9613)|| in radeon_asic_init()
2403 (rdev->pdev->device == 0x9711)|| in radeon_asic_init()
2404 (rdev->pdev->device == 0x9713)) in radeon_asic_init()
2405 rdev->has_uvd = false; in radeon_asic_init()
2407 rdev->has_uvd = true; in radeon_asic_init()
2413 rdev->asic = &rv770_asic; in radeon_asic_init()
2414 rdev->has_uvd = true; in radeon_asic_init()
2422 if (rdev->family == CHIP_CEDAR) in radeon_asic_init()
2423 rdev->num_crtc = 4; in radeon_asic_init()
2425 rdev->num_crtc = 6; in radeon_asic_init()
2426 rdev->asic = &evergreen_asic; in radeon_asic_init()
2427 rdev->has_uvd = true; in radeon_asic_init()
2432 rdev->asic = &sumo_asic; in radeon_asic_init()
2433 rdev->has_uvd = true; in radeon_asic_init()
2439 if (rdev->family == CHIP_CAICOS) in radeon_asic_init()
2440 rdev->num_crtc = 4; in radeon_asic_init()
2442 rdev->num_crtc = 6; in radeon_asic_init()
2443 rdev->asic = &btc_asic; in radeon_asic_init()
2444 rdev->has_uvd = true; in radeon_asic_init()
2447 rdev->asic = &cayman_asic; in radeon_asic_init()
2449 rdev->num_crtc = 6; in radeon_asic_init()
2450 rdev->has_uvd = true; in radeon_asic_init()
2453 rdev->asic = &trinity_asic; in radeon_asic_init()
2455 rdev->num_crtc = 4; in radeon_asic_init()
2456 rdev->has_uvd = true; in radeon_asic_init()
2457 rdev->cg_flags = in radeon_asic_init()
2465 rdev->asic = &si_asic; in radeon_asic_init()
2467 if (rdev->family == CHIP_HAINAN) in radeon_asic_init()
2468 rdev->num_crtc = 0; in radeon_asic_init()
2469 else if (rdev->family == CHIP_OLAND) in radeon_asic_init()
2470 rdev->num_crtc = 2; in radeon_asic_init()
2472 rdev->num_crtc = 6; in radeon_asic_init()
2473 if (rdev->family == CHIP_HAINAN) in radeon_asic_init()
2474 rdev->has_uvd = false; in radeon_asic_init()
2476 rdev->has_uvd = true; in radeon_asic_init()
2477 switch (rdev->family) { in radeon_asic_init()
2479 rdev->cg_flags = in radeon_asic_init()
2493 rdev->pg_flags = 0; in radeon_asic_init()
2496 rdev->cg_flags = in radeon_asic_init()
2512 rdev->pg_flags = 0; in radeon_asic_init()
2515 rdev->cg_flags = in radeon_asic_init()
2531 rdev->pg_flags = 0 | in radeon_asic_init()
2536 rdev->cg_flags = in radeon_asic_init()
2551 rdev->pg_flags = 0; in radeon_asic_init()
2554 rdev->cg_flags = in radeon_asic_init()
2568 rdev->pg_flags = 0; in radeon_asic_init()
2571 rdev->cg_flags = 0; in radeon_asic_init()
2572 rdev->pg_flags = 0; in radeon_asic_init()
2578 rdev->asic = &ci_asic; in radeon_asic_init()
2579 rdev->num_crtc = 6; in radeon_asic_init()
2580 rdev->has_uvd = true; in radeon_asic_init()
2581 if (rdev->family == CHIP_BONAIRE) { in radeon_asic_init()
2582 rdev->cg_flags = in radeon_asic_init()
2599 rdev->pg_flags = 0; in radeon_asic_init()
2601 rdev->cg_flags = in radeon_asic_init()
2617 rdev->pg_flags = 0; in radeon_asic_init()
2623 rdev->asic = &kv_asic; in radeon_asic_init()
2625 if (rdev->family == CHIP_KAVERI) { in radeon_asic_init()
2626 rdev->num_crtc = 4; in radeon_asic_init()
2627 rdev->cg_flags = in radeon_asic_init()
2642 rdev->pg_flags = 0; in radeon_asic_init()
2654 rdev->num_crtc = 2; in radeon_asic_init()
2655 rdev->cg_flags = in radeon_asic_init()
2670 rdev->pg_flags = 0; in radeon_asic_init()
2680 rdev->has_uvd = true; in radeon_asic_init()
2687 if (rdev->flags & RADEON_IS_IGP) { in radeon_asic_init()
2688 rdev->asic->pm.get_memory_clock = NULL; in radeon_asic_init()
2689 rdev->asic->pm.set_memory_clock = NULL; in radeon_asic_init()