freedreno-zz / xf86-video-freedreno

Other
10 stars 3 forks source link

xf86-video-freedreno cannot work when no kgsl-drm is available on a2xx #1

Closed Icenowy closed 8 years ago

Icenowy commented 8 years ago

In this situation, only msmfb is present.

Xorg.log:

[  2151.698] 
X.Org X Server 1.17.2
Release Date: 2015-06-16
[  2151.699] X Protocol Version 11, Revision 0
[  2151.699] Build Operating System: Linux 3.19.0-16-generic armv7l 
[  2151.699] Current Operating System: Linux localhost 3.0.31-1034927 #5 SMP PREEMPT Mon Jan 25 21:05:30 CST 2016 armv7l
[  2151.699] Kernel command line: androidboot.hardware=qcom kgsl.mmutype=gpummu vmalloc=400M usb_id_pin_rework=true console=tty0 loglevel=1 sec_log=0x80000@0x40184008 sec_dbg=0x100000@0x4020400c sec_debug.reset_reason=0x1a2b3c00 console=null sec_debug.enable=0 sec_debug.enable_user=0 msm_watchdog.enable=1 msm_watchdog.bark_time=30 msm_watchdog.bite_time=31 vmalloc=512m hw_rev=10 lpj=67700 androidboot.emmc=true androidboot.serialno=75226a4c androidboot.baseband=csfb
[  2151.700] Build Date: 29 December 2015  05:02:29AM
[  2151.700]  
[  2151.700] Current version of pixman: 0.32.6
[  2151.700]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[  2151.701] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  2151.702] (==) Log file: "/var/log/Xorg.0.log", Time: Tue Jan 26 07:28:02 2016
[  2151.703] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  2151.704] (==) No Layout section.  Using the first Screen section.
[  2151.704] (==) No screen section available. Using defaults.
[  2151.704] (**) |-->Screen "Default Screen Section" (0)
[  2151.704] (**) |   |-->Monitor "<default monitor>"
[  2151.705] (==) No device specified for screen "Default Screen Section".
    Using the first device section listed.
[  2151.705] (**) |   |-->Device "Video driver for Qualcomm processors"
[  2151.705] (==) No monitor specified for screen "Default Screen Section".
    Using a default monitor configuration.
[  2151.705] (==) Automatically adding devices
[  2151.705] (==) Automatically enabling devices
[  2151.705] (==) Automatically adding GPU devices
[  2151.705] (WW) The directory "/usr/share/fonts/misc/" does not exist.
[  2151.705]    Entry deleted from font path.
[  2151.705] (WW) The directory "/usr/share/fonts/TTF/" does not exist.
[  2151.705]    Entry deleted from font path.
[  2151.705] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[  2151.705]    Entry deleted from font path.
[  2151.705] (WW) The directory "/usr/share/fonts/Type1/" does not exist.
[  2151.705]    Entry deleted from font path.
[  2151.705] (WW) The directory "/usr/share/fonts/100dpi/" does not exist.
[  2151.706]    Entry deleted from font path.
[  2151.706] (WW) The directory "/usr/share/fonts/75dpi/" does not exist.
[  2151.706]    Entry deleted from font path.
[  2151.706] (==) FontPath set to:

[  2151.706] (==) ModulePath set to "/usr/lib/xorg/modules"
[  2151.706] (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
[  2151.706] (II) Loader magic: 0x40236eb0
[  2151.706] (II) Module ABI versions:
[  2151.706]    X.Org ANSI C Emulation: 0.4
[  2151.706]    X.Org Video Driver: 19.0
[  2151.706]    X.Org XInput driver : 21.1
[  2151.706]    X.Org Server Extension : 9.0
[  2151.707] (II) no primary bus or device found
[  2151.707] (II) LoadModule: "glx"
[  2151.708] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  2151.730] (II) Module glx: vendor="X.Org Foundation"
[  2151.730]    compiled for 1.17.2, module version = 1.0.0
[  2151.731]    ABI class: X.Org Server Extension, version 9.0
[  2151.731] (==) AIGLX enabled
[  2151.731] (II) LoadModule: "freedreno"
[  2151.731] (II) Loading /usr/lib/xorg/modules/drivers/freedreno_drv.so
[  2151.732] (II) Module freedreno: vendor="X.Org Foundation"
[  2151.732]    compiled for 1.17.2, module version = 1.4.0
[  2151.732]    ABI class: X.Org Video Driver, version 19.0
[  2151.732] (II) freedreno: Video driver for Qualcomm processors
[  2151.733] (--) using VT number 1

