Subversion Repositories Kolibri OS

Rev

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

Rev 1239 Rev 1246
Line 43... Line 43...
43
int radeon_agpmode   = -1;
43
int radeon_agpmode   = -1;
44
int radeon_gart_size = 512; /* default gart size */
44
int radeon_gart_size = 512; /* default gart size */
45
int radeon_benchmarking = 0;
45
int radeon_benchmarking = 0;
46
int radeon_connector_table = 0;
46
int radeon_connector_table = 0;
47
int radeon_tv = 0;
47
int radeon_tv = 0;
-
 
48
int radeon_modeset          = 1;
Line 48... Line 49...
48
 
49
 
49
void parse_cmdline(char *cmdline, mode_t *mode, char *log);
50
void parse_cmdline(char *cmdline, mode_t *mode, char *log);
-
 
51
int init_display(struct radeon_device *rdev, mode_t *mode);
-
 
52
int init_display_kms(struct radeon_device *rdev, mode_t *mode);
50
int init_display(struct radeon_device *rdev, mode_t *mode);
53
 
51
int get_modes(mode_t *mode, int *count);
54
int get_modes(mode_t *mode, int *count);
Line 52... Line 55...
52
int set_user_mode(mode_t *mode);
55
int set_user_mode(mode_t *mode);
Line 688... Line 691...
688
    }
691
    }
689
    /* Again modeset_init should fail only on fatal error
692
    /* Again modeset_init should fail only on fatal error
690
     * otherwise it should provide enough functionalities
693
     * otherwise it should provide enough functionalities
691
     * for shadowfb to run
694
     * for shadowfb to run
692
     */
695
     */
-
 
696
    if( radeon_modeset )
-
 
697
    {
693
    r = radeon_modeset_init(rdev);
698
    r = radeon_modeset_init(rdev);
694
    if (r) {
699
    if (r) {
695
        return r;
700
        return r;
696
    }
701
    }
-
 
702
    };
697
    return 0;
703
    return 0;
698
}
704
}
Line 699... Line 705...
699
 
705
 
Line 700... Line 706...
700
mode_t usermode;
706
mode_t usermode;
701
 
707
 
702
 
708
 
703
int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent)
709
int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent)
Line 704... Line 710...
704
{
710
{
Line 705... Line 711...
705
    struct drm_device *dev;
711
    static struct drm_device *dev;
706
    int ret;
712
    int ret;
707
 
713
 
Line 708... Line 714...
708
    ENTER();
714
    ENTER();
709
 
715
 
Line 734... Line 740...
734
 
740
 
735
 //   DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
741
 //   DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
736
 //        driver->name, driver->major, driver->minor, driver->patchlevel,
742
 //        driver->name, driver->major, driver->minor, driver->patchlevel,
Line -... Line 743...
-
 
743
 //        driver->date, pci_name(pdev), dev->primary->index);
-
 
744
 
-
 
745
    if( radeon_modeset )
737
 //        driver->date, pci_name(pdev), dev->primary->index);
746
        init_display_kms(dev->dev_private, &usermode);
Line 738... Line 747...
738
 
747
    else
Line 739... Line 748...
739
    init_display(dev->dev_private, &usermode);
748
    init_display(dev->dev_private, &usermode);
Line 834... Line 843...
834
 
843
 
835
        case SRV_ENUM_MODES:
844
        case SRV_ENUM_MODES:
836
            dbgprintf("SRV_ENUM_MODES inp %x inp_size %x out_size %x\n",
845
            dbgprintf("SRV_ENUM_MODES inp %x inp_size %x out_size %x\n",
Line -... Line 846...
-
 
846
                       inp, io->inp_size, io->out_size );
837
                       inp, io->inp_size, io->out_size );
847
 
838
 
848
            if( radeon_modeset &&
839
            if( (outp != NULL) && (io->out_size == 4) &&
849
                (outp != NULL) && (io->out_size == 4) &&
840
                (io->inp_size == *outp * sizeof(mode_t)) )
850
                (io->inp_size == *outp * sizeof(mode_t)) )
841
                {
851
                {
842
                retval = get_modes((mode_t*)inp, outp);
852
                retval = get_modes((mode_t*)inp, outp);
Line 843... Line 853...
843
            };
853
            };
-
 
854
            break;
-
 
855
 
-
 
856
        case SRV_SET_MODE:
-
 
857
            dbgprintf("SRV_SET_MODE inp %x inp_size %x\n",
844
            break;
858
                       inp, io->inp_size);
845
 
859
 
846
        case SRV_SET_MODE:
860
            if(  radeon_modeset   &&
847
            if( (inp != NULL) &&
861
                (inp != NULL) &&
848
                (io->inp_size == sizeof(mode_t)) )
862
                (io->inp_size == sizeof(mode_t)) )
849
            {
863
            {
850
                retval = set_user_mode((mode_t*)inp);
-
 
851
            };
864
                retval = set_user_mode((mode_t*)inp);
Line 852... Line 865...
852
            break;
865
            };
853
 
866
            break;
Line 854... Line -...
854
    };
-
 
855
 
-
 
856
    return retval;
867
    };
-
 
868
 
Line -... Line 869...
-
 
869
    return retval;
-
 
870
}
857
}
871
 
Line 858... Line -...
858
 
-
 
859
u32_t drvEntry(int action, char *cmdline)
872
static char  log[256];
860
{
873
static dev_t device;
Line 861... Line 874...
861
    static char log[256];
874
 
862
 
875
u32_t drvEntry(int action, char *cmdline)
Line 883... Line 896...
883
        {
896
        {
884
            printf("Can't open %s\nExit\n", log);
897
            printf("Can't open %s\nExit\n", log);
885
            return 0;
898
            return 0;
886
        };
899
        };
887
    }
900
    }
-
 
901
    dbgprintf("Radeon RC05 cmdline %s\n", cmdline);
Line 888... Line 902...
888
 
902
 
Line 889... Line 903...
889
    enum_pci_devices();
903
    enum_pci_devices();
Line 899... Line 913...
899
    dbgprintf("device %x:%x\n", device.pci_dev.vendor,
913
    dbgprintf("device %x:%x\n", device.pci_dev.vendor,
900
                                device.pci_dev.device);
914
                                device.pci_dev.device);
Line 901... Line 915...
901
 
915
 
Line 902... Line 916...
902
    err = drm_get_dev(&device.pci_dev, ent);
916
    err = drm_get_dev(&device.pci_dev, ent);
-
 
917
 
-
 
918
    err = RegService("DISPLAY", display_handler);
-
 
919
 
Line -... Line 920...
-
 
920
    if( err != 0)
903
 
921
        dbgprintf("Set DISPLAY handler\n");