Subversion Repositories Kolibri OS

Rev

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

Rev 1125 Rev 1126
Line 26... Line 26...
26
 *          Jerome Glisse
26
 *          Jerome Glisse
27
 */
27
 */
28
//#include 
28
//#include 
Line 29... Line 29...
29
 
29
 
30
#include 
30
#include 
31
//#include 
31
#include 
32
#include "radeon_drm.h"
32
#include "radeon_drm.h"
33
#include "radeon_reg.h"
33
#include "radeon_reg.h"
34
#include "radeon.h"
34
#include "radeon.h"
35
#include "radeon_asic.h"
35
#include "radeon_asic.h"
Line 283... Line 283...
283
//        rdev->pciep_wreg = &r600_pciep_wreg;
283
//        rdev->pciep_wreg = &r600_pciep_wreg;
284
    }
284
    }
285
}
285
}
Line 286... Line -...
286
 
-
 
287
 
286
 
288
 
287
 
289
/*
288
/*
290
 * ASIC
289
 * ASIC
291
 */
290
 */
Line 472... Line 471...
472
int radeon_device_init(struct radeon_device *rdev,
471
int radeon_device_init(struct radeon_device *rdev,
473
               struct drm_device *ddev,
472
               struct drm_device *ddev,
474
               struct pci_dev *pdev,
473
               struct pci_dev *pdev,
475
               uint32_t flags)
474
               uint32_t flags)
476
{
475
{
477
    int r, ret = -1;
476
	int r, ret;
Line 478... Line 477...
478
 
477
 
Line 479... Line 478...
479
    dbgprintf("%s\n",__FUNCTION__);
478
    dbgprintf("%s\n",__FUNCTION__);
480
 
479
 
Line 493... Line 492...
493
 //   mutex_init(&rdev->cs_mutex);
492
 //   mutex_init(&rdev->cs_mutex);
494
 //   mutex_init(&rdev->ib_pool.mutex);
493
 //   mutex_init(&rdev->ib_pool.mutex);
495
 //   mutex_init(&rdev->cp.mutex);
494
 //   mutex_init(&rdev->cp.mutex);
496
 //   rwlock_init(&rdev->fence_drv.lock);
495
 //   rwlock_init(&rdev->fence_drv.lock);
Line 497... Line -...
497
 
-
 
498
 
496
 
499
    if (radeon_agpmode == -1) {
497
    if (radeon_agpmode == -1) {
500
        rdev->flags &= ~RADEON_IS_AGP;
498
        rdev->flags &= ~RADEON_IS_AGP;
501
        if (rdev->family > CHIP_RV515 ||
499
        if (rdev->family > CHIP_RV515 ||
502
            rdev->family == CHIP_RV380 ||
500
            rdev->family == CHIP_RV380 ||
Line 578... Line 576...
578
            atom_asic_init(rdev->mode_info.atom_context);
576
            atom_asic_init(rdev->mode_info.atom_context);
579
        } else {
577
        } else {
580
    //        radeon_combios_asic_init(rdev->ddev);
578
    //        radeon_combios_asic_init(rdev->ddev);
581
        }
579
        }
582
    }
580
    }
583
 
-
 
584
    /* Get vram informations */
581
    /* Get vram informations */
585
    radeon_vram_info(rdev);
582
    radeon_vram_info(rdev);
586
    /* Device is severly broken if aper size > vram size.
583
    /* Device is severly broken if aper size > vram size.
587
     * for RN50/M6/M7 - Novell bug 204882 ?
584
     * for RN50/M6/M7 - Novell bug 204882 ?
588
     */
585
     */
Line 606... Line 603...
606
 
603
 
607
    /* Initialize memory controller (also test AGP) */
604
    /* Initialize memory controller (also test AGP) */
608
    r = radeon_mc_init(rdev);
605
    r = radeon_mc_init(rdev);
609
    if (r) {
606
    if (r) {
610
        return r;
-
 
611
    };
-
 
612
 
607
        return r;
613
 
608
	}
614
    /* Fence driver */
609
    /* Fence driver */
615
//    r = radeon_fence_driver_init(rdev);
610
//    r = radeon_fence_driver_init(rdev);
616
//    if (r) {
611
//    if (r) {
617
//        return r;
612
//        return r;
Line 626... Line 621...
626
        return r;
621
        return r;
627
    }
622
    }
628
    /* Initialize GART (initialize after TTM so we can allocate
623
    /* Initialize GART (initialize after TTM so we can allocate
629
     * memory through TTM but finalize after TTM) */
624
     * memory through TTM but finalize after TTM) */
630
    r = radeon_gart_enable(rdev);
625
    r = radeon_gart_enable(rdev);
631
//    if (!r) {
626
    if (!r) {
632
//        r = radeon_gem_init(rdev);
627
        r = radeon_gem_init(rdev);
633
//    }
628
    }
Line 634... Line 629...
634
 
629
 
635
    /* 1M ring buffer */
630
    /* 1M ring buffer */
636
    if (!r) {
631
    if (!r) {
637
        r = radeon_cp_init(rdev, 1024 * 1024);
632
        r = radeon_cp_init(rdev, 1024 * 1024);
Line 670... Line 665...
670
//        rdev->fbdev_robj = rdev->fbdev_rfb->obj->driver_private;
665
//        rdev->fbdev_robj = rdev->fbdev_rfb->obj->driver_private;
671
//    }
666
//    }
672
    if (!ret) {
667
    if (!ret) {
673
        DRM_INFO("radeon: kernel modesetting successfully initialized.\n");
668
        DRM_INFO("radeon: kernel modesetting successfully initialized.\n");
674
    }
669
    }
675
//    if (radeon_benchmarking) {
670
	if (radeon_benchmarking) {
676
//        radeon_benchmark(rdev);
671
//        radeon_benchmark(rdev);
677
//    }
672
	}
-
 
673
	return ret;
Line 678... Line 674...
678
 
674
 
679
    return -1;
675
//    return -1;
Line 680... Line 676...
680
}
676
}
681
 
677
 
682
static struct pci_device_id pciidlist[] = {
678
static struct pci_device_id pciidlist[] = {
Line 871... Line 867...
871
 
867
 
872
 //   DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
868
 //   DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
873
 //        driver->name, driver->major, driver->minor, driver->patchlevel,
869
 //        driver->name, driver->major, driver->minor, driver->patchlevel,
Line -... Line 870...
-
 
870
 //        driver->date, pci_name(pdev), dev->primary->index);
-
 
871
 
-
 
872
      drm_helper_resume_force_mode(dev);
874
 //        driver->date, pci_name(pdev), dev->primary->index);
873
 
Line 875... Line 874...
875
 
874
 
876
    return 0;
875
    return 0;
877
 
876