So i have this old Promise NS4300N NAS. It's running linux-2.6.11, booting it from u-boot. And i really hate the stock firmware with the crappy proprietary hardware raid driver and hostile userland.
I thought i might be able to make it slightly less useless if i could flash some openWRT unto it, but the openwrt mpc83xx images don't really seem to be compatible.
Hardware:
SOC: mpc8343vragd
RAM: 2 * Elpida d5116afta-6b-e (128MB total)
Flash: Spansion S29GL128N (16MB)
SATA controller: PDC40917 (TX4310) on pci bus
Ethernet: mpc8349 compatible (gianfar) + ip1001
USB: NEC upd720102 on pci bus
RTC: HT1381
There's also a Winbond w83l785g close to an at24c02 eeprom. Not sure what those two are up to.
And some buttons and leds, but i don't care much about those.
I have the kernel source from Promise that seems to differ quite a bit from the mainline 2.6.11.
3.3MB of uncut diff, gzipped.
dmesg:
Linux version 2.6.11SR3_1_2 (root@localhost.localdomain) (gcc version 3.4.3) #4 Mon Feb 4 07:25:45 CST 2008
On node 0 totalpages: 32768
DMA zone: 32768 pages, LIFO batch:8
Normal zone: 0 pages, LIFO batch:1
HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
Kernel command line: root=/dev/ram rw console=ttyS0,115200
IPIC (128 IRQ sources, 8 External IRQs) at fe000700
PID hash table entries: 1024 (order: 10, 16384 bytes)
Console: colour dummy device 80x25
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 123168k available (2292k kernel code, 668k data, 312k init, 0k highmem)
Calibrating delay loop... 265.21 BogoMIPS (lpj=132608)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 3189k freed
NET: Registered protocol family 16
PCI: Probing PCI hardware
PCI: bridge rsrc 0..ffffff (100), parent c028be7c
PCI: bridge rsrc 80000000..9fffffff (200), parent c028be60
PCI:0000:00:00.0: Resource 0: 00000000-000fffff (f=200)
PCI: Cannot allocate resource region 0 of device 0000:00:00.0
PCI: parent is c0333054: 80000000-9fffffff (f=200)
PCI:0000:00:00.0: Resource 2: 40000000-7fffffff (f=120c)
PCI: Cannot allocate resource region 2 of device 0000:00:00.0
PCI:0000:00:00.0: Resource 4: 00000000-3fffffff (f=120c)
PCI: Cannot allocate resource region 4 of device 0000:00:00.0
PCI: parent is c0333054: 80000000-9fffffff (f=200)
PCI:0000:00:0e.0: Resource 0: 9ffff000-9fffffff (f=200)
PCI:0000:00:0e.1: Resource 0: 9fffef00-9fffefff (f=200)
PCI:0000:00:10.0: Resource 0: 00ffff80-00ffffff (f=101)
PCI:0000:00:10.0: Resource 2: 00fffe00-00fffeff (f=101)
PCI:0000:00:10.0: Resource 3: 9fffd000-9fffdfff (f=200)
PCI:0000:00:10.0: Resource 4: 9ffc0000-9ffdffff (f=200)
PCI: Failed to allocate mem resource #2:40000000@c0000000 for 0000:00:00.0
PCI: Failed to allocate mem resource #4:40000000@c0000000 for 0000:00:00.0
Registering ipic with sysfs...
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
squashfs: version 3.0 (2006/03/15) Phillip Lougher
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
JFFS2 version 2.2. (C) 2001-2003 Red Hat, Inc.
Initializing Cryptographic API
MPC83xx SPI Driver on MDS board: Revision: 1.0
Successfully registered spi major=252
MPC83xx GPIO Driver on MDS board: Revision: 1.0
Successfully registered gpio major=253
Real Time Clock Driver v1.10f
MPC83xx Watchdog Demo Init
Serial: 8250/16550 driver $Revision: 1.1.1.1.2.1 $ 4 ports, IRQ sharing disabled
ttyS0 at MMIO 0xe0004500 (irq = 9) is a 16550A
ttyS1 at MMIO 0xe0004600 (irq = 10) is a 16550A
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
gfar_driver_version = 1.1a
GFAR: ECNTRL=00001018, MACCFG1,2=00000030,00007205
eth0: Gianfar Ethernet Controller Version 1.1, 00:0a:79:b9:91:ee
eth0: MTU = 1500 (frame size=1514,truesize=1784)
eth0: Running with NAPI enabled
eth0: 64/64 RX/TX BD ring size
eth0: Socket buffer recycling mode enabled
SKB Handler initialized(max=64)
MPC8349MDS flash device: 1000000 at fe000000 Partition number 7
MPC8349MDS Flash Map Info: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
MPC8349MDS Flash Map Info: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
add_mtd_partitions
Creating 7 MTD partitions on "MPC8349MDS Flash Map Info":
0x00000000-0x00040000 : "U-Boot"
ftl_cs: FTL header not found.
0x00040000-0x00080000 : "U-Boot_ENV"
ftl_cs: FTL header not found.
0x00080000-0x00240000 : "Kernel"
ftl_cs: FTL header not found.
0x00240000-0x00560000 : "Rootfs"
ftl_cs: FTL header not found.
0x00560000-0x00d60000 : "Usr"
ftl_cs: FTL header not found.
0x00d60000-0x00f00000 : "Promise"
ftl_cs: FTL header not found.
0x00f00000-0x01000000 : "Data"
ftl_cs: FTL header not found.
MPC8349MDS flash device initialized
ehci_hcd 0000:00:0e.1: NEC Corporation USB 2.0
ehci_hcd 0000:00:0e.1: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:0e.1: irq 21, io mem 0x9fffef00
ehci_hcd 0000:00:0e.1: park 0
ehci_hcd 0000:00:0e.1: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
ohci_hcd 0000:00:0e.0: NEC Corporation USB
ohci_hcd 0000:00:0e.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:0e.0: irq 21, io mem 0x9ffff000
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 3 ports detected
usbcore: registered new driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
usbcore: registered new driver hiddev
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
i2c /dev entries driver
device-mapper: 4.4.0-ioctl (2005-01-12) initialised: dm-devel@redhat.com
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
NET: Registered protocol family 5
RAMDISK: Compressed image found at block 0
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 312k init
Promise FastTrak TX 4310 Serieal Device Driver 2.6.0.0330 (Sep 01, 2006)
PRODUCT_VERSION SR1_1_5 Build_Time Mar 27 2008 17:11:22
Required extension size: max: 2061328 Min: 1554420
fasttrak 0000:00:10.0: Found FastTrak Controller with IRQ: 23
Required DMA safe size: max: 169992 Min: 6556
Required DMA safe size: max: 169992 Min: 6556
scsi0 : ftsata2
Vendor: Promise Model: 4 Disk RAID5 Rev: 1.10
Type: Direct-Access ANSI SCSI revision: 02
sda : very big device. try to use READ CAPACITY(16).
SCSI device sda: 5860182144 512-byte hdwr sectors (3000413 MB)
sda: asking for cache data failed
sda: assuming drive cache: write through
sda : very big device. try to use READ CAPACITY(16).
SCSI device sda: 5860182144 512-byte hdwr sectors (3000413 MB)
sda: asking for cache data failed
sda: assuming drive cache: write through
unknown partition table
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
fuse init (API version 7.8)
fuse distribution version: 2.7.4
kjournald starting. Commit interval 5 seconds
EXT3 FS on dm-0, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
eth0: MTU = 9000 (frame size=9014,truesize=9464)
fifo_tx_thr=100,1c0
fifo_tx_sp=10,25
fifo_tx_starve=80,1a0
fifo_tx_starve_shutoff=100,1c0
fifo_rx_alarm=100,40
fifo_rx_alarm_shutoff=80,20
fifo_rx_panic=180,60
fifo_rx_panic_shutoff=100,40
eth0: PHY is IP1001 (2430d90)
eth0: Full Duplex
eth0: Speed 1000BT
eth0: Link is up
eth0: Flow control is on
U-Boot:
U-Boot 1.1.3 (Promise u-boot 008) (Nov 15 2006 - 11:25:01) MPC83XX
Clock configuration:
Coherent System Bus: 266 MHz
Core: 399 MHz
Local Bus Controller: 266 MHz
Local Bus: 33 MHz
DDR: 266 MHz
I2C: 88 MHz
TSEC1: 266 MHz
TSEC2: 88 MHz
USB MPH: 0 MHz
USB DR: 0 MHz
CPU: MPC83xx, Rev: 11 at 399.999 MHz
Board: Promise Tech. MPC8343PT
I2C: ready
DRAM: Board ID: 0
SDRAM on Local Bus is NOT available!
sdram_init finish
DDR RAM: 128 MB
Prepare to enter post.
post_bootmode_init()...
post_run() ...Diagnostic Mode Disabled.
FLASH: 16 MB
PCI1 32bit on PMC1,PCI2 32bit on PMC2 & PMC3
00 0e 1033 0035 0c03 00
00 0e 1033 00e0 0c03 00
00 10 105a 3515 0104 0e
In: serial
Out: serial
Err: serial
Net: Freescale TSEC0: PHY is IP1001 detected, 1000BaseT Full duplex (2430d90)
Freescale TSEC0
Diagnostic Mode Disabled.
Hit any key to stop autoboot: 0
=> bdinfo
memstart = 0x00000000
memsize = 0x08000000
flashstart = 0xFE000000
flashsize = 0x01000000
flashoffset = 0x0002A000
sramstart = 0x00000000
sramsize = 0x00000000
bootflags = 0x00000001
intfreq = 399.999 MHz
busfreq = 266.666 MHz
ethaddr = 00:01:55:10:46:5E
IP addr = 10.0.2.1
baudrate = 115200 bps
=> pci
Scanning PCI devices on bus 0
BusDevFun VendorId DeviceId Device Class Sub-Class
_____________________________________________________________
00.00.00 0x1957 0x0087 Bridge device 0x80
00.0e.00 0x1033 0x0035 Serial bus controller 0x03
00.0e.01 0x1033 0x00e0 Serial bus controller 0x03
00.10.00 0x105a 0x3515 Mass storage controller 0x04
=> coninfo
List of available devices:
serial 80000003 SIO stdin stdout stderr
=> flinfo
Bank # 1: CFI compatible FLASH (16 port width with 16 chip width)
Command set is AMD/Fujitsu standard. Driver is polling DQ6 for status checking.
Size: 16 MB in 128 Sectors
Erase timeout 16384 ms, write timeout 1 ms, buffer write timeout 4096 ms, buffer size 32
Sector Start Addresses:
FE000000 (RO) FE020000 (RO) FE040000 (RO) FE060000 (RO) FE080000
FE0A0000 FE0C0000 FE0E0000 FE100000 FE120000
FE140000 FE160000 FE180000 FE1A0000 FE1C0000
FE1E0000 FE200000 FE220000 FE240000 FE260000
FE280000 FE2A0000 FE2C0000 FE2E0000 FE300000
FE320000 FE340000 FE360000 FE380000 FE3A0000
FE3C0000 FE3E0000 FE400000 FE420000 FE440000
FE460000 FE480000 FE4A0000 FE4C0000 FE4E0000
FE500000 FE520000 FE540000 FE560000 FE580000
FE5A0000 FE5C0000 FE5E0000 FE600000 FE620000
FE640000 FE660000 FE680000 FE6A0000 FE6C0000
FE6E0000 FE700000 FE720000 FE740000 FE760000
FE780000 FE7A0000 FE7C0000 FE7E0000 FE800000
FE820000 FE840000 FE860000 FE880000 FE8A0000
FE8C0000 FE8E0000 FE900000 FE920000 FE940000
FE960000 FE980000 FE9A0000 FE9C0000 FE9E0000
FEA00000 FEA20000 FEA40000 FEA60000 FEA80000
FEAA0000 FEAC0000 FEAE0000 FEB00000 FEB20000
FEB40000 FEB60000 FEB80000 FEBA0000 FEBC0000
FEBE0000 FEC00000 FEC20000 FEC40000 FEC60000
FEC80000 FECA0000 FECC0000 FECE0000 FED00000
FED20000 FED40000 FED60000 FED80000 FEDA0000
FEDC0000 FEDE0000 FEE00000 FEE20000 FEE40000
FEE60000 FEE80000 FEEA0000 FEEC0000 FEEE0000
FEF00000 FEF20000 FEF40000 FEF60000 FEF80000
FEFA0000 FEFC0000 FEFE0000
=> iprobe
Valid chip addresses: 2D 50
Excluded chip addresses: 69
I've got the openwrt buildroot from git, set it up how i think is reasonable with make menuconfig/make kernel_menuconfig, but now i'm stuck.
Here's my dumb ass question: How do i get from here to a working image?
EDIT: Words.
(Last edited by luffe48 on 15 Dec 2013, 18:29)