• Авторизация


SC101T 18-09-2010 13:49 к комментариям - к полной версии - понравилось!



С давних пор лежит без дела такой девайс. Брал его как внешний накопитель для серьезной задачи, но, как на форуме производителя написал админ того форума, "его надо забыть, как страшный сон"


С другой стороны, я подумал - а может можно его перепрошить для чего полезного?
Google на эту тему промолчал, поэтому попробую сам.


Начал с того, что извлек плату контроллера из корпуса. Сфотографировал и разобрался, как подключить консоль.На скорую руку сделал переходник на мой usb-кабель:

 

[422x317]

Подключаюсь через Putty. Подобрал параметры настройки последовательного порта: 115200,8,N,1.
Итак, теперь посмотрю, что выдаст система при загрузке:

** LOADER **

** BOARD NAME: ZET_RDK036_DDR1_BE BE
** BOARD ID: 15

U-Boot 1.1.1 (Sep 18 2006 - 20:40:26)
=========== Cameo/Zetera Version: 0.0.7.2 ===========

DRAM CS[0] base 0x00000000 size 32MB
DRAM Total size 32MB
[4096kB@ffc00000] Flash: 4 MB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 4M): Done

Soc: MV88F5182 Rev 2
CPU: ARM926 (Rev 0) running @ 500Mhz
SysClock = 166Mhz , TClock = 166Mhz


Net: egiga0 [PRIME]
egiga0 no link
Using egiga0 device
Hit any key to stop autoboot: 0

Приостановил загрузку и посмотрел на встроенный help:

[more]Zetera> help

? - alias for 'help'
FSdel - del a file from the Flash MV FS
FSdir - ls the Flash MV FS
FSformat- format the Flash MV FS
FSlef - Load an exe file to the Flash MV FS
FSlf - Load a file to the Flash MV FS
FSrun - Load an exe file from the Flash MV FS and run it
FStftp - tftp a file to the Flash MV FS
FStftpe - tftp an exe file to the Flash MV FS
FStype - cat file from the Flash MV FS
base - print or set address offset
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootelf - Boot from an ELF image in memory
bootext2 dev:boot_part1,boot_part2 addr boot_image linux_dev_name
bootm - boot application image from memory
bootp - boot image via network using BootP/TFTP protocol
bootvx - Boot vxWorks from an ELF image
bubt - Burn an image on the Boot Flash.
chpart - change active partition
cmp - memory compare
cmpm - Compare Memory
cp - memory copy
cpumap - Display CPU memory mapping settings.
crc32 - checksum calculation
date - get/set/reset date & time
dclk - Display the MV device CLKs.
ddimm - Display SPD Dimm Info
dhcp - invoke DHCP client to obtain IP/boot params
diskboot- boot from IDE device
dma - Perform DMA
echo - echo args to console
eeprom - EEPROM sub-system
enaloop - Configure the Ethernet to run with Gibabit loop-back stub.
erase - erase FLASH memory
ext2load- load binary file from a Ext2 filesystem
ext2ls- list files in a directory (default /)
fi - Find value in the memory.
flinfo - print FLASH memory information
fsinfo - print information about filesystems
fsload - load binary file from a filesystem image
g - start application at cached address 'addr'(default addr 0x40000)
go - start application at address 'addr'
help - print online help
icrc32 - checksum calculation
ide - IDE sub-system
iloop - infinite loop on address range
imd - i2c memory display
imm - i2c memory modify (auto-incrementing)
imw - memory write (fill)
inm - memory modify (constant address)
iprobe - probe to discover valid I2C chip addresses
ir - reading and changing MV internal register values.
ln - Load S-Record executable file through the network interface.
loop - infinite loop on address range
ls - list files in a directory (default /)
map - Diasplay address decode windows
md - memory display
me - PCI master enable
mm - memory modify (auto-incrementing)
mp - map PCI BAR
mtest - simple RAM test
mw - memory write (fill)
nm - memory modify (constant address)
pci - list and access PCI Configuraton Space
phyRead - Read Phy register
phyWrite - Write Phy register
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
reset - Perform RESET of the CPU
resetenv - Return all environment variable to default.
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
se - PCI Slave enable
setenv - set environment variables
sg - scanning the PHYs status
sleep - delay execution for some time
sp - Scan PCI bus.
testall - Test all components.
testdram - Test dram.
testflash - Test flash memory.
testled - Test led. Type 'help testled' for usage
testpci - Test pci interface.
all - Test SATA interface.
tftpboot- boot image via network using TFTP protocol
version - print monitor version
zboot - Zetera boot command.
zbubt - Burn an microsan image on the Boot Flash.
Zetera>
[/more]

