it is possible to boot and run OpenWrt from an image on an USB-Stick
on the MyBook Live DUO. (No, the MyBook Live Single does NOT have an
USB-Port and attempts at enabling it sadly all failed... so far).
To do that:
First, prepare a USB-Stick by writing the raw and uncompressed OpenWRT
factory image for the device onto the stick (i.e.
# gunzip -c openwrt-*wd_mybooklive*-factory.img.gz > /dev/sd$XX).
Then enter the u-boot via an attached TTL/CMOS 3.3V cable adapter and
give the following commands a try in the:
usb start; sata init
ext2load usb 0:1 ${fdt_addr_r} /boot/apollo3g.dtb
ext2load usb 0:1 ${kernel_addr_r} /boot/uImage
setenv bootargs 'root=/dev/sdc2 rw rootfstype=squashfs,ext4 rootdelay=5'
run addtty; bootm ${kernel_addr_r} - ${fdt_addr_r}
Notes:
- booting from USB-Sticks takes a long time! Be prepared to wait a few
minutes. (~3 minutes for 4 MiB /boot/uImage file on a USB 2.0 Stick)
- the bootargs part 'root=/dev/sdX2' depends on how many HDDs/SSDs are
slotted in. (if none: then use sda, if one: sdb. if two: sdc)
- rootdelay is important as the storage on the USB-Sticks do not show
up fast enough. 5 seconds might be excessive though.
- it's possible to concat these commands together in one line and
write it into u-boot's "bootcmd" environment variable and save the
environment to make the device to always boot from USB from then on.
if you have accidentally overridden the 'bootcmd' and want to return
to 'spec' enter the following commands :
setenv bootcmd 'run boot_sata_script_ap2nc'
saveenv
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
All targets expect the malta target already activate the CONFIG_GPIOLIB
option. Move it to generic kernel configuration and also activate it for
malta.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The MBL has a 512KiB Microchip SST39VF040 chip for uboot and
not much else.
Thanks to Ewald who figured out that the "jedec-probe" vs.
"jedec-flash" was the wrong binding. With this information
and the jedec-probe support enabled => the chip works.
| physmap-flash 4fff80000.nor_flash: physmap platform flash device: [mem 0x4fff80000-0x4ffffffff]
| Found: SST 39LF040
| 4fff80000.nor_flash: Found 1 x8 devices at 0x0 in 8-bit bank
Suggested-by: Ewald Comhaire <e.comhaire@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
try to reduce the kernel size by disabling and moving
options from the common kernel configuration to the
SATA target that doesn't have the constraints.
For NAND this has become necessary because as with 5.10
some devices outgrew their kernels. Though, in my tests
this didn't help much: just a smidgen over 100kib was
saved on the uncompressed kernel.
... running make kernel_oldconfig also removed some
other config symbols, mostly those that already set
from elsewhere or became obsolete in the meantime.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Both NAND and SATA targets need the DMA engine in one way
or another.
Due to a kernel config refresh various existing symbols
got removed from the apm821xx main config file as well.
(That being said, they are still included because the
built-in crpyto4xx depends on these.)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This moves CONFIG_REGULATOR to the target config instead of the
subtarget config.
For kernel 5.10, CONFIG_AT803X_PHY depends on CONFIG_REGULATOR.
As we do not have a size constraint, move this symbol to the
target configuration for kernel 5.4 as well as 5.10.
Reported-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: David Bauer <mail@david-bauer.net>
This config option was moved to the generic kernel configuration.
Fixes: ab1bd57656 ("kernel: move F2FS_FS_XATTR and F2FS_STAT_FS symbols to generic")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Extended attributes are required for overlayfs and have hence been long
ago enabled for jffs2, but should be enabled unconditionally for all
other filesystems which may potentially serve as overlayfs' upper
directory. Previously it was inconsistently added in multiple targets.
Add symbols to generic kernel config and remove all *_XATTR symbols
from target configs.
Signed-off-by: Paul Spooren <mail@aparcar.org>
[keep things as they are for squashfs, improve commit message]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This patch updates the apm821xx target to use the 4.19 kernel.
4.19 ships with all the crypto4xx driver patches. Furthermore,
the DW-DMA fix for the SATA controller has been backported from
4.20 and integrated.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
convert the usb and both sata port power related gpio-hogs to
what they really are: fixed-regulators.
The ethernet phy-reset gpio-hog is replaced by a proper
upstream (4.15+) reset-gpios property in the mdio-node.
So this will work eventually.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This patch adds support for squashfs as the root filesystem.
advantages:
- migrate from a existing -ext4 installation and back
with the sysupgrade utility
- existing partition layout will not be lost during switch
- slightly smaller image size as compared to the -ext4 image.
disadvantages:
- needs f2fs + tools. This is because fstools rootdisk.c decides based
on the partition size (currently root partitions > 100 MiB) f2fs is
used as the rootfs_data filesystem.
- rootfs_data is placed into the rootfs partition after the squashfs.
This makes it difficult for tools that expect a /dev/sda${X} device.
It also makes it difficult for data recovery tools as they might not
expect to find a embedded partition or will be slightly confused.
... or will not support f2fs.
For people with existing build configurations: make sure to include mkf2fs
and f2fsck packages into the image. Otherwise the new -squashfs image will
only boot from the ram-overlay.
Note:
All overlay data (configurations/all installed packages/...) will be
placed in inside the rootfs partition (i.e. /dev/sda2) just after the
squashfs image.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
The patch "images: bump default rootfs size to 256 MB"
a1f83bad60 caused a crash
during boot for the recovery images. This is because
both variants of the MyBook Live only have 256MB of RAM
and for the recovery option, the ext4 rootfs was simply
stored in the RAMDISK.
This patch replaces recovery image for the MBL with an
initramfs kernel.
In order to boot the initramfs (for recovery or development):
0. copy the initramfs and device tree into tftp's server directory
# cp *-initramfs-kernel.bin to /tftp-server/mbl.bin
# cp *-ext4-kernel.dtb to /tftp-server/fdt.bin
1. Connect the MyBook Live (Duo) serial port.
(Warning! Use a 3.3v level shifter).
2. Hit Enter during u-boot and insert these three lines:
# setenv serverip 192.168.1.254; setenv ipaddr 192.168.1.1;
# tftp ${kernel_addr_r} mbl.bin; tftp ${fdt_addr_r} fdt.bin
# run addtty addmisc; bootm ${kernel_addr_r} - ${fdt_addr_r}
Where 192.168.1.254 is your TFTP server.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Hardware Highlights:
This patch adds support for Western Digital MyBook Live Series:
CPU: AMCC PowerPC UNKNOWN (PVR=12c41c83) at 800 MHz (PLB=200, OPB=100, EBC=100 MHz)
32 kB I-Cache 32 kB D-Cache, 256 kB L2-Cache, 32 kB OnChip Memory
Board: Apollo-3G - APM82181 Board, 1*SATA
DRAM: 256 MB (2x NT5TU64M16GG-AC)
FLASH: 512 kB (SST 39VF040)
Ethernet: 1xRGMII - 1 Gbit - Broadcom PHY BCM54610
WARNING: The serial port needs a TTL/RS-232 v3.3 level converter!
The MyBook Live Duo additionally features a 1x USB 2.0 host port
and can support a second hard-drive.
This target produces two images for a target.
1. ext4 image
The extracted/raw image can be directly installed on
the internal HDD via "dd if=img.ext4 of=/dev/sdX".
This can either be done in place with the stock MyBook Live
firmware via ssh. Or by removing the HDD and writing the image
with a different PC.
The the compressed images are useful for sysupgrade.
2. recovery.tar image for TFTP and Serial.
extract the recovery.tar to a TFTP server directory.
On the MyBook Live (Duo) serial port - Hit Enter during u-boot and insert:
# setenv serverip 192.168.1.254; setenv ipaddr 192.168.1.1; run net_self
Where 192.168.1.254 is your TFTP server.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>