kirkwood: add support for D-Link DNS-325 A1
authorKonstantin Meshkov <[email protected]>
Tue, 25 Nov 2025 13:08:26 +0000 (16:08 +0300)
committerChristian Marangi <[email protected]>
Tue, 25 Nov 2025 14:41:38 +0000 (15:41 +0100)
commit7e829b82090ff102d2ce2435737526b8e9e4a86f
treed99144d88249257306339c0e1f372e711c52ce5e
parent6065edf3b2d3bc905ff45f58534de7596c7b83a8
kirkwood: add support for D-Link DNS-325 A1

The D-Link DNS-325 A1 is NAS with 2x HDD (3.5 inch) bays, 1x 10/100/1000Base-T port and 1x USB 2.0 port

Device specification:

    SoC: Marvell 88F6281-A1 1.2 GHz
    RAM: 256 MB (2xSEC K4T1G084QF-HCF7:128Mx8 @400 CL6)
    Flash: 128 MB (SAMSUNG 946 K9F1G08U0B PCB0)
    SATA: 2x internal SATA II drives
    Ethernet: 1x Gigabit (Marvell 88E1116R-NNC1)
    LED: 7x (white: Power, white/red: Right SATA Activity, USB Activity, Left SATA Activity)
    Key: 3x (Power, Reset, USB Copy/Unmount)
    Serial: 5 pin header (RXD,GAP,3.3V,GND,TXD), (115200,8,N,1), 3.3V TTL
    USB ports: 1x USB 2.0

Flash instruction:

NOTE: this process uses a serial connection. It will upgrade the bootloader and reset the bootloader environment variables

USB flash stick setup

    Format to FAT32 without mbr
    Copy these files to USB flash stick: dlink_dns-325-a1-initramfs-uImage dlink_dns-325-a1-squashfs-factory.bin dlink_dns-325-a1-squashfs-sysupgrade.bin u-boot.kwb (from u-boot-dns325 directory)

NAS setup

    Connect LAN cable between router and NAS device
    Connetc USB flash stick to NAS device
    Connect serial to NAS device

Boot from new u-boot and install it

    $ kwboot -p -b u-boot.kwb -B115200 -t /dev/ttyUSB0
    Power on NAS
    After download copleted and booted NAS device with new u-boot stop in bootloader by pressing any key
    => usb start
    => fatload usb 0 0x1000000 /u-boot.kwb
    => nand erase.part u-boot
    => nand write 0x1000000 u-boot ${filesize}
    => reset

Update MAC address in u-boot env

    Stop in bootloader by pressing any key
    Get your MAC address from label on chassis
    => setenv ethaddr XX:XX:XX:XX:XX:XX
    => saveenv

Install OpenWrt by flashing factory image from u-boot

    => usb start
    => fatload usb 0 0x1000000 /dlink_dns-325-a1-squashfs-factory.bin
    => nand erase.part ubi
    => nand write 0x1000000 ubi ${filesize}
    => reset

Based-on: #9296
Signed-off-by: Konstantin Meshkov <[email protected]>
[ refresh uboot patches ]
Link: https://github.com/openwrt/openwrt/pull/17924
Signed-off-by: Christian Marangi <[email protected]>
package/boot/uboot-kirkwood/Makefile
package/boot/uboot-kirkwood/patches/011-arm-kirkwood-dns325-Correct-CONFIG_NR_DRAM_BANKS-parameter.patch [new file with mode: 0644]
package/boot/uboot-kirkwood/patches/100-dns325.patch [new file with mode: 0644]
package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
package/boot/uboot-tools/uboot-envtools/files/kirkwood
target/linux/kirkwood/base-files/etc/board.d/02_network
target/linux/kirkwood/image/Makefile