AC100
1501
Comment: start AC100 page
|
6322
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
## page was renamed from ARM/AC100 | |
Line 3: | Line 4: |
This page collects information necessary to get a working Ubuntu port on the AC100 with only open source components and everything in the official archives (or temporarily in PPAs) | This page collects information necessary to get a working Ubuntu port on the AC100 using '''only open source''' components and everything in the official archives (or temporarily in PPAs) == Installer == === Prerequisites === You need the NVidia proprietary nvflash tool to write to the AC100 storage via a USB mini cable connecting the netbook and a host x86 computer. === Oneiric Installer === There are two AC100 related files in the daily image directory http://cdimage.ubuntu.com/daily-preinstalled/current/ The Android bootimg needs to be flashed using nvflash to partition number 6. This image when booted will set up the internal storage using a tarball provided on a USB stick or SD card. * Put netbook in recovery mode by booting with ctrl-esc held * Have a mini USB cable connected * Run sudo LD_LIBRARY_PATH=. ./nvflash --bl ./fastboot.bin --download 6 oneiric-preinstalled-desktop-armel+ac100.bootimg * Copy oneiric-preinstalled-desktop-armel+ac100.tar.gz to a USB stick as a regular file on the first parition. FAT or EXT2/3/4 should work. Do not unpack or dd it, simple copy. Make sure the md5sum is alright after copying to the media by comparing to what's in http://cdimage.ubuntu.com/daily-preinstalled/current/MD5SUMS * Reboot with the USB stick inserted and follow the simple instructions. Overall it does one reboot and in total can take about 20-30 minutes. == A Note About Fragmentation == The effort the bring hardware support has always been fragmented. We are thankful for ''phh'' who provided a solution based on (now) older L4T releases, ''ogra'' who made Ubuntu work without proprietary daemon, ''marvin24'' who has put effort in porting Chrome OS to the AC100, and the many others who were involved. The downside of this fragmentation is that documentation is fragmented too. The goal of this wiki is to provide good quality information for the latest and most promising effort. '''Wiki maintainers: don't reference the old "wetpaint" wiki. It is virtually unmaintained and will cause confusion. Information about the inner workings of the device and drivers must go here: http://ac100.grandou.net/ ''' |
Line 7: | Line 43: |
Tegra250 based device which has Android 2.1 as factory default. | {{attachment:toshiba-ac100_01.jpg|The AC100 netbook|align="right"}} The AC100 is an nVidia Tegra2 based device which has Android 2.1 as factory default. It has dual ARM Cortex-A9 cores at 1 GHz and nVidia GPU technology on its System On Chip. Some models come with 3G modems and the eMMC flash storage comes in various sizes. '''Strengths''' * Very slim and light * Long battery life * HDMI out '''Weaknesses''' * Slow eMMC storage (not an SSD) * No VGA out (must use a displaylink device for most projectors) Features known to work on Ubuntu: webcam, touchpad, 3G modem, WiFi, OpenGL ES (proprietary), indicator LEDs, card reader Incomplete support: video acceleration, HDMI out, audio For details and a list of models, see http://ac100.grandou.net/models |
Line 11: | Line 64: |
The current first stage bootloader is Android Fastboot which uses the kernel and initramfs images found on partition 6 of the device. The partition can be written via the mini-USB port from another computer using the closed source nvflash utility from nvidia, or updated from an already running system. The boot partition can be | The current first stage bootloader is Android Fastboot which uses the kernel and initramfs images found on partition 6 of the device. The partition can be written via the mini-USB port from another computer using the closed source nvflash utility from nvidia or opensource putusb, or updated from an already running system. The boot partition can be |
Line 13: | Line 66: |
The [[https://launchpad.net/~ac100/+archive/ppa|ac100 PPA]] has a kernel that reads the (nvidia-proprietary format) main partition table, so kernel upgrades are possible. The ''flash-kernel'' package in the PPA takes care of this. |
|
Line 20: | Line 75: |
As of early August 2011 a 2.3.38-chromeos kernel fork is used in Ubuntu. It does not support suspend/resume and sound yet. Work is done to upstream AC100 support patches in 3.1 and 3.2 kernels so we can use mainline eventually. |
As of early September 2011 a 2.3.38-chromeos kernel fork is used in Ubuntu and included in the Oneiric archives. It does not support suspend/resume and sound yet. |
Line 23: | Line 77: |
== Installer == | Work is done to upstream AC100 support patches in 3.x kernels so we can use mainline eventually. |
Line 25: | Line 79: |
There is an installer using the 2.6.37 kernel which is known not to work on the 10Z model and others that use a SanDisk internal eMMC for storage. A new installer based on the 2.6.38 kernel is in the works. |
The kernel tree the Ubuntu package is based on is at https://gitorious.org/~marvin24/ac100/marvin24s-kernel == Adobe Flash == Dropping this library into ~/.mozilla/plugins allows flash playback. It warns though that it is out of date. http://kotelett.no/ac100/phh/Android2.2/libflashplayer.so == Graphics == Latest Linux4Tegra SDK from Nvidia is 12alpha1 for kernel 2.6.38. === WebGL === Chromium browser v 13 from the Oneiric Ocelot archive works with some WebGL demos if passed `--use-gl=egl --ignore-gpu-blacklist` at the command line. http://www.khronos.org/webgl/wiki/Demo_Repository === GLES demos === The native visual ID for all EGL fbconfigs seems to be returned as 0. This is bug acknowledged by NVidia. `eglGetConfigAttrib(ed, &config, EGL_NATIVE_VISUAL_ID, &id); //id = 0` so most GLES apps will not work as there appears to be no visual with that ID. Example of change needed in es2tri.c from the mesa-utils-extra package `- visInfo = XGetVisualInfo(x_dpy, VisualIDMask, &visTemplate, &num_visuals);` `+ visInfo = XGetVisualInfo(x_dpy, VisualNoMask, &visTemplate, &num_visuals);` === Screen depth === In the Xorg config file, a depth should be set as 16 or else not even the limited support for GLES as seen above is available. `Section "Screen"` <<BR>> ` Identifier "`''<myscreen>''`"` <<BR>> ` Device "Tegra"` <<BR>> ` DefaultDepth 16` <<BR>> `EndSection` <<BR>> == Contact == IRC: #ac100 on freenode Mailing list archives: https://lists.launchpad.net/ac100/ Launchpad team: https://launchpad.net/~ac100 == Misc links == '''''Only put here links that are still relevant for present and future development and do not lead to unnecessary work and confusion. In particular, try to avoid the wetpaint wiki.''''' * Detailed info, useful for developers and power users: http://ac100.grandou.net/ * IRC-logs for #ac100 @ irc.freenode.net can be found here: http://ac100.tunk.org/logs/ ---- CategoryHardware |
Status of the Ubuntu port to the AC100/Dynabook Tegra based netbook
This page collects information necessary to get a working Ubuntu port on the AC100 using only open source components and everything in the official archives (or temporarily in PPAs)
Installer
Prerequisites
You need the NVidia proprietary nvflash tool to write to the AC100 storage via a USB mini cable connecting the netbook and a host x86 computer.
Oneiric Installer
There are two AC100 related files in the daily image directory http://cdimage.ubuntu.com/daily-preinstalled/current/
The Android bootimg needs to be flashed using nvflash to partition number 6. This image when booted will set up the internal storage using a tarball provided on a USB stick or SD card.
- Put netbook in recovery mode by booting with ctrl-esc held
- Have a mini USB cable connected
- Run sudo LD_LIBRARY_PATH=. ./nvflash --bl ./fastboot.bin --download 6 oneiric-preinstalled-desktop-armel+ac100.bootimg
- Copy oneiric-preinstalled-desktop-armel+ac100.tar.gz to a USB stick as a regular file on the first parition. FAT or EXT2/3/4 should work. Do not unpack or dd it, simple copy. Make sure the md5sum is alright after copying
to the media by comparing to what's in http://cdimage.ubuntu.com/daily-preinstalled/current/MD5SUMS
- Reboot with the USB stick inserted and follow the simple instructions. Overall it does one reboot and in total can take about 20-30 minutes.
A Note About Fragmentation
The effort the bring hardware support has always been fragmented. We are thankful for phh who provided a solution based on (now) older L4T releases, ogra who made Ubuntu work without proprietary daemon, marvin24 who has put effort in porting Chrome OS to the AC100, and the many others who were involved.
The downside of this fragmentation is that documentation is fragmented too. The goal of this wiki is to provide good quality information for the latest and most promising effort.
Wiki maintainers: don't reference the old "wetpaint" wiki. It is virtually unmaintained and will cause confusion. Information about the inner workings of the device and drivers must go here: http://ac100.grandou.net/
Hardware
The AC100 is an nVidia Tegra2 based device which has Android 2.1 as factory default. It has dual ARM Cortex-A9 cores at 1 GHz and nVidia GPU technology on its System On Chip. Some models come with 3G modems and the eMMC flash storage comes in various sizes.
Strengths
- Very slim and light
- Long battery life
- HDMI out
Weaknesses
- Slow eMMC storage (not an SSD)
- No VGA out (must use a displaylink device for most projectors)
Features known to work on Ubuntu: webcam, touchpad, 3G modem, WiFi, OpenGL ES (proprietary), indicator LEDs, card reader
Incomplete support: video acceleration, HDMI out, audio
For details and a list of models, see http://ac100.grandou.net/models
Boot loader
The current first stage bootloader is Android Fastboot which uses the kernel and initramfs images found on partition 6 of the device. The partition can be written via the mini-USB port from another computer using the closed source nvflash utility from nvidia or opensource putusb, or updated from an already running system. The boot partition can be handled using the abootimg tool.
The ac100 PPA has a kernel that reads the (nvidia-proprietary format) main partition table, so kernel upgrades are possible. The flash-kernel package in the PPA takes care of this.
U-Boot
The default boot loader is inflexible, and there is interest in adding U-Boot as a second stage boot loader. There are Tegra based U-Boot using devices but there's no working AC100 image yet that can handle the eMMC or the screen to be actually useful for a wider audience.
Kernel
As of early September 2011 a 2.3.38-chromeos kernel fork is used in Ubuntu and included in the Oneiric archives. It does not support suspend/resume and sound yet.
Work is done to upstream AC100 support patches in 3.x kernels so we can use mainline eventually.
The kernel tree the Ubuntu package is based on is at https://gitorious.org/~marvin24/ac100/marvin24s-kernel
Adobe Flash
Dropping this library into ~/.mozilla/plugins allows flash playback. It warns though that it is out of date. http://kotelett.no/ac100/phh/Android2.2/libflashplayer.so
Graphics
Latest Linux4Tegra SDK from Nvidia is 12alpha1 for kernel 2.6.38.
WebGL
Chromium browser v 13 from the Oneiric Ocelot archive works with some WebGL demos if passed --use-gl=egl --ignore-gpu-blacklist at the command line.
http://www.khronos.org/webgl/wiki/Demo_Repository
GLES demos
The native visual ID for all EGL fbconfigs seems to be returned as 0. This is bug acknowledged by NVidia.
eglGetConfigAttrib(ed, &config, EGL_NATIVE_VISUAL_ID, &id); //id = 0
so most GLES apps will not work as there appears to be no visual with that ID.
Example of change needed in es2tri.c from the mesa-utils-extra package
- visInfo = XGetVisualInfo(x_dpy, VisualIDMask, &visTemplate, &num_visuals); + visInfo = XGetVisualInfo(x_dpy, VisualNoMask, &visTemplate, &num_visuals);
Screen depth
In the Xorg config file, a depth should be set as 16 or else not even the limited support for GLES as seen above is available.
Section "Screen"
Identifier "<myscreen>"
Device "Tegra"
DefaultDepth 16
EndSection
Contact
IRC: #ac100 on freenode
Mailing list archives: https://lists.launchpad.net/ac100/
Launchpad team: https://launchpad.net/~ac100
Misc links
Only put here links that are still relevant for present and future development and do not lead to unnecessary work and confusion. In particular, try to avoid the wetpaint wiki.
Detailed info, useful for developers and power users: http://ac100.grandou.net/
IRC-logs for #ac100 @ irc.freenode.net can be found here: http://ac100.tunk.org/logs/
ARM/TEGRA/AC100 (last edited 2021-07-13 10:07:57 by ogra)