Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Framebuffer on Razr XT910 #94

Closed
llvasconcellos opened this issue Jan 10, 2014 · 23 comments
Closed

Framebuffer on Razr XT910 #94

llvasconcellos opened this issue Jan 10, 2014 · 23 comments

Comments

@llvasconcellos
Copy link

Hi! First of all: Incredible work. It really speed up things a lot! I like it so much I wan't to offer to translate it to Brazilian Portuguese (other countries will understand as well). What do you think?

My image is Ubuntu 13.10.

Now to my problem: I would be perfect if I could run linux gui on framebuffer. I have a Rooted Motorola JellyBean Stock ROM with safestrap recovery. I use stock because of the HDMI out and webtop features.

When I start Linux Deploy in debug I recieve the following messages:

Frame Buffer ... Failed to start message bus: failed to bind socket /var/run/dbus/system_bus_socket no such file or directory

-su: xinit: command not found

Do you know what this means? I've tried other configurations like Video device fb0, fb1, fb2 (the only 3 files on /dev/graphics/) and display 0,1 and 2. Also set DPI to 256 as i found my phone screen is. No luck, I only see the black screen.

Thanks!

@llvasconcellos
Copy link
Author

Just tried with Debian Wheezy and got this message:

SSH :22 ... cat: can`t open '/data/local/linux/mnt/tmp/xsession.pid': No such file or directory
Frame Buffer ... chroot: can`t execute 'dbus-daemon': No such file or directory
done
<<< end: start
-su: xinit: command not found

@llvasconcellos
Copy link
Author

Solved the dbus problem running this on the chroot environment:

sudo apt-get install dbus

@llvasconcellos
Copy link
Author

Just find out that the problem was that I needed to install "X server" on the "Select components" option. Silly of me. Maybe could do a validation on the Framebuffer option. Now I have new errors but I will make a clean install and report back.

@llvasconcellos
Copy link
Author

Did a Debian Wheezy fresh install and now the error is:

xf86OpenConsole: Cannot open /dev/tty0 (No such file or directory)

Well, there isn't really a /dev/tty0 as you can see:

root@localhost:/home/leonardo# ls -l /dev/tty*
crw-rw-rw- 1 root          root            5, 0 Jan 11 07:16 /dev/tty
crw-rw---- 1 root                   9002 245, 0 Jan 11 07:16 /dev/ttyGS0
crw-rw---- 1 aid_radio     aid_radio     245, 1 Jan 11 07:16 /dev/ttyGS1
crw-rw---- 1 aid_radio     aid_radio     245, 2 Jan 11 07:16 /dev/ttyGS2
crw-rw---- 1 aid_radio     aid_radio     245, 3 Jan 11 07:16 /dev/ttyGS3
crw-rw---- 1 aid_radio     aid_radio     251, 0 Jan 11 07:16 /dev/ttyO0
crw-rw---- 1          9009          9009 251, 1 Jan 11 12:39 /dev/ttyO1
crw------- 1 root          root          251, 2 Jan 11 07:16 /dev/ttyO2
crw-rw---- 1 aid_bluetooth aid_bluetooth 251, 3 Jan 11 07:17 /dev/ttyO3
crw-rw---- 1 aid_radio     aid_system    253, 0 Jan 11 07:16 /dev/ttySPI0
crw-rw---- 1 aid_radio              9002 188, 0 Jan 11 07:16 /dev/ttyUSB0
crw-rw---- 1 aid_radio              9002 188, 1 Jan 11 07:16 /dev/ttyUSB1
crw-rw---- 1 aid_radio              9002 188, 2 Jan 11 07:16 /dev/ttyUSB2
crw-rw---- 1 aid_radio              9002 188, 3 Jan 11 07:16 /dev/ttyUSB3
crw-rw---- 1 aid_radio              9002 188, 4 Jan 11 07:16 /dev/ttyUSB4

Should I change tty0 by ttyo1? Seems like the last edited. Well, I will try but don't know where to change it.

Searching google for clues...

@llvasconcellos
Copy link
Author

Just tried with CyanogenMod 11 (Android 4.4.2 KitKat) with the same results. Have the same tty devices in /dev.

@sunaku
Copy link
Contributor

sunaku commented Jan 11, 2014

Are you able to access the root shell of your chroot'ed Linux at least?

android_terminal_or_adb_shell$   su -c /data/local/linux/bin/linuxdeploy shell

@llvasconcellos
Copy link
Author

It works with the command above and works with ssh as well

Debian GNU/Linux 7 (wheezy) [running on Android via Linux Deploy] 
root@localhost:/#

Going to try now with VNC to see what happens and report back right away.
Thanks for the reply!

@llvasconcellos
Copy link
Author

It worked well with VNC. Switched back to framebuffer to see if VNC had done something that would work with fb but no success. Same error.
Here is my Xorg log:

