Announcement

Collapse
No announcement yet.

R600/r700 kms + 3d dri1/dri2

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #71
    Originally posted by pingufunkybeat View Post
    I've just tried KMS on a R710 here.

    It works fine (1920x1080 fb console) until X starts, at which point it hangs with the mother of all hangs (even cold reset doesn't work).

    I'll look around for potential solutions (it looks like pvtcupcakes' problem). I'm using 2.6.32-rc1 from www.kernel.org and all libdrm, mesa and ddx from today.


    EDIT: Is there any kernel that is downloadable at the moment that works with KMS? I cannot clone the git repository of that size, it chokes at 10% and it's not resumable.
    .32-rc1 is on kernel.org. It might just be the git tree wrapped in a .tar.bz2; I haven't tried it.

    And do you use the right libdrm? I was using agd5f's libdrm which wasn't working with kms, so you need to use: http://cgit.freedesktop.org/mesa/drm

    Comment


    • #72
      This might very well be the case! My error looks very much like the one you had.

      When I read your post, I thought you were referring to the x11-drm module that gets loaded into the kernel, not the libdrm, so I didn't realise that it could be a problem. I'll give it another shot now.

      Thanks already, in any case.

      EDIT: W00t, that did it. DRI2+KMS is working like a charm here!

      Compositing slows down 3d stuff, but that was to be expected.

      Openarena gives the following in dmesg:

      Code:
      [ 2219.397082] [drm:r600_cs_packet_parse] *ERROR* Can not parse packet at 548 after CS end 548 !
      [ 2219.397085] [drm:r600_packet3_check] *ERROR* bad DRAW_INDEX
      [ 2219.397087] [drm:radeon_cs_ioctl] *ERROR* Invalid command stream !
      I'm also getting all sorts of corruption after using it for a while. So I guess it's not fully stable yet. Still, exciting developments.
      Last edited by pingufunkybeat; 28 September 2009, 06:49 PM.

      Comment


      • #73
        Originally posted by zika View Post
        Now that 2.6.32-rc1 is out is there a point for me to pursue further trying to get 3D acceleration to work from xog-edgers (including radeon) PPA or should I just wait for tomorrow and try the new kernel ...?
        I have uploaded a new drm-modules-source (snapshot of agd5f's drm tree) to the radeon PPA. But I guess a drm-next or 2.6.32-rc1 kernel would be better.

        Comment


        • #74
          Originally posted by tormod View Post
          I have uploaded a new drm-modules-source (snapshot of agd5f's drm tree) to the radeon PPA. But I guess a drm-next or 2.6.32-rc1 kernel would be better.
          Thank You, I guess I'll just wait for 2.6.32-rc1, I hope it will show up in a couple of days ...

          drm-next=?

          Comment


          • #75
            Originally posted by zika View Post
            Thank You, I guess I'll just wait for 2.6.32-rc1, I hope it will show up in a couple of days ...
            I would be curious to know if the new drm-modules-source fixes your issue, so if you have the chance to test...
            drm-next=?
            I mean building the kernel from http://git.kernel.org/?p=linux/kerne...log;h=drm-next or merge that branch into another kernel.

            Comment


            • #76
              Originally posted by tormod View Post
              I would be curious to know if the new drm-modules-source fixes your issue, so if you have the chance to test...

              I mean building the kernel from http://git.kernel.org/?p=linux/kerne...log;h=drm-next or merge that branch into another kernel.
              I get:
              Code:
              .
              ~$ sudo module-assistant -t auto-install drm-modules
              .
              Updated infos about 1 packages
              Getting source for kernel version: 2.6.31-999-generic
              Kernel headers available in /usr/src/linux-headers-2.6.31-999-generic
              Creating symlink...
              apt-get install build-essential 
              Reading package lists... Done
              Building dependency tree       
              Reading state information... Done
              build-essential is already the newest version.
              0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
              
              Done!
              unpack 
              Extracting the package tarball, /usr/src/drm-modules.tar.bz2, please wait...
              "/usr/share/modass/packages/drm-modules-source" build KVERS=2.6.31-999-generic KSRC=/usr/src/linux KDREV=2.6.31-999.200909121000 kdist_image
              /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic clean
              make[1]: Entering directory `/usr/src/modules/drm-modules/linux-core'
              rm -rf *.o *.ko dristat drmstat .depend .*.flags .*.d .*.cmd *.mod.c drm_pciids.h .tmp_versions
              make[1]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
              /usr/bin/make  -f debian/rules kdist_clean kdist_config binary-modules
              make[1]: Entering directory `/usr/src/modules/drm-modules'
              /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic clean
              make[2]: Entering directory `/usr/src/modules/drm-modules/linux-core'
              rm -rf *.o *.ko dristat drmstat .depend .*.flags .*.d .*.cmd *.mod.c drm_pciids.h .tmp_versions
              make[2]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
              for templ in ; do \
                  cp $templ `echo $templ | sed -e 's/_KVERS_/2.6.31-999-generic/g'` ; \
                done
              for templ in `ls debian/*.modules.in` ; do \
                  test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \
                  sed -e 's/##KVERS##/2.6.31-999-generic/g ;s/#KVERS#/2.6.31-999-generic/g ; s/_KVERS_/2.6.31-999-generic/g ; s/##KDREV##/2.6.31-999.200909121000/g ; s/#KDREV#/2.6.31-999.200909121000/g ; s/_KDREV_/2.6.31-999.200909121000/g  ' < $templ > ${templ%.modules.in}; \
                done
              dh_testroot
              dh_prep
              # Build the modules
              /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic \
              		DRM_MODULES="radeon" \
              		EXTRA_CFLAGS=-DGIT_REVISION=\\\"2.4.3+git20090928+r6xx-r7xx-3d.b3237965-0ubuntu0tormod\\\"
              make[2]: Entering directory `/usr/src/modules/drm-modules/linux-core'
              sh ../scripts/create_linux_pci_lists.sh < ../shared-core/drm_pciids.txt
              make -C /usr/src/linux  SUBDIRS=`/bin/pwd` DRMSRCDIR=`/bin/pwd` modules
              make[3]: Entering directory `/usr/src/linux-headers-2.6.31-999-generic'
              fatal: Not a git repository (or any of the parent directories): .git
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_auth.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_bufs.o
              /usr/src/modules/drm-modules/linux-core/drm_bufs.c: In function ?drm_rmmap_locked?:
              /usr/src/modules/drm-modules/linux-core/drm_bufs.c:402: warning: enumeration value ?_DRM_GEM? not handled in switch
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_context.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_dma.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_drawable.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_drv.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_fops.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_ioctl.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_irq.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_lock.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_memory.o
              /usr/src/modules/drm-modules/linux-core/drm_memory.c: In function ?agp_remap?:
              /usr/src/modules/drm-modules/linux-core/drm_memory.c:290: warning: assignment from incompatible pointer type
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_proc.o
              /usr/src/modules/drm-modules/linux-core/drm_proc.c: In function ?drm_gem_one_name_info?:
              /usr/src/modules/drm-modules/linux-core/drm_proc.c:602: warning: format ?%d? expects type ?int?, but argument 3 has type ?size_t?
              /usr/src/modules/drm-modules/linux-core/drm_proc.c:610: warning: format ?%9d? expects type ?int?, but argument 4 has type ?size_t?
              /usr/src/modules/drm-modules/linux-core/drm_proc.c: In function ?drm__vma_info?:
              /usr/src/modules/drm-modules/linux-core/drm_proc.c:691: warning: format ?%08lx? expects type ?long unsigned int?, but argument 5 has type ?phys_addr_t?
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_stub.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_vm.o
              /usr/src/modules/drm-modules/linux-core/drm_vm.c: In function ?drm_vm_shm_close?:
              /usr/src/modules/drm-modules/linux-core/drm_vm.c:261: warning: enumeration value ?_DRM_GEM? not handled in switch
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_sysfs.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_pci.o
                CC [M]  /usr/src/modules/drm-modules/linux-core/drm_agpsupport.o
              /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c: In function ?drm_agp_bind_pages?:
              /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:520: error: implicit declaration of function ?phys_to_gart?
              /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:520: warning: assignment makes pointer from integer without a cast
              /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c: In function ?drm_agp_populate?:
              /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:589: warning: assignment makes pointer from integer without a cast
              make[4]: *** [/usr/src/modules/drm-modules/linux-core/drm_agpsupport.o] Error 1
              make[3]: *** [_module_/usr/src/modules/drm-modules/linux-core] Error 2
              make[3]: Leaving directory `/usr/src/linux-headers-2.6.31-999-generic'
              make[2]: *** [modules] Error 2
              make[2]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
              make[1]: *** [binary-modules] Error 2
              make[1]: Leaving directory `/usr/src/modules/drm-modules'
              make: *** [kdist_build] Error 2
              BUILD FAILED!
              See /var/cache/modass/drm-modules-source.buildlog.2.6.31-999-generic.1254226388 for details.
              Build failed. Press Return to continue...

              Comment


              • #77
                also I get:
                Code:
                ~$ cat /var/cache/modass/drm-modules-source.buildlog.2.6.31-999-generic.1254226388
                /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic clean
                make[1]: Entering directory `/usr/src/modules/drm-modules/linux-core'
                rm -rf *.o *.ko dristat drmstat .depend .*.flags .*.d .*.cmd *.mod.c drm_pciids.h .tmp_versions
                make[1]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
                /usr/bin/make  -f debian/rules kdist_clean kdist_config binary-modules
                make[1]: Entering directory `/usr/src/modules/drm-modules'
                /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic clean
                make[2]: Entering directory `/usr/src/modules/drm-modules/linux-core'
                rm -rf *.o *.ko dristat drmstat .depend .*.flags .*.d .*.cmd *.mod.c drm_pciids.h .tmp_versions
                make[2]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
                for templ in ; do \
                    cp $templ `echo $templ | sed -e 's/_KVERS_/2.6.31-999-generic/g'` ; \
                  done
                for templ in `ls debian/*.modules.in` ; do \
                    test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \
                    sed -e 's/##KVERS##/2.6.31-999-generic/g ;s/#KVERS#/2.6.31-999-generic/g ; s/_KVERS_/2.6.31-999-generic/g ; s/##KDREV##/2.6.31-999.200909121000/g ; s/#KDREV#/2.6.31-999.200909121000/g ; s/_KDREV_/2.6.31-999.200909121000/g  ' < $templ > ${templ%.modules.in}; \
                  done
                dh_testroot
                dh_prep
                # Build the modules
                /usr/bin/make -C linux-core LINUXDIR=/usr/src/linux KVERREL=2.6.31-999-generic \
                		DRM_MODULES="radeon" \
                		EXTRA_CFLAGS=-DGIT_REVISION=\\\"2.4.3+git20090928+r6xx-r7xx-3d.b3237965-0ubuntu0tormod\\\"
                make[2]: Entering directory `/usr/src/modules/drm-modules/linux-core'
                sh ../scripts/create_linux_pci_lists.sh < ../shared-core/drm_pciids.txt
                make -C /usr/src/linux  SUBDIRS=`/bin/pwd` DRMSRCDIR=`/bin/pwd` modules
                make[3]: Entering directory `/usr/src/linux-headers-2.6.31-999-generic'
                fatal: Not a git repository (or any of the parent directories): .git
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_auth.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_bufs.o
                /usr/src/modules/drm-modules/linux-core/drm_bufs.c: In function ?drm_rmmap_locked?:
                /usr/src/modules/drm-modules/linux-core/drm_bufs.c:402: warning: enumeration value ?_DRM_GEM? not handled in switch
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_context.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_dma.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_drawable.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_drv.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_fops.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_ioctl.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_irq.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_lock.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_memory.o
                /usr/src/modules/drm-modules/linux-core/drm_memory.c: In function ?agp_remap?:
                /usr/src/modules/drm-modules/linux-core/drm_memory.c:290: warning: assignment from incompatible pointer type
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_proc.o
                /usr/src/modules/drm-modules/linux-core/drm_proc.c: In function ?drm_gem_one_name_info?:
                /usr/src/modules/drm-modules/linux-core/drm_proc.c:602: warning: format ?%d? expects type ?int?, but argument 3 has type ?size_t?
                /usr/src/modules/drm-modules/linux-core/drm_proc.c:610: warning: format ?%9d? expects type ?int?, but argument 4 has type ?size_t?
                /usr/src/modules/drm-modules/linux-core/drm_proc.c: In function ?drm__vma_info?:
                /usr/src/modules/drm-modules/linux-core/drm_proc.c:691: warning: format ?%08lx? expects type ?long unsigned int?, but argument 5 has type ?phys_addr_t?
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_stub.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_vm.o
                /usr/src/modules/drm-modules/linux-core/drm_vm.c: In function ?drm_vm_shm_close?:
                /usr/src/modules/drm-modules/linux-core/drm_vm.c:261: warning: enumeration value ?_DRM_GEM? not handled in switch
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_sysfs.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_pci.o
                  CC [M]  /usr/src/modules/drm-modules/linux-core/drm_agpsupport.o
                /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c: In function ?drm_agp_bind_pages?:
                /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:520: error: implicit declaration of function ?phys_to_gart?
                /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:520: warning: assignment makes pointer from integer without a cast
                /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c: In function ?drm_agp_populate?:
                /usr/src/modules/drm-modules/linux-core/drm_agpsupport.c:589: warning: assignment makes pointer from integer without a cast
                make[4]: *** [/usr/src/modules/drm-modules/linux-core/drm_agpsupport.o] Error 1
                make[3]: *** [_module_/usr/src/modules/drm-modules/linux-core] Error 2
                make[3]: Leaving directory `/usr/src/linux-headers-2.6.31-999-generic'
                make[2]: *** [modules] Error 2
                make[2]: Leaving directory `/usr/src/modules/drm-modules/linux-core'
                make[1]: *** [binary-modules] Error 2
                make[1]: Leaving directory `/usr/src/modules/drm-modules'
                make: *** [kdist_build] Error 2
                I hope it helps ...

                Comment


                • #78
                  Originally posted by tormod View Post
                  I would be curious to know if the new drm-modules-source fixes your issue, so if you have the chance to test...
                  I have the same issue with a HD2400 card and the latest packages from xorg-edgers and radeon crack PPA. Karmic also fully updated.

                  The modules have been built
                  Code:
                  $ ls -la /lib/modules/2.6.31-11-generic/kernel/drivers/gpu/drm/
                  total 1136
                  drwxr-xr-x 13 root root   4096 2009-09-29 14:58 .
                  drwxr-xr-x  3 root root   4096 2009-09-26 14:48 ..
                  -rw-r--r--  1 root root 304274 2009-09-29 14:58 drm.ko
                  -rw-r--r--  1 root root 299392 2009-09-25 11:24 drm.ko.linux
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 i810
                  drwxr-xr-x  2 root root   4096 2009-09-26 14:48 i830
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 i915
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 mga
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 r128
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 radeon
                  -rw-r--r--  1 root root 486474 2009-09-29 14:58 radeon.ko
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 savage
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 sis
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 tdfx
                  drwxr-xr-x  2 root root   4096 2009-09-26 14:48 ttm
                  drwxr-xr-x  2 root root   4096 2009-09-29 14:58 via
                  Of course I didn't forget to "sudo update-initramfs -u"
                  but still it doesn't work.

                  Code:
                  tony@WhiteStar:~$ dmesg | grep "drm"
                  [   42.100253] [drm] Initialized drm 1.1.0 20090928agd5f
                  [   42.221040] [drm] Initialized radeon 1.29.0 20080613 on minor 0
                  tony@WhiteStar:~$ dmesg | grep radeon
                  [   42.220845] radeon 0000:03:00.0: setting latency timer to 64
                  [   42.221040] [drm] Initialized radeon 1.29.0 20080613 on minor 0
                  Not only I don't have 3D, but 2D is also very slow compared to stock Karmic drivers. I'm not sure if I have done something wrong, but I have followed the instructions at https://launchpad.net/~xorg-edgers/+archive/radeon to the letter.

                  I'm also on 64 bit BTW.

                  Comment


                  • #79
                    Quick guess it's trying to build module from git://anongit.freedesktop.org/git/mesa/drm which are no longer supported use full Linus's tree or Dave's tree drm-next branch.

                    Comment


                    • #80
                      For 2.6.31-11-generic it all "go well" but
                      Code:
                      ~$ dmesg|grep radeon
                      [   24.379029] radeon 0000:01:00.0: setting latency timer to 64
                      [   24.379172] [drm] Initialized radeon 1.29.0 20080613 on minor 0
                      ... again ...

                      Do You have any information what is going on with 2.6.32-rc1 on mainline? There is a today's build but, again, there is just one file (headers ...)...
                      Last edited by zika; 29 September 2009, 08:35 AM.

                      Comment

                      Working...
                      X