kirkwood: add D-Link DNS-320L support
authorZoltan HERPAI <wigyori@uid0.hu>
Fri, 5 Jan 2024 17:42:53 +0000 (18:42 +0100)
committerZoltan HERPAI <wigyori@uid0.hu>
Fri, 31 May 2024 23:29:09 +0000 (01:29 +0200)
commit8619d7af67c28ff974373c9a2937da1025cd81e5
tree031752137fe1be2cb576af692ee537eb51ca194c
parentab9bb79d8e30a574c7628c73c4522429805d9307
kirkwood: add D-Link DNS-320L support

Dual-slot NAS based on Marvell Kirkwood.

Specifications:
 - Marvell 88F6702 @1GHz
 - 256Mb RAM
 - 128Mb NAND
 - 1x GbE LAN (Marvell 88E1318R)
 - 1x USB 2.0
 - 2x SATA
 - Weltrend WT69P3 ("supervisor" MCU chip)
 - Serial on J2 (115200,8n1)
 - Newer bootROM so kwboot-ing via serial is possible

Notes:
 - The Weltrend MCU is controlled by the package added in utils/dns320l-mcu.
 - The original MAC address is stored in the "mini firmware" image's first
   17 bytes.
 - Compared to the original MTD layout, the uImage+rootfs are now stored in
   a common ubi partition.

Installation:
1. Serial console
 - Connect your levelshifter to the serial console
   on J2 (refer to the wiki page for pinout)
2. Update u-boot
 - Download the u-boot.kwb image for the device
 - Powercycle the NAS
 - Run "kwboot -b u-boot-dns320l/u-boot.kwb /dev/ttyUSB0 -p"
 - Connect to the serial console with minicom
 - tftp 0x0800000 u-boot-dns320l/u-boot.kwb
   (Please note that "PHY reset timed out" seems to be customary
    on kirkwood devices, the egiga0 interface works regardless.)
 - nand erase 0x0 100000
 - nand write 0x0800000 0x0 0x100000
 - reset
3. Install OpenWrt
 - Boot up the initramfs image
 - tftpboot 0x800000 openwrt-kirkwood-generic-dlink_dns320l-initramfs-uImage; bootm 0x800000
 - Download the sysupgrade image and perform sysupgrade

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
Reviewed-by: Pawel Dembicki <paweldembicki@gmail.com>
12 files changed:
package/boot/uboot-envtools/Makefile
package/boot/uboot-envtools/files/kirkwood
package/boot/uboot-kirkwood/Makefile
package/boot/uboot-kirkwood/patches/190-dns-320l.patch [new file with mode: 0644]
package/utils/dns320l-mcu/Makefile [new file with mode: 0644]
package/utils/dns320l-mcu/files/dns320l-mcu.init [new file with mode: 0644]
target/linux/kirkwood/base-files/etc/board.d/02_network
target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-dns320l.dts [new file with mode: 0644]
target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-dns320l.dts [new file with mode: 0644]
target/linux/kirkwood/image/Makefile
target/linux/kirkwood/patches-6.1/118-dns-320l.patch [new file with mode: 0644]
target/linux/kirkwood/patches-6.6/118-dns-320l.patch [new file with mode: 0644]