[   757.230] 
X.Org X Server 1.12.4
Release Date: 2012-08-27
[   757.232] X Protocol Version 11, Revision 0
[   757.233] Build Operating System: Linux 3.2.0-4-mv78xx0 armv5tel Debian
[   757.234] Current Operating System: Linux localhost 3.0.8-g3fd3f14 #1 SMP PREEMPT Fri Mar 1 10:20:19 CST 2013 armv7l
[   757.235] Kernel command line: omap_wdt.timer_margin=60 oops=panic console=/dev/null rw mem=1023M@0x80000000 vram=10300K omapfb.vram=0:8256K,1:4K,2:2040K init=/init ip=off mmcparts=mmcblk1:p7(pds),p8(utags),p14(boot),p15(recovery),p16(cdrom),p17(misc),p18(cid),p19(kpanic),p20(system),p21(cache),p22(preinstall),p23(webtop),p24(userdata),p25(emstorage) mot_sst=1 androidboot.bootloader=0x0A77
[   757.237] Build Date: 21 October 2013  06:03:54PM
[   757.238] xorg-server 2:1.12.4-6+deb7u1 (Moritz Muehlenhoff <jmm@debian.org>) 
[   757.238] Current version of pixman: 0.26.0
[   757.238]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[   757.238] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   757.239] (==) Log file: "/var/log/Xorg.2.log", Time: Sat Jan 11 18:14:36 2014
[   757.243] (==) Using config file: "/etc/X11/xorg.conf"
[   757.244] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   757.246] (==) ServerLayout "Layout0"
[   757.246] (**) |-->Screen "Screen0" (0)
[   757.246] (**) |   |-->Monitor "<default monitor>"
[   757.251] (**) |   |-->Device "Card0"
[   757.251] (==) No monitor specified for screen "Screen0".
    Using a default monitor configuration.
[   757.251] (**) |-->Input Device "touchscreen"
[   757.251] (==) Automatically adding devices
[   757.251] (==) Automatically enabling devices
[   757.285] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[   757.285]    Entry deleted from font path.
[   757.285] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[   757.285]    Entry deleted from font path.
[   757.285] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[   757.285]    Entry deleted from font path.
[   757.285] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[   757.285]    Entry deleted from font path.
[   757.286] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[   757.286]    Entry deleted from font path.
[   757.286] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[   757.286]    Entry deleted from font path.
[   757.286] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does not exist.
[   757.286]    Entry deleted from font path.
[   757.286] (==) FontPath set to:
    /usr/share/fonts/X11/misc,
    built-ins
