Subversion Repositories Kolibri OS

Rev

Rev 2004 | Rev 2160 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2004 Rev 2005
Line 1374... Line 1374...
1374
	r = cayman_pcie_gart_enable(rdev);
1374
	r = cayman_pcie_gart_enable(rdev);
1375
	if (r)
1375
	if (r)
1376
		return r;
1376
		return r;
1377
	cayman_gpu_init(rdev);
1377
	cayman_gpu_init(rdev);
Line -... Line 1378...
-
 
1378
 
-
 
1379
	r = evergreen_blit_init(rdev);
-
 
1380
	if (r) {
-
 
1381
//		evergreen_blit_fini(rdev);
-
 
1382
		rdev->asic->copy = NULL;
-
 
1383
		dev_warn(rdev->dev, "failed blitter (%d) falling back to memcpy\n", r);
Line 1378... Line 1384...
1378
 
1384
	}
-
 
1385
 
-
 
1386
	/* allocate wb buffer */
-
 
1387
	r = radeon_wb_init(rdev);
Line 1379... Line 1388...
1379
 
1388
	if (r)
-
 
1389
		return r;
-
 
1390
 
-
 
1391
	/* Enable IRQ */
-
 
1392
	r = r600_irq_init(rdev);
-
 
1393
	if (r) {
-
 
1394
		DRM_ERROR("radeon: IH init failed (%d).\n", r);
-
 
1395
//		radeon_irq_kms_fini(rdev);
Line 1380... Line 1396...
1380
	/* allocate wb buffer */
1396
		return r;
1381
 
1397
	}
1382
	/* Enable IRQ */
1398
	evergreen_irq_set(rdev);
1383
 
1399
 
Line 1440... Line 1456...
1440
	/* Initialize surface registers */
1456
	/* Initialize surface registers */
1441
	radeon_surface_init(rdev);
1457
	radeon_surface_init(rdev);
1442
	/* Initialize clocks */
1458
	/* Initialize clocks */
1443
	radeon_get_clock_info(rdev->ddev);
1459
	radeon_get_clock_info(rdev->ddev);
1444
	/* Fence driver */
1460
	/* Fence driver */
-
 
1461
	r = radeon_fence_driver_init(rdev);
-
 
1462
	if (r)
-
 
1463
		return r;
1445
	/* initialize memory controller */
1464
	/* initialize memory controller */
1446
	r = evergreen_mc_init(rdev);
1465
	r = evergreen_mc_init(rdev);
1447
	if (r)
1466
	if (r)
1448
		return r;
1467
		return r;
1449
	/* Memory manager */
1468
	/* Memory manager */
1450
	r = radeon_bo_init(rdev);
1469
	r = radeon_bo_init(rdev);
1451
	if (r)
1470
	if (r)
1452
		return r;
1471
		return r;
Line -... Line 1472...
-
 
1472
 
-
 
1473
	r = radeon_irq_kms_init(rdev);
-
 
1474
	if (r)
Line 1453... Line 1475...
1453
 
1475
		return r;
1454
 
1476
 
Line -... Line 1477...
-
 
1477
	rdev->cp.ring_obj = NULL;
-
 
1478
	r600_ring_init(rdev, 1024 * 1024);
Line 1455... Line 1479...
1455
	rdev->cp.ring_obj = NULL;
1479
 
1456
	r600_ring_init(rdev, 1024 * 1024);
1480
	rdev->ih.ring_obj = NULL;
1457
 
1481
	r600_ih_ring_init(rdev, 64 * 1024);
Line 1465... Line 1489...
1465
	if (r) {
1489
	if (r) {
1466
		dev_err(rdev->dev, "disabling GPU acceleration\n");
1490
		dev_err(rdev->dev, "disabling GPU acceleration\n");
1467
		rdev->accel_working = false;
1491
		rdev->accel_working = false;
1468
	}
1492
	}
1469
	if (rdev->accel_working) {
1493
	if (rdev->accel_working) {
-
 
1494
		r = radeon_ib_pool_init(rdev);
-
 
1495
		if (r) {
-
 
1496
			DRM_ERROR("radeon: failed initializing IB pool (%d).\n", r);
-
 
1497
			rdev->accel_working = false;
-
 
1498
		}
-
 
1499
		r = r600_ib_test(rdev);
-
 
1500
		if (r) {
-
 
1501
			DRM_ERROR("radeon: failed testing IB (%d).\n", r);
-
 
1502
			rdev->accel_working = false;
-
 
1503
		}
1470
	}
1504
	}
Line 1471... Line 1505...
1471
 
1505
 
1472
	/* Don't start up if the MC ucode is missing.
1506
	/* Don't start up if the MC ucode is missing.
1473
	 * The default clocks and voltages before the MC ucode
1507
	 * The default clocks and voltages before the MC ucode