|Version 18 (modified by divx118, 2 years ago)|
This is a wiki page and it is being improved constantly, please link to the page not a revision of it!
Please make sure you don't link to old versions of this page. If you came here via a link check if there is a revision number in the address bar. If so, go to the current version of this page
For now it is still experimental and not meant for end users. So if you don't know what you are doing skip this and wait for something more end user friendly. The multi root will let you choose between multiple rootfs images at the startup from your archos. For now it uses the same kernel for your rootfs namely a modified archos android kernel. The final goal is to be able to use for example kexec, so it would also be possible to boot different kernels. Sources for the kernel and initramfs are available on gitorious.
Installing Multi Root on Gen8
First you have to install SDE from Archos After you installed SDE proceed.
Download the initramfs.cpio.gz and zImage from http://www.openaos.org/wp-upload/gen8/2011-07-05/ NOTE: Builds linked here can change and may have bugs
Connect your archos to your PC with the usb cable.
Go into recovery by holding down the "volume down" button and switch on your archos. Keep the button pressed until you see the white recovery menu. Goto "Recovery system" --> "Developer Edition Menu" --> "Flash Kernel and initramfs"
Copy the downloaded files to the archos and unmount safely.
When the boot-menu is started it will look for menu.lst on the internal storage of your archos. In menu.lst you will be able to define your boot menu. If it doesn't exists, it will create a default one for you with the following content.
For now it will expect your rootfs image files to be on the internal memory.
NOTE: If you for some reason use windows, which is not recommended much better is to use a linux distro. Then don't use notepad to edit the menu.lst, but use notepad++. In notepad++ goto Edit --> EOL conversion --> Unix. If it is grayed out you are ok, else click on it to set end of line to unix. Line endings should be in unix, because parsing the menu.lst on boot will screw up.
Currently known problems:
- No TS support on A70S, A70H, A101 inside the boot-menu
- TS support in boot-menu removed also from other models due to problems
- Disabled removing archos init, because of startup issues with original archos firmware. So you will have to start the boot menu by going into recovery and choose developer edition.
- You can repartition internal storage and use ext4 for as filesystem. You then have to add "/dev/mmcblk1p2" on the second position in menu.lst. You can also use the sd-card "/dev/mmcblk2pX". X is the partition you want to use. If you only have one partition it will be "/dev/mmcblk2p1"
- Dumping the squashfs file from archos. Create a dir on your internal storage with the name "/openaos/dump". On startup from the bootmenu it will copy the secure squashfs from /mnt/system dir to the dump dir for further extraction.
- Update the squashfs file. Create a dir on your internal storage with the name "/openaos/update". In that folder you can put your new squashfs. Use ".secure" extension if it has the 256 bytes signature.
- If there is a rootfs file with the name "openaos-gingerbread.img" or "openaos-gingerbread.img.gz" in the root of the internal storage and there is no entry for Gingerbread in menu.lst it will create one.
- In the bootmenu where you can choose between the images there is also Advanced Menu at the bottom of the list. When you choose advanced menu it will bring up a menu with the following content.
|Debugging||This will get you to the debug menu||http://dev.openaos.org/wiki/SettingUpMultiRootGen8#Debugging|
|Disable/Enable Rooted Device||Disable or enable unionfs|
|Disable/Enable Compcache||Disable or enable Compcache|
|Recovery||Reboot to archos recovery menu|
|Reboot||Reboot the device|
|Back||Back to the main menu|
Just Download initramfs-debug.cpio.gz and rename it to initramfs.cpio.gz and flash it together with the zImage. Leave the USB cable connected to your archos, because that will be your serial connection.
Note: You can also use the normal initramfs.cpio.gz and choose Advanced menu --> Debugging to go to the serial menu. In the debug version it will boot straight to the serial menu.
If you now startup the bootmenu it will first ask you what kind of debugging connection.
- None (no debugging will be used)
- Serial (serial will be used)
- Ether (ethernet will be used)
- Both (serial and ethernet)
I you enable serial, you will see 3 connections available on your PC
dmesg | grep cdc_acm
You will get an output like this
[3365540.510632] cdc_acm 1-4:2.0: This device cannot do calls on its own. It is not a modem. [3365540.510749] cdc_acm 1-4:2.0: ttyACM0: USB ACM device [3365540.512000] cdc_acm 1-4:2.2: This device cannot do calls on its own. It is not a modem. [3365540.512277] cdc_acm 1-4:2.2: ttyACM1: USB ACM device [3365540.517070] cdc_acm 1-4:2.4: This device cannot do calls on its own. It is not a modem. [3365540.517222] cdc_acm 1-4:2.4: ttyACM2: USB ACM device
- /dev/ttyACM0 Not used in initramfs, but used for android console
- /dev/ttyACM1 Gives you a shell in initramfs
- /dev/ttyACM2 Output of kernel messages (/proc/kmsg)
Some programs to connect to serial:
- Speed: 115200 (This can be set higher or lower, it shouldn't matter much. I use 115200)
- Data bits: 8
- Stop bits: 1
- Parity: none
- Flow Control: none
How to use minicom:
Start your archos and choose serial in the first menu to enable it. It now boots to the main bootmenu.
Start your shell by entering the following on your pc:
$ minicom -D /dev/ttyACM1
Show kernel messages output by entering the following on your PC after the command choose on your archos the rootfs you want to start:
$ minicom -D /dev/ttyACM2
For unpacking and repacking the initramfs to make some quick changes look here http://dev.openaos.org/wiki/Gen8Resources#Unpackingandrepackinginitramfs.cpio.gz
Rootfs filesystems to install on your gen8
Note: At the moment these images are far from being functional to an end user
|Name:||Download:||Sources:||How to build your own:|
|Debian LXDE||http://www.openaos.org/wp-upload/gen8/debian/||Debian gen8|
Feel free to contribute more or make changes...