[   757.286] (==) ModulePath set to "/usr/lib/xorg/modules"
[   757.286] (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
[   757.286] (II) Loader magic: 0x4024dcf0
[   757.286] (II) Module ABI versions:
[   757.287]    X.Org ANSI C Emulation: 0.4
[   757.287]    X.Org Video Driver: 12.1
[   757.287]    X.Org XInput driver : 16.0
[   757.287]    X.Org Server Extension : 6.0
[   757.287] (II) LoadModule: "extmod"
[   757.302] (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
[   757.329] (II) Module extmod: vendor="X.Org Foundation"
[   757.329]    compiled for 1.12.4, module version = 1.0.0
[   757.329]    Module class: X.Org Server Extension
[   757.329]    ABI class: X.Org Server Extension, version 6.0
[   757.329] (II) Loading extension SELinux
[   757.330] (II) Loading extension MIT-SCREEN-SAVER
[   757.330] (II) Loading extension XFree86-VidModeExtension
[   757.330] (II) Loading extension XFree86-DGA
[   757.330] (II) Loading extension DPMS
[   757.330] (II) Loading extension XVideo
[   757.330] (II) Loading extension XVideo-MotionCompensation
[   757.330] (II) Loading extension X-Resource
[   757.330] (II) LoadModule: "dbe"
[   757.332] (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
[   757.389] (II) Module dbe: vendor="X.Org Foundation"
[   757.389]    compiled for 1.12.4, module version = 1.0.0
[   757.389]    Module class: X.Org Server Extension
[   757.389]    ABI class: X.Org Server Extension, version 6.0
[   757.389] (II) Loading extension DOUBLE-BUFFER
[   757.389] (II) LoadModule: "glx"
[   757.391] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[   757.438] (II) Module glx: vendor="X.Org Foundation"
[   757.438]    compiled for 1.12.4, module version = 1.0.0
[   757.438]    ABI class: X.Org Server Extension, version 6.0
[   757.438] (==) AIGLX enabled
[   757.438] (II) Loading extension GLX
[   757.438] (II) LoadModule: "record"
[   757.439] (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
[   757.447] (II) Module record: vendor="X.Org Foundation"
[   757.447]    compiled for 1.12.4, module version = 1.13.0
[   757.448]    Module class: X.Org Server Extension
[   757.448]    ABI class: X.Org Server Extension, version 6.0
[   757.448] (II) Loading extension RECORD
[   757.448] (II) LoadModule: "dri"
[   757.448] (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
[   757.463] (II) Module dri: vendor="X.Org Foundation"
[   757.463]    compiled for 1.12.4, module version = 1.0.0
[   757.464]    ABI class: X.Org Server Extension, version 6.0
[   757.464] (II) Loading extension XFree86-DRI
[   757.464] (II) LoadModule: "dri2"
[   757.464] (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
[   757.468] (II) Module dri2: vendor="X.Org Foundation"
[   757.468]    compiled for 1.12.4, module version = 1.2.0
[   757.468]    ABI class: X.Org Server Extension, version 6.0
[   757.468] (II) Loading extension DRI2
[   757.468] (II) LoadModule: "fbdev"
[   757.469] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[   757.486] (II) Module fbdev: vendor="X.Org Foundation"
[   757.486]    compiled for 1.12.1, module version = 0.4.2
[   757.486]    ABI class: X.Org Video Driver, version 12.0
[   757.487] (II) LoadModule: "evdev"
[   757.488] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[   757.489] (II) Module evdev: vendor="X.Org Foundation"
[   757.489]    compiled for 1.12.1, module version = 2.7.0
[   757.489]    Module class: X.Org XInput Driver
[   757.489]    ABI class: X.Org XInput driver, version 16.0
[   757.490] (II) FBDEV: driver for framebuffer: fbdev
[   757.490] 
Fatal server error:
[   757.491] xf86OpenConsole: Cannot open /dev/tty0 (No such file or directory)
[   757.491] 
[   757.491] 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
[   757.492] Please also check the log file at "/var/log/Xorg.2.log" for additional information.
[   757.492] 
[   757.493] (WW) xf86CloseConsole: KDSETMODE failed: Bad file descriptor
[   757.493] (WW) xf86CloseConsole: VT_GETMODE failed: Bad file descriptor
[   757.494] Server terminated with error (1). Closing log file.

@sunaku
Copy link
Contributor

sunaku commented Jan 11, 2014

Aha! 💡 su has TTY issues under Android 4.3+ because they switched to a daemon model to make su work. Basically, su now forks from a separate daemonsu process that is totally unrelated to the current TTY (where you ran su). As a result, it does not inherit the current TTY as normal su would. Thus, I believe your X is complaining about a bad TTY because it's attached to a totally bogus TTY 👊 inherited from daemonsu. :neckbeard:

By the way, I ran into this exact problem 2 weeks ago when I first began experimenting with LinuxDeploy on my brand new Android device. As a workaround, I tried VNC (as you are doing now) for a while, but found it to be slow 🐌 and to have keyboard problems (see #87 and #89). Since then, I have found the XServer XSDL app (it's also on GitHub :octocat:) to be a superior alternative to VNC: it renders quickly 🚤 and has excellent keyboard support! 💻

@llvasconcellos
Copy link
Author

Thanks a lot sunaku! Do you use XServer XSDL with your LinuxDeploy instance? I will look at this right away!

@sunaku
Copy link
Contributor

sunaku commented Jan 11, 2014

Yes, I use and recommend XServer XSDL! ✨

@workdowg
Copy link

I also use Xserver XSDL. It is real fast especially now that I'm running Arch from a partition.

@alexcohn
Copy link

I seem to have the same /dev/tty0 problem on a Android 4.2.2 tablet. But I failed with the XSDL workaround. Please help, how do you configure Linux Deploy (Debian wheezy) to run XSDL? VNC works fine, but it's too slow!

@sunaku
Copy link
Contributor

sunaku commented Jan 29, 2014

You must first start the XServer XSDL app from Android and then go into your chroot'ed Linux and run env DISPLAY=:0 xterm or whatever your window manager / desktop environment / X11 application is.

@alexcohn
Copy link

@sunaku, thanks! It works now.

Even soft keyboard does work!! The trick is to make a right click with a HW mouse. In some text fields, a two-finger click also brings up the Android keyboard. Unfortunately, the backspace button does not do its job.

BTW, a HW keyboard works like charm, but HW mouse is a disappointment: the X cursor lags behind the HW one, which by the way decides to show up and disappear all by itself.

apt-get install florence

does work, but it is much less responsive than the Android one.

@sunaku
Copy link
Contributor

sunaku commented Jan 30, 2014

@alexcohn please file XSserver XSDL issues at its own issue tracker. 👔

@eMPee584
Copy link

eMPee584 commented Jan 3, 2017

uhmm.. sorry if I misunderstand this but.. has anyone gotten anything to display on this device's framebuffer, not via VNC? because I am trying to bring up wayland on a xt984 without any success so far..

@llvasconcellos
Copy link
Author

@eMPee584 Use XServer XSDL. It works fine!

@eMPee584
Copy link

@llvasconcellos: no, it does not work fine as a wayland client, only as an XServer.
So noone has actually been able to bring up a working framebuffer? saaaaaad

@llvasconcellos
Copy link
Author

@eMPee584 Sorry, I didn't realized you need it to work with Wayland. Just out of curiosity, why Wayland? Can't you use X11?

@eMPee584
Copy link

eMPee584 commented Jan 11, 2017

My inquiry was not about actually using linux deploy, I was just googling for getting this device's framebuffer up.
I want to port a wayland-based distro onto it, but I only get a black framebuffer, and I was hoping someone had actually got this to work. Seems not. saaaaaaaaad 😭

@llvasconcellos
Copy link
Author

@eMPee584 maybe you could talk to the people that ported the Xserver to android. Good Luck!

@eMPee584
Copy link

Thanks, but that is a normal android app, wayland would need lower level access without a full android framework.. 🤔

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants