KuroBoxPro

=Kuro Box Pro International Main Page=

Hardware Specifications
Note : Some Kurobox Pro are 110V and some are 100-240V compatible. Be carefull before using a Kurobox Pro with a 220V plug.

Accessing Partitions from Samba
There is no FTPd to ftp files into the KuroBox at this point. But there is Samba!

The flash memory is available at

smb://kuroip/mtd_device

The newly installed hard drive is at

smb://kuroip/share

You could stop here if you wanted to, after all you have a network share with samba/swat for administration.

=Serial port=

To be able to access bootloader settings, you will need to get access to serial port. See instructions on how to add serial port.

=Install a root file system (Distribution)= The following procedure creates the following partition scheme, and untars a root file system onto p2 (/dev/sda2). Somehow it rewrites the uboot variables allowing a boot from the hard drive. Console access would be the preferred way to change these uboot settings. Netcat does not seem to work to access uboot.


 * 1) p1 : /boot (16MB)
 * 2) p2 : /rootfs (3GB)
 * 3) p4 : extend (others)
 * 4) p5 : swap (128MB)
 * 5) p6 : /share (others)

Buffalo Provided Developer System

 * 1) Connect up the blank unformatted hard drive and power on.
 * 2) Access the Samba share on the kurobox named mtd_device
 * 3) Copy over these files to the samba share from the provided CD-ROM
 * 4) hddrootfs.tar.gz (this file probably could be replaced with an alternate rootfs, see below)
 * 5) ChangeMeDevHDD
 * 6) ChangeMyUbootEnv</tt>
 * 7) uImage.buffalo </tt>
 * 8) Press the red init button on the back till it beeps
 * 9) The Info LED will flash the drive will be partitoned to the above scheme, afterwards the above partition scheme was created and hddrootfs.tar.gz</tt> was untarred into /dev/sda2</tt>
 * 10) Reboot System.

FreeLink (Debian)
FreeLink for the Kurobox Pro

=Japanese Kuro-Box Interface=

Webserver
http://kuroip gives



linked to http://www.kuroutoshikou.com/

this could be changed the index.html and gif is in: ./www: drw-r--r--   3 root     root            0 Feb  9 10:17. drwxr-xr-x  18 root     root            0 May 23 01:57 .. drwxrwxrwx   2 root     root            0 Feb  9 22:35 img -rwxrwxrwx   1 root     root           95 Feb  9 10:17 index.html

./www/img: drwxrwxrwx   2 root     root            0 Feb  9 22:35. drw-r--r--   3 root     root            0 Feb  9 10:17 .. -rwxrwxrwx   1 root     root         4587 Feb  9 22:35 kuro.gif

Starting Beep
The KuroPro makes a distinctive starting beep. You can use the beeper to play sounds at any time if you want it uses miconapl

PlayBeep.sh /usr/local/music/SW_ON.msc

/usr/local/bin/Playbeep.sh
 * 1) !/bin/sh

if [ -f "$1" ] ; then TEMPO=`grep "TEMPO=" $1|sed -e "s/TEMPO=//"` MELODY=`grep -v "TEMPO=" $1` PLAYDATA="${TEMPO} ${MELODY}" else MELODY=`echo $*| sed -e "s/$0//"` PLAYDATA=${MELODY} fi

miconapl -a bz_melody ${PLAYDATA}

/usr/local/music/SW_ON.msc TEMPO=30 b4 b5 b4 b6

dmesg
These are from a Japanese Kuro Pro the American and European versions may be different

/mnt/mtd # dmesg pj=1331200) Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 serial_initialize_ttyS1 (Debug): ttyS1 is initialized. config_device_cs Error : Unknown board

CPU Interface - SDRAM_CS0 ....base 00000000, size 128MB SDRAM_CS1 ....disable SDRAM_CS2 ....disable SDRAM_CS3 ....disable PEX0_MEM ....base e0000000, size 128MB PEX0_IO ....base f2000000, size  1MB PCI0_MEM ....base e8000000, size 128MB PCI0_IO ....base f2100000, size  1MB INTER_REGS ....base f1000000, size  1MB DEVICE_CS0 ....base fa000000, size  2MB DEVICE_CS1 ....base f4000000, size 32MB DEVICE_CS2 ....base fa800000, size  1MB DEV_BOOCS ....base ff800000, size  8MB CRYPTO ENG ....no such Flash bankwidth 1, base ff800000, size 400000 KUROBOX FLASH size 4096[KB]

Marvell Development Board (LSP Version 1.10.3.patch5_DB_NAS)-- KUROBOX_BOARD_KUROBOX Soc: 88F5182 A2

Detected Tclk 166664740 and SysClk 250000000 Marvell USB EHCI Host controller #0: c04e4b00 Marvell USB EHCI Host controller #1: c04e4a40 pexBarOverlapDetect: winNum 2 overlap current 0 mvPexInit:Warning :Bar 2 size is illigal it will be disabled please check Pex and CPU windows configuration PCI: bus0: Fast back to back transfers enabled PCI: bus1: Fast back to back transfers enabled SCSI subsystem initialized usbcore: registered new driver usbfs usbcore: registered new driver hub Use the XOR engines (offloading) for enhancing the following functions: o RAID 5 Xor calculation o kernel memcpy o kenrel memzero o copy user to/from kernel buffers Number of XOR engines to use: 2 cesadev_init(c00122e4) Fast Floating Point Emulator V0.9 (c) Peter Teichmann. inotify device minor=63 JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc. SGI XFS with no debug enabled Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled ttyS0 at MMIO 0x0 (irq = 3) is a 16550A ttyS1 at MMIO 0x0 (irq = 4) is a 16550A io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered RAMDISK driver initialized: 3 RAM disks of 32768K size 1024 blocksize loop: loaded (max 8 devices) Marvell Gigabit Ethernet Driver 'egiga': o Ethernet descriptors in DRAM o DRAM SW cache-coherency o Checksum offload enabled o Loading network interface ** egiga_init_module (10) 'eth0' Intergrated Sata device found scsi0 : Marvell SCSI to SATA adapter scsi1 : Marvell SCSI to SATA adapter physmap flash device: 400000 at ff800000 CFI: Found no phys_mapped_flash device at location zero Found: SST 39LF020 phys_mapped_flash: Found 1 x8 devices at 0x0 in 8-bit bank phys_mapped_flash: Found an alias at 0x40000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x80000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0xc0000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x100000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x140000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x180000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x1c0000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x200000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x240000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x280000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x2c0000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x300000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x340000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x380000 for the chip at 0x0 phys_mapped_flash: Found an alias at 0x3c0000 for the chip at 0x0 number of JEDEC chips: 1 cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. RedBoot partition parsing not available Debug nand_scan : nand_flash_ids[i].pagesize is exist Debug nand_scan : mtd->erasesize=0x00020000 Debug nand_scan : mtd->oobblock=0x00000800 Debug nand_scan : mtd->oobsize=0x00000040 NAND device: Manufacturer ID: 0x20, Chip ID: 0xda (ST Micro NAND 256MiB 3,3V 8-bit) Scanning device for bad blocks Using static partition definition Creating 3 MTD partitions on "nand_mtd": 0x00000000-0x00400000 : "uImage" 0x00400000-0x04400000 : "rootfs" 0x04400000-0x10000000 : "extra" usbmon: debugs is not available ehci_platform ehci_platform.4523: EHCI Host Controller ehci_platform ehci_platform.4523: new USB bus registered, assigned bus number 1 ehci_platform ehci_platform.4523: irq 17, io mem 0x00000000 ehci_platform ehci_platform.4523: park 0 ehci_platform ehci_platform.4523: USB 0.0 initialized, EHCI 1.00, driver 10 Dec 2004 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected ehci_platform ehci_platform.16781: EHCI Host Controller ehci_platform ehci_platform.16781: new USB bus registered, assigned bus number 2 ehci_platform ehci_platform.16781: irq 12, io mem 0x00000000 ehci_platform ehci_platform.16781: park 0 ehci_platform ehci_platform.16781: USB 0.0 initialized, EHCI 1.00, driver 10 Dec 2004 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) USB Universal Host Controller Interface driver v2.2 Initializing USB Mass Storage driver... usbcore: registered new driver usb-storage USB Mass Storage support registered. usbcore: registered new driver usbhid drivers/usb/input/hid-core.c: v2.01:USB HID core driver mice: PS/2 mouse device common for all mice md: raid0 personality registered as nr 2 md: raid1 personality registered as nr 3 md: raid5 personality registered as nr 4 raid5: measuring checksumming speed arm4regs :   309.200 MB/sec 8regs    :   217.600 MB/sec 32regs   :   252.400 MB/sec raid5: using function: arm4regs (309.200 MB/sec) md: md driver 0.90.1 MAX_MD_DEVS=256, MD_SB_DISKS=27 Buffalo Platform Linux Driver(Light) 0.01 installed. MICON ctrl (C) BUFFALO INC. V.1.00 installed. Kernel event proc (C) BUFFALO INC. V.1.00 installed. MICON V2 (C) BUFFALO INC. V.1.00 installed. NET: Registered protocol family 2 IP: routing cache hash table of 1024 buckets, 8Kbytes TCP established hash table entries: 8192 (order: 4, 65536 bytes) TCP bind hash table entries: 8192 (order: 3, 32768 bytes) TCP: Hash tables configured (established 8192 bind 8192) NET: Registered protocol family 1 NET: Registered protocol family 17 md: Autodetecting RAID arrays. md: autorun ... md: ... autorun DONE. Empty flash at 0x00df85f8 ends at 0x00df8800 VFS: Mounted root (jffs2 filesystem). Freeing init memory: 112K jffs2_get_inode_nodes: Data CRC failed on node at 0x01dc1308: Read 0xca66d714, calculated 0xc26a5721 eth0: link down eth0: link up<5>, full duplex<5>, speed 1 Gbps<5>