[  2151.757] (WW) Falling back to old probe method for freedreno
[  2151.760] (II) No msm DRM/KMS, fallback to fbdev/kgsl
[  2151.760] (II) Section 0 - looking for /dev/fb0
[  2151.762] (WW) Could not open drm: No such file or directory
[  2151.762] (EE) No devices detected.
[  2151.762] (EE) 
Fatal server error:
[  2151.762] (EE) no screens found(EE) 
[  2151.762] (EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
[  2151.762] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  2151.762] (EE) 
[  2151.807] (EE) Server terminated with error (1). Closing log file.
robclark commented 8 years ago

I think:

[  2151.760] (II) Section 0 - looking for /dev/fb0
[  2151.762] (WW) Could not open drm: No such file or directory

is the issue.. if you are using whatever android does for udev, the fb's end up in a funny place (/dev/graphics/fbN iirc). If you don't need android running, you could probably build the kernel w/ devtmpfs and use that instead. Or otherwise see freedreno man page about xorg.conf entries:

       Option "fb" "string"
              Path to fbdev device file.  Required to use fbdev/kgsl, unused for drm/msm.

so you'd probably want something like Option "fb" "/dev/graphics/fb0"

Icenowy commented 8 years ago

I can promise there's a fb at /dev/fb0... I'm using systemd

---- Rob Clark编写 ----

I think:

[  2151.760] (II) Section 0 - looking for /dev/fb0
[  2151.762] (WW) Could not open drm: No such file or directory

is the issue.. if you are using whatever android does for udev, the fb's end up in a funny place (/dev/graphics/fbN iirc). If you don't need android running, you could probably build the kernel w/ devtmpfs and use that instead. Or otherwise see freedreno man page about xorg.conf entries:

       Option "fb" "string"
              Path to fbdev device file.  Required to use fbdev/kgsl, unused for drm/msm.

so you'd probably want something like Option "fb" "/dev/graphics/fb0"


Reply to this email directly or view it on GitHub: https://github.com/freedreno/xf86-video-freedreno/issues/1#issuecomment-175080112

robclark commented 8 years ago

Then perhaps a file permission issue? I know these days fedora runs xserver as non-privileged user. In the normal case something opens the drm device file and passes it to xserver process, but that mechanism won't know about the non-standard /dev/fb0 that is also needed. A bit brute force, but chmod 666 /dev/fb0 would do the trick..

Icenowy commented 8 years ago

I'm root.

---- Rob Clark编写 ----

Then perhaps a file permission issue? I know these days fedora runs xserver as non-privileged user. In the normal case something opens the drm device file and passes it to xserver process, but that mechanism won't know about the non-standard /dev/fb0 that is also needed. A bit brute force, but chmod 666 /dev/fb0 would do the trick..


Reply to this email directly or view it on GitHub: https://github.com/freedreno/xf86-video-freedreno/issues/1#issuecomment-175092575

robclark commented 8 years ago

if your starting X manually as root, then maybe strace it. From the error message it seems to somehow have trouble opening some device file. Maybe it was actually the drm device file it was having problems with?

Icenowy commented 8 years ago

I've said that I have no kgsl-drm.

---- Rob Clark编写 ----

if your starting X manually as root, then maybe strace it. From the error message it seems to somehow have trouble opening some device file. Maybe it was actually the drm device file it was having problems with?


Reply to this email directly or view it on GitHub: https://github.com/freedreno/xf86-video-freedreno/issues/1#issuecomment-175099125