Теперь лог полной загрузки:


[more]Zetera>> reboot

syncing disks... done
unmounting file systems... done
rebooting...
 ** LOADER **
 **  BOARD NAME: ZET_RDK036_DDR1_BE BE 
 **  BOARD ID: 15
 
U-Boot 1.1.1 (Sep 18 2006 - 20:40:26)
=========== Cameo/Zetera Version: 0.0.7.2 ===========
 
DRAM CS[0] base 0x00000000   size  32MB 
DRAM Total size  32MB 
[4096kB@ffc00000] Flash:  4 MB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 4M): Done
 Soc: MV88F5182 Rev 2
CPU: ARM926 (Rev 0) running @ 500Mhz 
SysClock = 166Mhz , TClock = 166Mhz 
  Net:   egiga0 [PRIME]
egiga0 no link
Using egiga0 device
Hit any key to stop autoboot:  3  2  1  0 
Booting from flash ... 
 
>> Wasabi NetBSD/MVORION Gzip Boot, Revision 1.2
>> (briggs@tref.local, Wed Apr  5 21:32:02 EDT 2006)
>> RAM 0x0 - 0x1ffffff, heap at 0x140000
>> Load address: 0x200000, Image address 0xffc05be4
Uncompressing image...|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\done.
Jumping to image @ 0x200000...
physical_freeend 00200000, physical_freestart 00009000
 physical_freeend 001ee000, physical_freestart 00009000
 logical = 0043a000
 zmbuf pool initialized: PA 0x500000, VA 0xc0500000, len 0x300000
 zcluster pool initialized: PA 0x800000, VA 0xc0800000, len 0x800000
 Copyright (c) 2002, 2003, 2004, 2005
     Wasabi Systems, Inc.  All rights reserved.
 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
     The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.
  Wasabi NetBSD 3.99.5 (build.RDK036) #2: Fri May 11 23:29:51 UTC 2007
 rsharma@Rochak-Linux:/PROJECTS/release/Config-RDK036/obj/build.RDK036
 total memory = 32768 KB
 avail memory = 15680 KB
 Zetera special allocation mbpool/mclpool 0xc0435500/0xc043562c
 Zetera special allocation mbpool_cache/mclpool_cache 0xc04355e4/0xc04352a0
 mainbus0 (root)
 cpu0 at mainbus0: Marvell 1850 step A0 (Feroceon core)
 cpu0: WB enabled LABT
 cpu0: 32KB/32B 1-way Instruction cache
 cpu0: 32KB/32B 1-way write-back-locking-C Data cache
 mbus0 at mainbus0 base 0xf1020000 irq 0: AHB to MBUS Bridge
 mvwdog0 at mbus0: Watchdog Timer
 mvdevb0 at mbus0 target 1, irq 14: Device Bus
 com0 at mvdevb0 offset 0x2000, irq 3: ns16550a, working fifo
 com0: console
 stdflash1 at mvdevb0 BootCS: Onboard BootFlash
 stdflash1: 4 MB, 1 x 4 MB, CFI w/ AMD/Fujitsu std. cmd set
 flash1 at stdflash1 00000000-00390000, untranslated, read/write
 flash2 at stdflash1 00390000-00400000, untranslated, read-only
 mvtwsi0 at mvdevb0 offset 0x1000, irq 5: Two Wire Serial Interface
 mvtwsi0: I2C clocked at 94.696 Khz
 iic0 at mvtwsi0: I2C bus
 adt7463c0 at iic0 addr 0x2e ADT7463 thermal monitor and fan controller, addr: 2e
 mvgec0 at mbus0 target 7, irq 22: Gigabit Ethernet Global Controller
 gec0 at mvgec0 unit 0, irq 18: Gigabit Ethernet Controller, Unit 0
 gec0: MAC address: 00:1b:2f:2f:9b:04
 makphy0 at gec0 phy 8: Marvell 88E1111 Gigabit PHY, rev. 2
 makphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 mvpci0 at mbus0 target 3, irq 15: PCI Controller
 mvpci0: mode Conventional PCI, width 32 bits, speed 66MHz
 pci0 at mvpci0 bus 0
 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
 mvidma0 at mbus0 target 6, irq 24: IDMA Controller
 zmvsata0 at mbus0 target 8, irq 29: Sata Controller
 ************** sc->sc_base = 0xffe80000, SATAIntrIsr = 0xc0332a20
 hddInit(): device ID 0x0, sc_base 0x0xffe80000
 hddInit(): Probing.... Probing....
 hddInit(): GSata 0x0xffe80000, GPci 0x0xffe81d40, Gif 0x0xffe80c00, Gpio 0x0xffe904f0hddInit(): SATA-II Drive[1] PHY Present.
  hddInit(): Initializing....
 hdd_soft_reset: resetting...
  *** Drive 1 ***************************************************
 model    - WDC WD2500JS-00NCB1                    
 firmware - 10.02E02WDC WD2500JS-00NCB1                    
 serial   -      WD-WCANKD762324
 revision - 254:0
 ***************************************************************
  mvpci0: PCI Error Interrupt. Cause: 0x00000100
 mvpci0: Error Event 0x00000100 - Address: 0x00020000, Command: 0xa
 using EXT cmds...
 hddInit(): Disk[1] Ready...
 hdd_init: size of devInfo=594
 clock: hz=100 stathz=0 profhz=0
 md0: internal 128 KB image area
 boot device: <unknown>
 root on md0a dumps on md0b
 root file system type: ffs
 WARNING: CHECK AND RESET THE DATE!
  Wasabi Embedded Programming Environment
 Kshell debug console
  Copyright (c) 2002, 2003, 2005 Wasabi Systems, Inc.  All rights reserved.
  Zetera>> bypassCodeInit() : Initializing bypass code
 bypassCodeInit() : Allocating bypass code top memory pool
 bypassCodeInit() : Allocating bypass code sub memory pools
 bypassCodeInit() : Initializing bypass code functions
 Bypass Error Reset is Enabled
 errorHandler Done
 initNullStruct Done
 initIPCompare Done
 rx_ustack Done
 initFilterIP Done
 initDGCompare Done
 initFragManager Done
 bypassCodeInit() : Done initializing bypass code
  hddBPinit(): ...
 hddBPinit(): Starting BPproc
 hddBPinit(): BPproc Started
  usanInit() : Starting usan initialization...
    MicroSAN Version : 1.1.3
 Date : May 11 2007 (16:29:14)
 MicroSAN Signature : !*~5doi3jd71c0wq9101ta~*!
  2-Bay Desktop system
 ipAdd() : ip = 0.0.0.0        , anchor = 0x80000001, status = 1, ipType = 3
 ipAdd() : ip = 255.255.255.255, anchor = 0x80000001, status = 1, ipType = 1
  getMacAddr() : NIC[0] MAC Address : 0x1b2f2f9b04 : 0:1b:2f:2f:9b:4
  makphy_service() : setmedia
  *************** PHY STATUS ***************
     makphy_status() : Auto negotiating...
 mii_phy_statusmsg: mii_media_status=1
 mii_phy_statusmsg() : linkdown
 ipAdd() : ip = 0.0.0.0        , anchor = 0x80000001, status = 0, ipType = 3
 mii_phy_statusmsg: mii_media_status=1
 mii_phy_statusmsg() : linkdown
 +++++ No loopback connector
   Loopback cable not detected.
 restoreEthernetSettings...
  makphy_service() : setmedia
  *************** PHY STATUS ***************
     makphy_status() : Auto negotiating...
 mii_phy_statusmsg: mii_media_status=1
 mii_phy_statusmsg() : linkdown
  *************** PHY STATUS ***************
     makphy_status() : Auto negotiating...
     makphy_status() : 100BaseT
     makphy_status() : FULL DUPLEX
 ******************************************
  mii_phy_statusmsg: mii_media_status=3
 mii_phy_statusmsg() : linkup
  *************** PHY STATUS ***************
     makphy_status() : Auto negotiating...
     makphy_status() : 100BaseT
     makphy_status() : FULL DUPLEX
 ******************************************
  gec0: gec_watchdog(): device timeout (txfree 1023 txnext 1, txdirty 0)
 makphy_service() : setmedia
  *************** PHY STATUS ***************
     makphy_status() : Auto negotiating...
     makphy_status() : 100BaseT
     makphy_status() : FULL DUPLEX
 ******************************************
  mii_phy_statusmsg: mii_media_status=3
 mii_phy_statusmsg() : linkup
 PING 192.168.123.185: 1 iterations of 64 data bytes
 ipRemove() : ip = 0.0.0.0        
 setLeaseInfo() : NIC Index          = 00
                  Client ID          = MicroSAN Base[0]:00000000-0000-0000-0000-000000000000:1b2f2f9b04
                  HW Address         = 1b2f2f9b04
                  Old IP Addr        = 0.0.0.0
                  New IP Addr        = 192.168.123.185
                  Server IP          = 192.168.123.254
                  Old Net Mask       = 0.0.0.0
                  New Net Mask       = 255.255.255.0
                  Old Broadcast Addr = 0.0.0.0
                  New Broadcast Addr = 192.168.123.255
                  Lease time         = 259200
 ipConfig() : ip_addr_str = 192.168.123.185 bcast_addr = 192.168.123.255 net_mask = ffffff00
 ipAdd() : ip = 192.168.123.185, anchor = 0x80000001, status = 1, ipType = 3
 soft_reset_int_init() : Initializing soft reset interrupt.
  ********************************
  usanStart: root[0] not alive
  ********************************
  usanStart: initializing root[1]...
 setNicIndex() : Single NIC : iRootIdx = 1 nicIndex = 0
 check_context_status[1,0]: stored root chksm=f1aa
 check_context_status[1,0]: fw sequence number=6
 check_context_status[1,0]: context status comparison succeeded
 PING 192.168.123.189: 1 iterations of 64 data bytes
 setLeaseInfo() : NIC Index          = 00
                  Client ID          = Root[1]:32333234-0009-ad38-462b-000000000000:21b2f2f92a9
                  HW Address         = 21b2f2f92a9
                  Old IP Addr        = 0.0.0.0
                  New IP Addr        = 192.168.123.189
                  Server IP          = 192.168.123.254
                  Old Net Mask       = 255.255.255.0
                  New Net Mask       = 255.255.255.0
                  Old Broadcast Addr = 192.168.123.255
                  New Broadcast Addr = 192.168.123.255
                  Lease time         = 259200
 ipAdd() : ip = 192.168.123.189, anchor = 0xc0416ec8, status = 1, ipType = 3
 get_context: wChecksum=f1aa rootChecksum(0)=f1aa
 save_root_context(1): saving context...context 0 done...context 1 done
 usanStart() : root.partition = 0xc0416ec8, 0xc0417370
 usanStart() : root[1] initialized.
  ********************************
  ipAdd() : ip = 192.168.123.255, anchor = 0x80000001, status = 1, ipType = 1
 upnpd_init() : effffffa added to the socket m/c membership
 ipAdd() : ip = 239.255.255.250, anchor = 0x80000001, status = 1, ipType = 2
 ipAdd() : ip = 224.0.0.1      , anchor = 0x80000001, status = 1, ipType = 2
 SSDP task initialized
 usanInit(): Initialization complete
 Zmain(): usanInit() successful
 usanMain: MicroSAN task started
  usanHotswapTask
 hddIsDrivePresent: drive(0) not present.
  Zetera>> help
