[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
howtos:hardware:arm:toshiba_ac100_dynabook_az [2014/12/01 15:39 (UTC)] louigi600howtos:hardware:arm:toshiba_ac100_dynabook_az [2016/03/30 12:51 (UTC)] (current) – [Repackaging The Boot Images For Aboot] louigi600
Line 32: Line 32:
   7       MBR     9472 512 (1 MB)          master boot record   7       MBR     9472 512 (1 MB)          master boot record
   8       APP     9984 153600 (300 MB)        applications (/system) mmcblk0p3   8       APP     9984 153600 (300 MB)        applications (/system) mmcblk0p3
-  9       CAC     163584 204800 (400 MB)        cache (/cache) mmcblk0p4 +  9       CAC     163584 204800 (400 MB)        cache (/cache) mmcblk0p4 
-  10      MSC     368384 1024 (2 MB)          misc (/misc) mmcblk0p5 +  10      MSC     368384 1024 (2 MB)          misc (/misc) mmcblk0p5 
-  11      EM1     369408 256 (512 kB) +  11      EM1     369408 256 (512 kB) 
-  12      UBA     369664 622320 (1215.5 MB)     user data (/data) mmcblk0p6 +  12      UBA     369664 622320 (1215.5 MB)     user data (/data) mmcblk0p6 
-  13      EM2     1001984 256 (512 kB) +  13      EM2     1001984 256 (512 kB) 
-  14      UDB     1002240 6837504 (13354.5 )      user data (/storage) mmcblk0p7 +  14      UDB     1002240 6837504 (13354.5 )      user data (/storage) mmcblk0p7 
-All partitions hace sectors of 2048 bytes and id 18.+All partitions have sectors of 2048 bytes and id 18.
  
-The tegrapart format is a coma separated list od items like this :+The tegrapart format is a coma separated list of items like this :
   <partition name>:<hex start sector>:<hex partition size in sectors>:<hex sector size in bytes>,...   <partition name>:<hex start sector>:<hex partition size in sectors>:<hex sector size in bytes>,...
 +that needs to be read out from /proc/cmdline while the AC100 is running the stock OS or needs to be manually created based on the info from the output of tegrapart (the latter is tricky as it is undocumented). 
  
 ====== Booting Custom Images ====== ====== Booting Custom Images ======
Line 48: Line 49:
   * via the normal boot image   * via the normal boot image
  
-Even if you manage to reck both you can still rescue your device using nvflash but if you bake backups and only flash one at a time you can just keep the backups safe for any future use. +Even if you manage to wreck both you can still rescue your device using nvflash but if you make backups and only flash one partition at a time you can use the other to put things right. You should keep the backups safe for any future use and/or restoring back the original OS
-try flashing the rescue image first and then I use that to flash the rest ... but you can keep using nvflash for both boot images and even for the root filesystem if you like the idea.+tried flashing the rescue image first and then I use that to flash the rest ... but you can keep using nvflash for both boot images and even for the root filesystem if you like the idea. There is a new rescue image that can be run from ram without actually flashing anything into the rescue partition, but it is handy to have a rescue partition that can be used to assist fixing the OS you are going to install (as the stock one is useless on anything but the stock OS).
  
 ===== Requirements ===== ===== Requirements =====
Line 60: Line 61:
   * A copy of the content of /proc/cmdline before you change kernel   * A copy of the content of /proc/cmdline before you change kernel
  
-===== Backuin Up =====+===== Backing Up =====
 Before you actually go ahead it's a good idea to make a backup of the original rescue and boot images. It won't hurt if you also do this for all the partitions ... I'll leave that up to you. Before you actually go ahead it's a good idea to make a backup of the original rescue and boot images. It won't hurt if you also do this for all the partitions ... I'll leave that up to you.
 Start your device into recovery mode (POWER + ESC + CTRL) and then from the pc where you have the tegra-linux utils run the following com Start your device into recovery mode (POWER + ESC + CTRL) and then from the pc where you have the tegra-linux utils run the following com
Line 71: Line 72:
 Although it is technically possible to boot without using an initrd I've not had the time to experiment that. If all you need is simple boot then the initrd only really needs busybox and a very simple script that mounts root and then switches root. Although it is technically possible to boot without using an initrd I've not had the time to experiment that. If all you need is simple boot then the initrd only really needs busybox and a very simple script that mounts root and then switches root.
  
-I make a slight difference between the rescue init script and the boot init script, making the forme allways drop you into a shell prompt from the initrd system and the later allways attempt to switch root.+I make a slight difference between the rescue init script and the boot init script, making the former always drop you into a shell prompt from the initrd system and the latter always attempt to switch root.
  
 This is what my boot init script looks like: This is what my boot init script looks like:
Line 99: Line 100:
  
 If you wish to alter the init scripts you can extract them from the rescue and boot images: first use abootimg to extract the initrd.img then use zcat | cpio -idm to extract the content from the initrd image. If you wish to alter the init scripts you can extract them from the rescue and boot images: first use abootimg to extract the initrd.img then use zcat | cpio -idm to extract the content from the initrd image.
-Edit them to suit your desigred setup (in my case root is on the internal EMMC biggest partition), load any modules required for switching root and then repackage the images.+Edit them to suit your desired setup (in my case root is on the internal EMMC biggest partition), load any modules required for switching root and then repackage the images.
  
 ===== Repackaging The Boot Images For Aboot===== ===== Repackaging The Boot Images For Aboot=====
Line 115: Line 116:
   abootimg -create rescue_new.img -k zImage -f bootimg.cfg -r initrd.img   abootimg -create rescue_new.img -k zImage -f bootimg.cfg -r initrd.img
  
-You are now ready to try your rescue image without actually flashing it.+You are now theoretically ready to try your rescue image without actually flashing it.
  
-Then restart your device into recovery mode (POWER + ESC + CTRL) an load the rescue image into ram: +Restart your device into recovery mode (POWER + ESC + CTRL) an load the rescue image into ram. I've not yet got round to prepare a ram rescue image (requires 3.8+ kernel, u-boot and other details prepended to the kernel and initrd images) but over at ac100.grandou.net they have it sorted out, so for the mean time you can try their ram loading [[https://dl.dropboxusercontent.com/u/40761340/sos-uboot-r5-alpha.bin|sos-uboot-r5-alpha.bin]] image ... other wise skip this step and go to the one below. 
-  nvflash --bl rescue_new.img --sync+If you want to read more about sos-uboot-r5-alpha you can do so [[https://ac100.grandou.net/sosbootr5|here]].
  
-If loading the rescue image directly into ram fails you will haveto flash it to the rescue partition:+  nvflash --bl sos-uboot-r5-alpha.bin --sync 
 + 
 +Using traditional rescue system flashed to rescue partition.
   nvflash --bl harmony/fastboot.bin --sync   nvflash --bl harmony/fastboot.bin --sync
   nvflash -r --download 5 rescue_new.img    nvflash -r --download 5 rescue_new.img 
Line 237: Line 240:
 According to [[http://ac100.grandou.net/kerneldev#mainline_git_kernel|ac100.grangow.net]] form 3.15 on there is full support on mainstream kernel. According to [[http://ac100.grandou.net/kerneldev#mainline_git_kernel|ac100.grangow.net]] form 3.15 on there is full support on mainstream kernel.
  
-Native kernel build (in order to compile this native 512Mb arr not sufficient so you need to swap on something {SD,usb storage or internal emmc}: an extra 512Mb swap will suffice). +Native kernel build (in order to compile this native 512Mb are no longer sufficient so you need to swap on something {SD,usb storage or internal emmc}: an extra 512Mb swap will suffice). 
-It;s technically possible to work form marvin's kernel git but I've not been able to configure that kernel to boot correctly ... it hangs while attempting to read RTC, but it's probably just something wrong that I did in the configuration.+It's technically possible to work form marvin's kernel git but I've not been able to configure that kernel to boot correctly ... it hangs while attempting to read RTC, but it's probably just something wrong that I did in the configuration.
 #git clone --depth 1 -b chromeos-ac100-3.0 https://gitorious.org/~marvin24/ac100/marvin24s-kernel.git #git clone --depth 1 -b chromeos-ac100-3.0 https://gitorious.org/~marvin24/ac100/marvin24s-kernel.git
  
 howtos:hardware:arm:toshiba_ac100_dynabook_az ()