projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
drm/radeon/kms: Rework radeon object handling
[deliverable/linux.git]
/
drivers
/
gpu
/
drm
/
radeon
/
r420.c
diff --git
a/drivers/gpu/drm/radeon/r420.c
b/drivers/gpu/drm/radeon/r420.c
index 5c7fe52de30e2688132f6cb5e188f9b6df101cc8..d72f0439b2fa1e6afa916976b21b1e93fef671e2 100644
(file)
--- a/
drivers/gpu/drm/radeon/r420.c
+++ b/
drivers/gpu/drm/radeon/r420.c
@@
-186,7
+186,6
@@
static int r420_startup(struct radeon_device *rdev)
}
r420_pipes_init(rdev);
/* Enable IRQ */
}
r420_pipes_init(rdev);
/* Enable IRQ */
- rdev->irq.sw_int = true;
r100_irq_set(rdev);
/* 1M ring buffer */
r = r100_cp_init(rdev, 1024 * 1024);
r100_irq_set(rdev);
/* 1M ring buffer */
r = r100_cp_init(rdev, 1024 * 1024);
@@
-258,7
+257,7
@@
void r420_fini(struct radeon_device *rdev)
radeon_agp_fini(rdev);
radeon_irq_kms_fini(rdev);
radeon_fence_driver_fini(rdev);
radeon_agp_fini(rdev);
radeon_irq_kms_fini(rdev);
radeon_fence_driver_fini(rdev);
- radeon_
object
_fini(rdev);
+ radeon_
bo
_fini(rdev);
if (rdev->is_atom_bios) {
radeon_atombios_fini(rdev);
} else {
if (rdev->is_atom_bios) {
radeon_atombios_fini(rdev);
} else {
@@
-301,16
+300,13
@@
int r420_init(struct radeon_device *rdev)
RREG32(R_0007C0_CP_STAT));
}
/* check if cards are posted or not */
RREG32(R_0007C0_CP_STAT));
}
/* check if cards are posted or not */
- if (!radeon_card_posted(rdev) && rdev->bios) {
- DRM_INFO("GPU not posted. posting now...\n");
- if (rdev->is_atom_bios) {
- atom_asic_init(rdev->mode_info.atom_context);
- } else {
- radeon_combios_asic_init(rdev->ddev);
- }
- }
+ if (radeon_boot_test_post_card(rdev) == false)
+ return -EINVAL;
+
/* Initialize clocks */
radeon_get_clock_info(rdev->ddev);
/* Initialize clocks */
radeon_get_clock_info(rdev->ddev);
+ /* Initialize power management */
+ radeon_pm_init(rdev);
/* Get vram informations */
r300_vram_info(rdev);
/* Initialize memory controller (also test AGP) */
/* Get vram informations */
r300_vram_info(rdev);
/* Initialize memory controller (also test AGP) */
@@
-329,10
+325,13
@@
int r420_init(struct radeon_device *rdev)
return r;
}
/* Memory manager */
return r;
}
/* Memory manager */
- r = radeon_
object
_init(rdev);
+ r = radeon_
bo
_init(rdev);
if (r) {
return r;
}
if (r) {
return r;
}
+ if (rdev->family == CHIP_R420)
+ r100_enable_bm(rdev);
+
if (rdev->flags & RADEON_IS_PCIE) {
r = rv370_pcie_gart_init(rdev);
if (r)
if (rdev->flags & RADEON_IS_PCIE) {
r = rv370_pcie_gart_init(rdev);
if (r)
This page took
0.024975 seconds
and
5
git commands to generate.