File Structure
http://www.kurobox.com/mwiki/images/b/b4/Kuroboxprofilestructure.txt

Marvell>> printenv At the time of Flash starting
baudrate=115200 loads_echo=0 ipaddr=192.168.11.150 serverip=192.168.11.1 rootpath=/nfs/arm stdin=serial stdout=serial stderr=serial cpuName=926 CASset=min enaMonExt=no enaFlashBuf=yes enaCpuStream=no MALLOC_len=4 ethprime=egiga0 bootargs_end=:::DB88FXX81:eth0:none buffalo_ver=BOOTVER=1.091 build_time=18:10:02 initrd=initrd.buffalo kernel=uImage.buffalo bootargs_base=console=ttyS0,115200 bootargs_root=root=/dev/mtdblock2 rw panic=5 bootargs=$(bootargs_base) $(bootargs_root) $(buffalo_ver) nand_uImage_offset=20000 default_kernel_addr=0x00100000 default_initrd_addr=0x02000000 bootcmd=nboot $(default_kernel_addr) 0 $(nand_uImage_offset) ;setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver); bootm $(default_kernel_addr) def_tftp=tftp $(default_kernel_addr) $(kernel); tftp $(default_initrd_addr) $(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) rw initrd=0x02000040,20M panic=5 $(buffalo_ver); bootm $(default_kernel_addr) $(default_initrd_addr) nand_boot=yes bootdelay=3 disaMvPnp=no overEthAddr=no usb0Mode=host usb1Mode=host ethact=egiga0 ethaddr=XX:XX:XX:XX:XX:XX

Marvell>> printenv At the time of HDD starting
baudrate=115200 loads_echo=0 ipaddr=192.168.11.150 serverip=192.168.11.1 rootpath=/nfs/arm cpuName=926 CASset=min MALLOC_len=4 bootargs_end=:::DB88FXX81:eth0:none ethact=egiga0 ethaddr=00:16:01:A4:C2:4A buffalo_ver=BOOTVER=1.091 build_time=15:59:38 initrd=initrd.buffalo kernel=uImage.buffalo bootargs_base=console=ttyS0,115200 bootargs_root=root=/dev/sda2 rw panic=5 bootargs=console=ttyS0,115200 root=/dev/sda2 rw panic=5 BOOTVER=1.09 nand_uImage_offset=20000 default_kernel_addr=0x00100000 default_initrd_addr=0x02000000 def_tftp=tftp $(default_kernel_addr) $(kernel); tftp $(default_initrd_addr) $(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) rw initrd=0x02000040,20M panic=5 $(buffalo_ver); bootm $(default_kernel_addr) $(default_initrd_addr) nand_boot=no stdin=serial stdout=serial stderr=serial enaMonExt=no enaFlashBuf=yes enaCpuStream=no ethprime=egiga0 bootdelay=3 disaMvPnp=no overEthAddr=no usb0Mode=host usb1Mode=host force_tftp=1 bootcmd=tftp $(default_kernel_addr) $(kernel); tftp $(default_initrd_addr) $(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) rw initrd=0x02000040,20M panic=5 $(buffalo_ver); bootm $(default_kernel_addr) $(default_initrd_addr)

Environment size: 1197/4092 bytes test

=References=
 * Kurobox Pro specification document
 * KuroboxPro User's Guide in English
 * Kurobox Pro microprocessor interface specifications
 * Debian on the Kurobox - Debian install
 * Change of starting device (1)
 * Marvell>> printenv At the time of Flash starting
 * Marvell>> printenv At the time of HDD starting
 * GenLink for ARM9
 * FreeLink for the Linkstation Pro
 * KuroBox Pro GPL Sources
 * KuroBox Photos
 * PDF of SCON-KIT/PRO USB serial access kit -SCION USB serial access kit

=Telnet Easter Egg Found !=

Telnet to a new KuroBox ... > telnet 192.168.11.150

Then login with root:kuroadmin to get the root prompt

~# ls ... gives you directory listing (duh)

~# sl ... an easy mistake ! ... gives you the train easter egg !!!

try it ... less filling, tastes great !


 * KuroPro Easter Egg ! (youtube)