[Verizon Samsung Galaxy S III] LLStarks:
Update 12/15: Got libdrm_freedreno and associated commits to build

Update 12/28: Ordered MHL cable

Over the past day or so I've been playing around with the Ubuntu (and occasionally Arch) chroot on my phone.

It's quite awesome for command line stuff, but desktop environments require a display driver.

To get around this, VNC has been the preferred solution but it's really slow and input is difficult.

So, I figured that I'd try my luck at getting the Freedreno driver working so I could run a proper X session.

I'm not ready to do a full write-up considering all of the snags I hit along the way, but it generally goes like this:

* Run an AOSP rom. I don't think TW kernels (including LeanKernel JB TW) have the proper config flag.

* Install Ubuntu on your phone

* Load the Ubuntu environment and clone xf86-video-freedreno repo

* Enable deb-src and get build-deps

* Build Freedreno and install (I'd recommend an older commit to avoid having to build libdrm_freedreno)

* Supply specific xorg.conf.d file

* Stop Android process (necessary?)

* startx

For the moment, I'm stuck at the startx process. The driver loads, but the framebuffer isn't getting updated. Hopefully robclark and I can get this working. I also have no idea if the touchscreen will even work once I get this running.

[ 32.649]
X.Org X Server 1.11.3
Release Date: 2011-12-16
[ 32.651] X Protocol Version 11, Revision 0
[ 32.651] Build Operating System: Linux 2.6.38-1209-omap4 armv7l Ubuntu
[ 32.652] Current Operating System: Linux localhost 3.0.48-cyanogenmod-ge67063c #1 SMP PREEMPT Thu Dec 13 23:21:38 PST 2012 armv7l
[ 32.652] Kernel command line: androidboot.hardware=qcom user_debug=31 zcache sec_log=0x80000@0x88d00008 sec_dbg=0x40000@0x88d90004 sec_debug.reset_reason=0x1a2b3c00 etb_buf=0x4000@0x8fffb9c0 androidboot.debug_level=0x4f4c sec_debug.enable=0 sec_debug.enable_user=0 cordon=3b1aa2e287850cd067126b7606b9fb63 loglevel=4 samsung.hardware=SCH-I535 androidboot.emmc_checksum=3 androidboot.bootloader=I535VRALE6 androidboot.nvdata_backup=1 androidboot.boot_recovery=0 level=0x574f4c44 androidboot.emmc=true androidboot.serialno=7407d2bb androidboot.baseband=msm
[ 32.655] Build Date: 05 April 2012 02:47:41AM
[ 32.655] xorg-server 2:1.11.4-0ubuntu10 (For technical support please see http://www.ubuntu.com/support)
[ 32.656] Current version of pixman: 0.24.4
[ 32.656] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 32.657] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 32.661] (==) Log file: "/var/log/Xorg.0.log", Time: Sat Dec 15 00:49:08 2012
[ 32.678] (==) Using config directory: "/etc/X11/xorg.conf.d"
[ 32.679] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 32.688] (==) No Layout section. Using the first Screen section.
[ 32.689] (**) |-->Screen "Screen" (0)
[ 32.689] (**) | |-->Monitor "<default monitor>"
[ 32.690] (**) | |-->Device "Video Device"
[ 32.690] (==) No monitor specified for screen "Screen".
Using a default monitor configuration.
[ 32.690] (==) Automatically adding devices
[ 32.690] (==) Automatically enabling devices
[ 32.704] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 32.704] Entry deleted from font path.
[ 32.704] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 32.704] Entry deleted from font path.
[ 32.704] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 32.704] Entry deleted from font path.
[ 32.706] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 32.706] Entry deleted from font path.
[ 32.706] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 32.706] Entry deleted from font path.
[ 32.706] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does not exist.
[ 32.706] Entry deleted from font path.
[ 32.706] (==) FontPath set to:
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/Type1,
built-ins
[ 32.706] (==) ModulePath set to "/usr/lib/arm-linux-gnueabi/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[ 32.706] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 32.706] (II) Loader magic: 0x401f9d00
[ 32.706] (II) Module ABI versions:
[ 32.706] X.Org ANSI C Emulation: 0.4
[ 32.706] X.Org Video Driver: 11.0
[ 32.706] X.Org XInput driver : 16.0
[ 32.706] X.Org Server Extension : 6.0
[ 32.707] (II) LoadModule: "extmod"
[ 32.718] (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
[ 32.732] (II) Module extmod: vendor="X.Org Foundation"
[ 32.732] compiled for 1.11.3, module version = 1.0.0
[ 32.732] Module class: X.Org Server Extension
[ 32.732] ABI class: X.Org Server Extension, version 6.0
[ 32.732] (II) Loading extension MIT-SCREEN-SAVER
[ 32.732] (II) Loading extension XFree86-VidModeExtension
[ 32.732] (II) Loading extension XFree86-DGA
[ 32.732] (II) Loading extension DPMS
[ 32.733] (II) Loading extension XVideo
[ 32.733] (II) Loading extension XVideo-MotionCompensation
[ 32.733] (II) Loading extension X-Resource
[ 32.733] (II) LoadModule: "dbe"
[ 32.734] (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
[ 32.736] (II) Module dbe: vendor="X.Org Foundation"
[ 32.736] compiled for 1.11.3, module version = 1.0.0
[ 32.736] Module class: X.Org Server Extension
[ 32.736] ABI class: X.Org Server Extension, version 6.0
[ 32.736] (II) Loading extension DOUBLE-BUFFER
[ 32.736] (II) LoadModule: "glx"
[ 32.737] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 32.742] (II) Module glx: vendor="X.Org Foundation"
[ 32.742] compiled for 1.11.3, module version = 1.0.0
[ 32.742] ABI class: X.Org Server Extension, version 6.0
[ 32.742] (==) AIGLX enabled
[ 32.742] (II) Loading extension GLX
[ 32.742] (II) LoadModule: "record"
[ 32.743] (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
[ 32.747] (II) Module record: vendor="X.Org Foundation"
[ 32.747] compiled for 1.11.3, module version = 1.13.0
[ 32.747] Module class: X.Org Server Extension
[ 32.747] ABI class: X.Org Server Extension, version 6.0
[ 32.747] (II) Loading extension RECORD
[ 32.747] (II) LoadModule: "dri"
[ 32.748] (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
[ 32.757] (II) Module dri: vendor="X.Org Foundation"
[ 32.757] compiled for 1.11.3, module version = 1.0.0
[ 32.758] ABI class: X.Org Server Extension, version 6.0
[ 32.758] (II) Loading extension XFree86-DRI
[ 32.758] (II) LoadModule: "dri2"
[ 32.758] (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
[ 32.759] (II) Module dri2: vendor="X.Org Foundation"
[ 32.759] compiled for 1.11.3, module version = 1.2.0
[ 32.759] ABI class: X.Org Server Extension, version 6.0
[ 32.759] (II) Loading extension DRI2
[ 32.759] (II) LoadModule: "freedreno"
[ 32.764] (II) Loading /usr/lib/xorg/modules/drivers/freedreno_drv.so
[ 32.775] (II) Module freedreno: vendor="X.Org Foundation"
[ 32.775] compiled for 1.11.3, module version = 0.0.1
[ 32.775] ABI class: X.Org Video Driver, version 11.0
[ 32.775] (II) freedreno: Video driver for Qualcomm processors
[ 32.776] (--) using VT number 2