-
Notifications
You must be signed in to change notification settings - Fork 2
Home
git checkout kobo-2020-10
Thanks to identical DCD/RAM setups needed, multiple boards can be selected by just selecting the devicetree.
for Kobo Clara HD:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6sllclarahd_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
for Kobo Libra H2O:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6sllclarahd_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- DEVICE_TREE=imx6sll-kobo-librah2o
for Tolino Shine 3:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6sltolinoshine3_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
for Tolino Shine 2HD:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6sltolinoshine3_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- DEVICE_TREE=imx6sl-tolino-shine2hd
for Tolino Vision 5:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6sltolinoshine3_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- DEVICE_TREE=imx6sl-tolino-vision5
make ARCH=arm CROSS_COMPLIE=arm-linux-gnueabihf-
result is u-boot-dtb.imx
There is a possibilty to test-boot u-boot in ram without touching flash by entering a special download mode. That is especially important for devices with an eMMC and not an internal µSD. Three possibilities
- insert a µSD card without u-boot (empty or just u-boot overwritten).
- use the u-boot command download_mode in the uboot 2009.08 vendor fork (shipped with Tolino readers)
- if that command is not known: emulate the same by executing mw 20d8040 30 ; mw 20d8044 10000000 ; reset
If you are successful, you see something like this:
[1547526.098123] usb 1-6.1: Product: SE Blank 6SLL [1547526.098124] usb 1-6.1: Manufacturer: NXP SemiConductor Inc [1547526.100249] hid-generic 0003:1FC9:0128.00A9: hiddev2,hidraw1: USB HID v1.10 Device [ NXP SemiConductor Inc SE Blank 6SLL] on usb-0000:00:14.0-6.1/input0
There is a tool called uuu (from https://github.com/NXPmicro/mfgtools): you can do
uuu u-boot-dtb.imx
to download and start u-boot from RAM without touching flash.
On devices without µSD but with eMMC, you will probably brick your device if your u-boot does not correctly configure RAM and serial port. So test before you flash. on the device dd if=u-boot-dtb.imx of=/dev/mmcblk0 seek=2 bs=512
Per default, fastboot is started, so you can transfer kernels. If you want to check button state in u-boot scripts, you can do e.g. if button Cover; then do_something ; fi
There is a command called kobohiddenread to read out hidden partitions. That is the way to prepare to boot the Kobo vendor kernels which require several blobs in RAM.
booting the original system (works for Kobo Clara HD, Android-based systems require more investigation)
kobohiddenread 0 9bfffe00 400 hwcfg_sz kobohiddenread 0 9bd70000 3800 waveform_sz kobohiddenread 0 9bd6da00 406 ntxfw_sz kobohiddenread 0 ${fdt_addr} 506 mmc read ${loadaddr} 800 2400 setenv bootargs console=${console},${baudrate} rootwait rw no_console_suspend hwcfg_p=0x9bfffe00 hwcfg_sz=${hwcfg_sz} waveform_p=0x9bd70000 waveform_sz=${waveform_sz} ntxfw_p=0x9bd6da00 ntxfw_sz=${ntxfw_sz} mem=445M boot_port=1 rootfstype=ext4 root=/dev/mmcblk0p1 quiet bootz ${loadaddr} - ${fdt_addr}