Available commands:
  cpuDumpRegs
 about
 help
 ddb
 mbufchk
 halt
 poweroff
 reboot
 shell
 dhclient
 ifconfig
 ping
 sendpkt
 setaddrs
 doflash
 tcpserver
 devShow
 rootShow
 partShow
 attribShow
 dhcpShow
 Z_TICKS
 Z_TICKS_PER_SEC
 resetDrive
 bpShow
 bpIPShow
 iostat
 perf_enable
 perf_read
 md
 mm
 checkloop
 debugReadAllocStatus
 passwordShow
 resolveName
 memShow
 phyRead
 driveLED
 setBusy
 partRead
 partWrite
 writeBadContext
 flushDiskCache
 reflash
 dumpErrorLog
 enableNCQ
 sataShow
 setDebugClass
 encShow
 test
  Zetera>>
[/more]

Теперь самое время проанализировать полученную информацию и можно ли использовать имеющийся загрузчик u-boot для загрузки своей ос.

 (запись будет дополнена)

вверх^ к полной версии понравилось! в evernote
Комментарии (9):
18-02-2015-03:57 удалить
Есть данный девайс. софт полное гавно.. с идиотским Z-SAN дровами. Немогли обычный нормальный ISCSI установить. Очень интересен результат.
18-02-2015-04:04 удалить
вот чтото по теме но я не въензжаю... http://wiki.openwrt.org/toh/netgear/sc101
a1addin 20-02-2015-20:18 удалить
Ответ на комментарий # там еще более унылый IDE-вариант
a1addin 20-02-2015-20:20 удалить
Ответ на комментарий # Результата видимо не будет, ибо есть много более нужного и интересного.
21-02-2015-16:48 удалить
Вот решение. Как его прикрутит мозгов не зватает http://gilesbathgate.com/2009/10/16/sc101t-linux-cluster/
a1addin 21-02-2015-17:07 удалить
Ответ на комментарий # Там чел прикрутил SC101T к своему Linux-у. На тех же zSAN-протоколах. zSAN меня не устраивает ни в каком виде: начмная с синих экранов на Windows-серверах и кончая бубном в линуксе.
21-02-2015-17:16 удалить
Как считаешь чисто аппаратно, данный девайс держит возможность прикрутить к нему стандартный iscsi таргет вместо zsan шняги? Или какой урезанный линух с nfs сервером. Или может перепрошить его в nas, например nas4free...
a1addin 21-02-2015-22:35 удалить
Ответ на комментарий # Были такие идеи... Однако, время не стоит на месте. Уже 3 года дома стоит Debian-сервер на Zyxel-e (см. http://www.liveinternet.ru/users/a1addin/post211473311/) при 7 Ваттах потребляемой мощности. И если посмотреть на железо SC101T, то его 32мб RAM и 4мб флэша отбивают всякое желание тратить на него свое время. Другими словами - железо слабое. Лучше забыть. Недавно на работе ставил Zyxel NSA-325 (уже с USB3.0) - за 90 евро чудесный девайс на 2 HDD и с отличным родным софтом. Это был последний гвоздь в крышку SC101T.
29-11-2018-23:51 удалить
Здравствуйте! Попался данный аппарат, пытаюсь подключиться консолью. Не осталось распайки разъема? Вы подключались обычной консолью или uart?


Комментарии (9): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник SC101T | a1addin - Письма себе | Лента друзей a1addin / Полная версия Добавить в друзья Страницы: раньше»