DreamPlug EOL announcement 20190709
Basic Device Setup at time of shipment Single drive boot (internal sd only)
U-Boot Defaults U-Boot 2011.06-02334-g8f495d9-dirty (Mar 01 2011 - 06:57:05) Marvell-DreamPlug SoC: Kirkwood 88F6281_A0 DRAM: 512 MiB SF: Detected MX25L1606 with page size 256, total 1 MiB In: serial Out: serial Err: serial Net: egiga0, egiga1 88E1121 Initialized on egiga0 88E1121 Initialized on egiga1 Hit any key to stop autoboot: 3 Marvell>> printenv bootcmd=setenv ethact egiga0; ${x_bootcmd_ethernet}; setenv ethact egiga1; ${x_bootcmd_ethernet}; ${x_bootcmd_usb}; ${x_bootcmd_kernel}; setenv bootargs ${x_bootargs} ${x_bootargs_root}; bootm 0x6400000; bootdelay=3 baudrate=115200 x_bootcmd_ethernet=ping 192.168.2.1 x_bootcmd_usb=usb start x_bootcmd_kernel=ext2load usb 0 0x6400000 uImage x_bootargs=console=ttyS0,115200 x_bootargs_root=root=/dev/sda2 rootdelay=10 ethact=egiga0 ethaddr=F0:AD:4E:00:7C:xx eth1addr=F0:AD:4E:00:7C:xx stdin=serial stdout=serial stderr=serial Hit any key to stop autoboot: 3 Marvell>> help ? - alias for 'help' base - print or set address offset bdinfo - print Board Info structure boot - boot default, i.e., run 'bootcmd' bootd - boot default, i.e., run 'bootcmd' bootm - boot application image from memory bootp - boot image via network using BOOTP/TFTP protocol cmp - memory compare coninfo - print console devices and information cp - memory copy crc32 - checksum calculation date - get/set/reset date & time dhcp - boot image via network using DHCP/TFTP protocol echo - echo args to console editenv - edit environment variable fatinfo - print information about filesystem fatload - load binary file from a dos filesystem fatls - list files in a directory (default /) go - start application at address 'addr' help - print command description/usage iminfo - print header information for application image imxtract- extract a part of a multi-image itest - return true/false on integer compare loadb - load binary file over serial line (kermit mode) loads - load S-Record file over serial line loady - load binary file over serial line (ymodem mode) loop - infinite loop on address range md - memory display mii - MII utility commands mm - memory modify (auto-incrementing address) mtest - simple RAM read/write test mw - memory write (fill) nfs - boot image via network using NFS protocol nm - memory modify (constant address) ping - send ICMP ECHO_REQUEST to network host printenv- print environment variables rarpboot- boot image via network using RARP/TFTP protocol reset - Perform RESET of the CPU run - run commands in an environment variable saveenv - save environment variables to persistent storage setenv - set environment variables sf - SPI flash sub-system sleep - delay execution for some time source - run script from memory tftpboot- boot image via network using TFTP protocol usb - USB sub-system usbboot - boot from USB device version - print monitor version # Used for bootp/dhcp/tftp/nfs booting setenv serverip <server-ip> setenv ipaddr <board-ip-addr> setenv netmask <netmask> setenv gatewayip <gateway-ip> saveenv
U-Boot MultiBoot
This setup will allow you to boot off usb/esata/external-sd/internal-sd. It will auto test all 4 in order of sdd >> sdc >> sdb >> sda currently when it hits the go 0x00900000 it will hang. This is due to the fact go is a cmd statement telling it to load a specific Memory segment. We are working to get ukernels working. so then the multi boot for uboot will work correctly. Enter the following lines to enable multiboot: Clear existing settings setenv bootargs setenv bootcmd setenv x_bootcmd_usb setenv x_bootcmd_kernel setenv x_bootcmd_ethernet Now Set new values: sda = internal linux sd / da0 = internal Freebsd da1 = external FreeBSD sd da2 = 1st external FreeBSD usb drive or esata da3 = 1st external Freebsd usb drive or esata if drive da2 is plugged into usb setenv bootdelay 3 setenv bootcmd_eth 'setenv ethact egiga0; ${x_b_e}; setenv ethact egiga1; ${x_b_e};' setenv ethact egiga0 setenv clr_k 'echo Purging kernel; mw 0x6400000 0x0 0x300000' setenv x_b_e ping ip.of.your.router setenv x_b_u usb start setenv x_b 'console=ttyS0,115200' setenv x_ba 'root=/dev/sda2 panic=10 rootwait' setenv x_bb 'root=/dev/da1s2 panic=10 rootwait' setenv x_bc 'root=/dev/da2s2 panic=10 rootwait' setenv x_bd 'root=/dev/da3s2 panic=10 rootwait' setenv x_fa 'ex2load usb 0 0x6400000 uImage' setenv x_fb 'fatload usb 1 0x00900000 kernel.bin' setenv x_fc 'fatload usb 2 0x64000000 ukernel' setenv x_fd 'fatload usb 3 0x64000000 ukernel' setenv x_bma 'bootm 0x6400000' setenv x_bmb 'go 0x00900000' setenv x_bmc 'bootm 0x6400000' setenv x_bmd 'bootm 0x6400000' setenv boot_sda 'echo ** sda/usb/intsd 0 **; ${x_b_u}; setenv bootargs ${x_b} ${x_ba}; ${x_fa}; ${x_bma};' setenv boot_sdb 'echo ** sdb/usb/extsd 1 **; ${x_b_u}; setenv bootargs ${x_b} ${x_bb}; ${x_fb}; ${x_bmb};' setenv boot_sdc 'echo ** sdc/usb/eSata 2 **; ${x_b_u}; setenv bootargs ${x_b} ${x_bc}; ${x_fc}; ${x_bmc};' setenv boot_sdd 'echo ** sdd/usb/eSata 3 **; ${x_b_u}; setenv bootargs ${x_b} ${x_bd}; ${x_fd}; ${x_bmd};' setenv bootcmd 'run clr_k; run boot_sdd; run boot_sdb; run boot_sdc; run boot_sda' saveenv
Build Script for 9.x-Stable:
# #Version : 9 #date Julu 9, 2012 #writen By RNeese (r.neese@gmail.com) # set -eu # reports errors in the script ###### Edit only these lines ###### DEVICE_NAME="dreamplug" # Device base name DEVICE_ARCH="arm" # Device Archutecture DEVICE_KERNEL="DREAMPLUG" # ls /usr/src/sys/conf and find your cpu export DRIVE=da0 # da0/da1/da2/da3 ######### DO NOT EDIT ############### Envirmental settings for build ################ OBJDIR="/usr/obj/${DEVICE_ARCH}.${DEVICE_ARCH}/usr/" kernel="/mnt/1" export DESTDIR="/mnt/2" ##################################################################################### ####Build SD/HD######## dd if=/dev/zero of=/dev/'${DRIVE}' bs=512 count=1 gpart create -s mbr '${DRIVE}' gpart add -s32m -t \!14 '${DRIVE}' gpart set -a active -i 1 '${DRIVE}' gpart add -t freebsd '${DRIVE}' newfs_msdos -F 16 /dev/'${DRIVE}'s1 newfs /dev/'${DRIVE}'s2 mount -t msdosfs /dev/'${DRIVE}'s1 /mnt/1 mount /dev/'${DRIVE}'s2 /mnt/2 ######## port checking script ######## port_is_installed(){ [ -x "/usr/local/bin/$1" ] || pkg_add -r $1 } #check to see needed pkgs are installed #Add svn [ -x "/usr/local/bin/svn" ] || pkg_add -r subversion ####### fetch/update /usr/src dir ########### fetch_src-head(){ svn co http://svn.freebsd.org/base/head /usr/src-head } [ -e "/usr/src-head/Makefile" ] || fetch_src-head cd /usr/src make clean make ARCH=arm TARGET_ARCH=arm kernel-toolchain make -j 8 buildworld TARGET_ARCH="${DEVICE_ARCH}" make installworld TARGET_ARCH="${DEVICE_ARCH}" make distrib-dirs TARGET_ARCH="${DEVICE_ARCH}" make distribution TARGET_ARCH="${DEVICE_ARCH}" cd /usr/src-head make buildkernel TARGET_ARCH=${DEVICE_ARCH} KERNCONF=${DEVICE_KERNEL} cp "${OBJDIR}/src-head/sys/${DEVICE_KERNEL}/kernel.bin" "${kernel}" } echo '/dev/${drive}s2 / ufs rw,noclusterr,noclusterw 0 0' >> $DESTDIR/etc/fstab #### Add Daemons to the devices /etc/rc.conf for startup ######## cat << EOF > "$DESTDIR/etc/rc.conf" hostname="dreamplug" ifconfig_mge0="DHCP" sshd_enable="YES" ntpd_enable="YES" ntpd_sync_on_start="YES" dumpdev="NO" fsck_y_enable="YES" background_fsck="NO" force_fsck="YES" force_fsck_list="/" EOF } echo 'WITHOUT_X11=yes' >> $DESTDIR/etc/make.conf