I have problems with a Promise NS4600 which seems to suffer from corruptions of its flash memory. For debugging, it's useful to be able to access the NS4600's serial port.
For this you have to get to the PCB: Remove the single screw that locks the black right cover in place, then slide the cover to the front. With the cover removed, loosen the 5 screws that hold the PCB in place. Lift the PCB up. The connectors to the harddisk backplane and the LED/button part on the front should part easily.
The signals are on a 4pin connector marked CN11 (2mm spacing, not 1/10"!). As I didn't have a compatible plug, I just soldered a 4-pin cable to the bottom of the PCB that goes through the small void in the cutout for the SATA port.
From chris' blog |
From chris' blog |
The port uses 3.3V levels and runs at the usual 115200 bps. Promise has chosen to use the u-boot bootloader. This is how a normal powerup of the device looks, up to the point where the linux-kernel takes over (output continues, I just stopped pasting). I'm using a FT232RL breakout board as a 3.3V serial port, but any other should do.
$ !cu cu -l ttyUSB0 -s115200 Connected. U-Boot 1.3.3 (NS4600 - 021) (May 26 2009 - 11:16:20) U-Boot code: FFF90000 -> FFFC8E17 data: 00070000 -> 00072993 BSS: 00072994 -> 00088CDB stack: 00088CDC -> 00098CDB malloc: 00098CDC -> 000DCCDC CPU Freq: 600 Mhz FSB Freq: 400 Mhz DRAM size: 256 MB DRAM Configuration: Bank #0: 00000000 256 MB Bank #1: 10000000 0 kB 00 01 8086 5023 0880 0b 00 02 8086 5024 0604 0b 02 00 105a 3f20 0104 0b 00 03 8086 5025 0604 0b 03 00 8086 5040 0200 0b 03 01 8086 5044 0200 0f 03 03 8086 503e ff00 00 03 07 8086 503c 1110 0b 03 08 8086 503d 0680 0b 03 09 8086 502c 0b40 0b 03 0a 8086 503f 0880 0b 03 0c 8086 5030 1101 0b 00 04 8086 5037 0604 00 00 0a 8086 5038 ff00 00 00 1d 8086 5033 0c03 0b 00 1d 8086 5035 0c03 0b 00 1f 8086 5031 0601 00 00 1f 8086 502b 0104 0f 00 1f 8086 5032 0c05 0f 00 1f 8086 5036 1101 07 In: serial Out: serial Err: serial I2C: Ready NAND: 128 MiB Net: e1000: 00:01:55:11:8a:76 1000 Mbs, Full Duplex Valid link established!!! GbE#0 Hit Ctrl + C to stop autoboot: 0 NAND read: device 0 offset 0xa20000, size 0x200000 Reading data from 0xc1f800 -- 100% complete. 2097152 bytes read: OK NAND read: device 0 offset 0xc20000, size 0x800000 Reading data from 0x141f800 -- 100% complete. 8388608 bytes read: OK ## Booting kernel from Legacy Image at 01100000 ... Image Name: linux Created: 2009-09-03 8:38:23 UTC Image Type: Intel x86 Linux Kernel Image (uncompressed) Data Size: 2014136 Bytes = 1.9 MB Load Address: 00500000 Entry Point: 00500040 Verifying Checksum ... OK Loading Kernel Image ... OK OK ## Loading init Ramdisk from Legacy Image at 01600000 ... Image Name: 02.01.0000.06 Created: 2009-12-31 2:57:40 UTC Image Type: Intel x86 Linux RAMDisk Image (gzip compressed) Data Size: 4792129 Bytes = 4.6 MB Load Address: 00900000 Entry Point: 00900040 Verifying Checksum ... OK Using boot protocol version 2.05 Linux kernel version 2.6.20.21-4600 (root@johnny) #32 PREEMPT Mon Aug 31 17:15:48 CST 2009 Initial RAM disk at linear address 0x01600040, size 4792129 bytes Kernel command line: "root=/dev/ram rw mtdparts=nand0:2048K(safe-k),8320K(safe-r),2048K(kernel),8192K(rootfs),16512K(usr),2048K(data),91776K(app) console=ttyS0,115200" Loading bzImage at address 0x00100000 (2008504 bytes) Starting kernel ...
No comments:
Post a Comment