Bringing Open Source to the Neuf Box 4
Vous n'êtes pas identifié.
Ce post est un HOWTO mis à jour au fur et à mesure de l'avancée de nos travaux
Version du 2 août à 10:00
Avertissement
Ce qui est décrit par la suite et la simple description de ce que nous avons fait.
En aucun cas ni les auteurs, ni le forum neufbox4.org ne pourront être tenu pour responsable de modifications qui entraîneraient un blocage d'une unité.
Les personnes qui entreprendrons ces modifications sont supposées avoir un minimum de connaissances en Linux et comprendre ce qu'elles font sous leur seule responsabilité.
Contributeurs (ordre alphabétique):
cuagn
fxmx86
pinky60
SGDA
vousavezunmsg
Merci à ceux qui nous communiquerons remarques et correctifs.
Liens utiles :
Le forum OWRT sur le sujet est ICI à partir d'un post d'Eric Cooper
Le blog de Kyle Anderson ICI
On peut aussi consulter Hardware.fr ICI
Remarque : veillez à vous assurer du bon fonctionnement de vos DS en mode normal avant de commencer à la modifier. Nous avons au moins un cas d'une unité défectueuse et il vaut mieux s'en rendre compte avant de la trafiquer.
Rappel sur le hardware:
* 1 Mini-USB Seagate FreeAgent Dock Port (un port USB standard)
* 3 USB 2.0 Ports
* 1 Gigabit Ethernet Port
* External Power Brick en 12volts
* Reset (Restart) Button
* Power LED (en fait deux LED orange et verte qui indique des états)
* 128MB RAMF
* 256MB NAND (32MB root partition, 219MB mtdblock3 partition)
* Marvell Sheeva CPU, 1.2GHz 88F6281
* Proprietary UART serial port (uniquement accessible après ouverture)
Ne consomme que 3W (sans HDD branché), soit 3€/an en connexion permanente...
Le bootloader est U-Boot, dont le manuel synthétique est disponible ICI et la documentation de référence étant LA
Faut-il se connecter et s'enregistrer ?
Si l'on connecte la DockStar à Internet, elle va se mettre à jour et lancer une procédure d'enregistrement.
Ayant plusieurs exemplaires, j'en ai connecté un pour voir un peu PogoPlug et enregistrer la DockStar. Rien à dire., mais comme ce n'était pas le but, j'ai poursuivi ...
Le Firmware (pogoplug) est en version 2.1.2. (après MaJ)
Plusieurs auteurs insistent sur le fait de ne pas s'enregistrer et donc de ne pas avoir de mise à jour du FW.
En fait, j'ai procédé à cette opération qui n'a eu aucune conséquence sur la suite des opérations décrite.
L'enregistrement permet d'ouvrir un accès ssl avec un password particulier à partir du compte sur le site Pogoplug.
1 - Boîtier fermé
Rappel : ne pas connecter le boîtier à Internet pour éviter la mise à jour automatique si vos n'en voyez pas l'utilité.
Ce qui surprend c'est la petitesse de l'engin. (8,5 X 8,5 cm)
Accès Telnet @IP. Login = root/stxadmin
Pas de réaction à une tentative d'accès SSH.
(sauf si enregistré, on a demandé la création d'un accès SSH).
Dès lors on peut se connecter en root
login as: root
root@192.168.1.45's password:
-bash-3.2# ps
PID Uid VSZ Stat Command
1 root 3400 S init
2 root SW< [kthreadd]
3 root SWN [ksoftirqd/0]
4 root SW< [events/0]
5 root SW< [khelper]
46 root SW< [kblockd/0]
49 root SW< [khubd]
51 root SW< [kmmcd]
65 root SW [crypto]
66 root SW [crypto_ret]
71 root SW [pdflush]
72 root SW [pdflush]
73 root SW< [kswapd0]
74 root SW< [aio/0]
227 root SW< [mtdblockd]
228 root SW< [nftld]
262 root SW< [kcryptd/0]
315 root 3404 S udhcpc -b Pogoplug
318 root 3208 S ntpd -g
339 root SW< [xce]
340 root 1696 S /usr/local/cloudengines/bin/hbwd /usr/local/cloudengi
341 root 2672 S -sh
342 root 11412 S /usr/local/cloudengines/bin/hbplug
414 root 2100 S /usr/sbin/dropbear
423 root 2580 R /usr/sbin/dropbear
424 root 2676 S -bash
426 root 3404 R ps
-bash-3.2#Le boot dure environ 40 secondes entre le PWR ON et le ready.
2 - Boîtier ouvert
L'ouverture physique ne pose pas de problème.
Il y a 2 ergots sur chaque côté, et avec précaution, en forçant, le dessus se déboîte.
Le retrait de la partie supérieure, supprime le feuillard de blindage qui entoure l'unité. Cela peut entraîner des perturbation EMC de l'unité.
A noter aussi que le processeur chauffe beaucoup. Il faudrait peut-être le doter d'un radiateur, qui était en partie joué (à valider) par le feuillard. En revanche le boîtier étant ouvert, la dissipation thermique est meilleure...
Le Miniport usb est connecté par un câble qu'il vaut mieux débrancher.
Photo ICI
On se retrouve avec une jolie carte 8X8 cm, avec un ethernet et 4 USB (dont 1 via un connecteur).
Une LED orange/verte et un bouton de reset.
Un connecteur 2X5 broches véhicule (entre autres) un RX-TX en 3,3 volts.
Même adaptation à prévoir que pour la NB4.
(il faut un petit connecteur, pas simple à trouver, sauf pour les vieux de la vieille qui en ont plein les tiroirs, connecteurs issus de divers démontages)
Le connecteur 2X5 et les pins (2,4,6) utiles pour connecter le port série
+3.3
9 7 5 3 1
10 8 6 4 2
RX TX GNDLes tensions sont en 3.3V.
115200 Baud, 8N1, no handshake
Personnellement j'ai installé le port série pour avoir une log complète lors des manipulations.
Photo ICI
Bien évidemment on a un peu plus d'informations
U-Boot 1.1.4 (Jul 16 2009 - 21:02:16) Cloud Engines (3.4.16) U-Boot code: 00600000 -> 0067FFF0 BSS: -> 00690D60 Soc: 88F6281 A0 (DDR2) CPU running @ 1200Mhz L2 running @ 400Mhz SysClock = 400Mhz , TClock = 200Mhz DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6 DRAM CS[0] base 0x00000000 size 128MB DRAM Total size 128MB 16bit width Flash: 0 kB Addresses 8M - 0M are saved for the U-Boot usage. Mem malloc Initialization (8M - 7M): Done NAND:256 MB CPU : Marvell Feroceon (Rev 1) CLOUD ENGINES BOARD: REDSTONE:1.0 Streaming disabled Write allocate disabled USB 0: host mode PEX 0: interface detected no Link. Net: egiga0 [PRIME], egiga1 Hit any key to stop autoboot: 0 CE>>
Comme j'ai appuyé sur une touche, ça s'est arrêté.
La LED clignote en vert.
Que nous propose U-BOOT
CE>> ? ? - alias for 'help' base - print or set address offset boot - boot default, i.e., run 'bootcmd' bootd - boot default, i.e., run 'bootcmd' 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 bubt - Burn an image on the Boot Nand 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. dhcp - invoke DHCP client to obtain IP/boot params diskboot- boot from IDE device echo - echo args to console eeprom - EEPROM sub-system 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[.b, .s, .w, .l] - 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. 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 mtdparts- define flash/nand partitions mtest - simple RAM test mv_diag - perform board diagnostics mw - memory write (fill) nand - NAND sub-system nboot - boot from NAND device nbubt - Burn a boot loader image on the Boot Nand Flash. nm - memory modify (constant address) pci - list and access PCI Configuration Space phyRead - Read PCI-E Phy register pciePhyWrite - Write PCI-E Phy register 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 sflash - read, write or erase the external SPI Flash. sg - scanning the PHYs status sp - Scan PCI bus. tftpboot- boot image via network using TFTP protocol version - print monitor version
La log d'un boot
U-Boot 1.1.4 (Jul 16 2009 - 21:02:16) Cloud Engines (3.4.16)
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 00690D60
Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB 16bit width
Flash: 0 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:256 MB
CPU : Marvell Feroceon (Rev 1)
CLOUD ENGINES BOARD: REDSTONE:1.0
Streaming disabled
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net: egiga0 [PRIME], egiga1
Hit any key to stop autoboot: 3 2 1 0
NAND read: device 0 offset 0x100000, size 0x300000
Reading data from 0x100000 -- 0% complete.
...
Reading data from 0x3ff800 -- 100% complete.
3145728 bytes read: OK
## Booting image at 00800000 ...
Image Name: Linux-2.6.22.18
Created: 2009-08-31 23:31:05 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1976384 Bytes = 1.9 MB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux............................................................................................................................ done, booting the kernel.
[ 0.000000] Linux version 2.6.22.18 (bdietrich@brad-ux) (gcc version 4.2.1) #57 Mon Aug 31 16:31:01 PDT 2009
[ 0.000000] CPU: ARM926EJ-S [56251311] revision 1 (ARMv5TE), cr=00053177
[ 0.000000] Machine: Feroceon-KW
[ 0.000000] Using UBoot passing parameters structure
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] CPU0: D VIVT write-back cache
[ 0.000000] CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
[ 0.000000] CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
[ 0.000000] Built 1 zonelists. Total pages: 32512
[ 0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mtdblock2 ro
[ 0.000000] PID hash table entries: 512 (order: 9, 2048 bytes)
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 128MB 0MB 0MB 0MB = 128MB total
[ 0.000000] Memory: 125824KB available (3588K code, 252K data, 120K init)
[ 0.240000] Mount-cache hash table entries: 512
[ 0.240000] CPU: Testing write buffer coherency: ok
[ 0.240000] NET: Registered protocol family 16
[ 0.240000]
[ 0.240000] CPU Interface
[ 0.240000] -------------
[ 0.240000] SDRAM_CS0 ....base 00000000, size 128MB
[ 0.240000] SDRAM_CS1 ....disable
[ 0.240000] SDRAM_CS2 ....disable
[ 0.240000] SDRAM_CS3 ....disable
[ 0.240000] PEX0_MEM ....base e8000000, size 128MB
[ 0.240000] PEX0_IO ....base f2000000, size 1MB
[ 0.240000] INTER_REGS ....base f1000000, size 1MB
[ 0.240000] NFLASH_CS ....base fa000000, size 2MB
[ 0.240000] SPI_CS ....base f4000000, size 16MB
[ 0.240000] BOOT_ROM_CS ....no such
[ 0.240000] DEV_BOOTCS ....no such
[ 0.240000] CRYPT_ENG ....base f0000000, size 2MB
[ 0.240000]
[ 0.240000] Marvell Development Board (LSP Version KW_LSP_4.2.7_patch21_with_rx_desc_tuned)-- SHEEVA PLUG Soc: 88F6281 A0 LE
[ 0.240000]
[ 0.240000] Detected Tclk 200000000 and SysClk 400000000
[ 0.240000] MV Buttons Device Load
[ 0.240000] Marvell USB EHCI Host controller #0: c0537600
[ 0.740000] PEX0 interface detected no Link.
[ 0.740000] PCI: bus0: Fast back to back transfers enabled
[ 0.740000] SCSI subsystem initialized
[ 0.740000] usbcore: registered new interface driver usbfs
[ 0.740000] usbcore: registered new interface driver hub
[ 0.740000] usbcore: registered new device driver usb
[ 0.740000] NET: Registered protocol family 2
[ 0.750000] Time: kw_clocksource clocksource has been installed.
[ 0.840000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.840000] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.840000] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.840000] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.840000] TCP reno registered
[ 0.870000] RTC has been updated!!!
[ 0.870000] RTC registered
[ 0.870000] Use the XOR engines (acceleration) for enhancing the following functions:
[ 0.870000] o RAID 5 Xor calculation
[ 0.870000] o kernel memcpy
[ 0.870000] o kenrel memzero
[ 0.870000] Number of XOR engines to use: 4
[ 0.870000] cesadev_init(c00116b4)
[ 0.870000] mvCesaInit: sessions=640, queue=64, pSram=f0000000
[ 0.870000] MV Buttons Driver Load
[ 0.870000] squashfs: version 3.3 (2007/10/31) Phillip Lougher
[ 0.870000] squashfs: LZMA suppport for slax.org by jro
[ 0.870000] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.870000] io scheduler noop registered
[ 0.870000] io scheduler anticipatory registered (default)
[ 0.890000] Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
[ 0.890000] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[ 0.900000] serial8250.0: ttyS1 at MMIO 0xf1012100 (irq = 34) is a 16550A
[ 0.900000] RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
[ 0.910000] Loading Marvell Ethernet Driver:
[ 0.920000] o Cached descriptors in DRAM
[ 0.920000] o DRAM SW cache-coherency
[ 0.920000] o Single RX Queue support - ETH_DEF_RXQ=0
[ 0.930000] o Single TX Queue support - ETH_DEF_TXQ=0
[ 0.940000] o TCP segmentation offload enabled
[ 0.940000] o Receive checksum offload enabled
[ 0.940000] o Transmit checksum offload enabled
[ 0.950000] o Network Fast Processing (Routing) supported
[ 0.960000] o Driver ERROR statistics enabled
[ 0.960000] o Driver INFO statistics enabled
[ 0.960000] o Proc tool API enabled
[ 0.970000] o Rx descripors: q0=128
[ 0.970000] o Tx descripors: q0=532
[ 0.980000] o Loading network interface(s):
[ 0.980000] o eth0, ifindex = 1, GbE port = 0
[ 0.990000] o eth1, ifindex = 2, GbE port = 1
[ 0.990000]
[ 1.000000] mvFpRuleDb (c7ed5000): 1024 entries, 4096 bytes
[ 1.000000] Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
[ 1.010000] Copyright (c) 1999-2006 Intel Corporation.
[ 1.010000] e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
[ 1.020000] e100: Copyright(c) 1999-2006 Intel Corporation
[ 1.020000]
[ 1.020000] Warning Sata is Powered Off
[ 1.030000] NFTL driver: nftlcore.c $Revision: 1.98 $, nftlmount.c $Revision: 1.41 $
[ 1.040000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit)
[ 1.050000] Scanning device for bad blocks
[ 1.060000] Bad eraseblock 230 at 0x01cc0000
[ 1.070000] Bad eraseblock 299 at 0x02560000
[ 1.120000] Bad eraseblock 1161 at 0x09120000
[ 1.160000] Using static partition definition
[ 1.170000] Creating 4 MTD partitions on "nand_mtd":
[ 1.170000] 0x00000000-0x00100000 : "u-boot"
[ 1.180000] 0x00100000-0x00500000 : "uImage"
[ 1.180000] 0x00500000-0x02500000 : "root"
[ 1.190000] 0x02500000-0x10000000 : "data"
[ 1.190000] ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
[ 1.200000] ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
[ 1.230000] ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
[ 1.250000] ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
[ 1.250000] usb usb1: configuration #1 chosen from 1 choice
[ 1.260000] hub 1-0:1.0: USB hub found
[ 1.260000] hub 1-0:1.0: 1 port detected
[ 1.380000] USB Universal Host Controller Interface driver v3.0
[ 1.660000] usb 1-1: new high speed USB device using ehci_marvell and address 2
[ 1.810000] usb 1-1: configuration #1 chosen from 1 choice
[ 1.810000] hub 1-1:1.0: USB hub found
[ 1.820000] hub 1-1:1.0: 4 ports detected
[ 1.930000] usbcore: registered new interface driver usblp
[ 1.930000] drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
[ 1.940000] Initializing USB Mass Storage driver...
[ 1.940000] usbcore: registered new interface driver usb-storage
[ 1.950000] USB Mass Storage support registered.
[ 1.960000] mice: PS/2 mouse device common for all mice
[ 1.960000] i2c /dev entries driver
[ 1.960000] Linux telephony interface: v1.00
[ 1.970000] md: linear personality registered for level -1
[ 1.970000] md: raid0 personality registered for level 0
[ 1.980000] md: raid1 personality registered for level 1
[ 2.150000] raid6: int32x1 97 MB/s
[ 2.320000] raid6: int32x2 114 MB/s
[ 2.490000] raid6: int32x4 122 MB/s
[ 2.660000] raid6: int32x8 110 MB/s
[ 2.660000] raid6: using algorithm int32x4 (122 MB/s)
[ 2.660000] md: raid6 personality registered for level 6
[ 2.670000] md: raid5 personality registered for level 5
[ 2.670000] md: raid4 personality registered for level 4
[ 2.680000] raid5: measuring checksumming speed
[ 2.730000] arm4regs : 1084.000 MB/sec
[ 2.780000] 8regs : 754.800 MB/sec
[ 2.830000] 32regs : 890.400 MB/sec
[ 2.830000] raid5: using function: arm4regs (1084.000 MB/sec)
[ 2.840000] device-mapper: ioctl: 4.11.0-ioctl (2006-10-12) initialised: dm-devel@redhat.com
[ 2.840000] dm_crypt using the OCF package.
[ 2.850000] sdhci: Secure Digital Host Controller Interface driver
[ 2.850000] sdhci: Copyright(c) Pierre Ossman
[ 2.860000] usbcore: registered new interface driver usbhid
[ 2.860000] drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
[ 2.870000] TCP cubic registered
[ 2.870000] NET: Registered protocol family 1
[ 2.880000] NET: Registered protocol family 17
[ 2.880000] md: Autodetecting RAID arrays.
[ 2.890000] md: autorun ...
[ 2.890000] md: ... autorun DONE.
[ 4.870000] Empty flash at 0x00de8e44 ends at 0x00de9000
[ 8.550000] VFS: Mounted root (jffs2 filesystem) readonly.
[ 8.560000] Freeing init memory: 120K
init started: BusyBox v1.7.0 (2008-02-26 19:25:17 IST)
starting pid 269, tty '': '/etc/init.d/rcS'
[ 10.660000] eth0: link down
[ 10.670000] eth0: started
udhcpc (v1.7.0) started
HWADDR 00 0x10 0x75 0x1a 0x1f 0x12
PIP0 31
PIP1 18
Sending discover...
[ 12.290000] eth0: link up, full duplex, speed 100 Mbps
Sending discover...
Sending select for 192.168.1.45...
Lease of 192.168.1.45 obtained, lease time 86400
HWADDR 00 0x10 0x75 0x1a 0x1f 0x12
PIP0 31
PIP1 18
eth0 Link encap:Ethernet HWaddr 00:10:75:1A:1F:12
inet addr:192.168.1.45 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:532
RX bytes:744 (744.0 B) TX bytes:1180 (1.1 KiB)
Interrupt:11
eth0:0 Link encap:Ethernet HWaddr 00:10:75:1A:1F:12
inet addr:169.254.31.18 Bcast:169.254.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:11
Loading fs modules: [ 14.810000] fuse init (API version 7.8)
Success
[ 15.290000] ufsd: module license 'Commercial product' taints kernel.
[ 15.460000] ufsd: driver 8.1 (011_A) LBD=ON with ioctl loaded at bf040000
[ 15.460000] NTFS read/write support included
[ 15.460000] Hfs+/HfsX read/write support included
Loading tun.ko: [ 15.490000] tun: Universal TUN/TAP device driver, 1.6
[ 15.500000] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
Success
Loading xce.ko: [ 15.530000] Cloud Engines XCE Init [Version: 2.0.5.10]
[ 15.540000] XCE: CPU MEMORY MAP:
[ 15.540000] XCE: -- 0x00001000 - 0xbeffffff (3055 MB) User Space Mappings
[ 15.550000] XCE: -- 0xbf000000 - 0xbfffffff ( 16 MB) Kernel module space
[ 15.550000] XCE: -- 0xc0000000 - 0xc7ffffff ( 128 MB) Kernel direct-mapped ram
[ 15.560000] XCE: -- 0xc8800000 - 0xe7ffffff ( 504 MB) Kernel vmalloc space
[ 15.570000] XCE: -- 0xe8000000 - 0xfeffffff ( 367 MB) Kernel platform space
[ 15.570000] XCE: CPU FEATURES:
[ 15.580000] XCE: -- I Cache: enabled
[ 15.580000] XCE: -- D Cache: enabled
[ 15.590000] XCE: -- Branch Predict: enabled
[ 15.590000] XCE: -- MMU: enabled
[ 15.600000] XCE: -- Alignment Abort: enabled
[ 15.600000] XCE: -- ICache Prefetch: enabled
[ 15.600000] XCE: -- DCache Prefetch: enabled
[ 15.610000] XCE: -- L2 Cache: enabled
[ 15.610000] XCE: -- L2 Prefetch: disabled
[ 15.620000] XCE: -- L2 Writethrough: disabled
[ 15.620000] XCE: -- Write Allocate: disabled
[ 15.630000] XCE: -- Streaming: disabled
[ 15.630000] XCE: BLPARAMS: reading 2048 bytes @ a0000
[ 15.640000] XCE: Loaded Property Size: 2048
[ 15.640000] XCE: - 'cesvcid' -> 'AS67WP3UY2YQ6LSM7HFLXJXKME'
[ 15.650000] XCE: - 'ceserialno' -> '2GEP08A1'
[ 15.650000] XCE: - 'ceboardver' -> 'REDSTONE:1.0'
[ 15.660000] XCE: Current GPIO State:
[ 15.660000] XCE: GPIO L OUT: 0xeff00000
[ 15.670000] XCE: GPIO L OE: 0xefffffff
[ 15.670000] XCE: GPIO L BLINK: 0x00000000
[ 15.670000] XCE: GPIO L POL: 0x00000000
[ 15.680000] XCE: GPIO L IN: 0xeff00080
[ 15.680000] XCE: GPIO H OUT: 0xfffeffff
[ 15.690000] XCE: GPIO H OE: 0xfffc3fff
[ 15.690000] XCE: GPIO H BLINK: 0x00000000
[ 15.700000] XCE: GPIO H POL: 0x00000000
[ 15.700000] XCE: GPIO H IN: 0x0002fffd
[ 15.700000] XCE: Kernel thread starting PID: 339
Success
Starting hbplug: Success
starting pid 341, tty '': '/bin/sh'
-sh-3.2# [ 17.110000] XCE: BLPARAMS: reading 2048 bytes @ a0000
[ 17.120000] XCE: BLPARAMS: reading 2048 bytes @ a0800
[ 17.120000] XCE: BLPARAMS: reading 2048 bytes @ a1000
[ 17.130000] XCE: BLPARAMS: reading 2048 bytes @ a1800
[ 22.660000] XCE: XCE: LED -> CONNECTED
-sh-3.2#Que nous propose busybox ?
-bash-3.2# busybox
BusyBox v1.7.0 (2008-02-26 19:25:17 IST) multi-call binary
Copyright (C) 1998-2006 Erik Andersen, Rob Landley, and others.
Licensed under GPLv2. See source distribution for full notice.
Usage: busybox [function] [arguments]...
or: [function] [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as!
Currently defined functions:
[, [[, addgroup, adduser, adjtimex, ar, arp, arping, ash,
awk, basename, bunzip2, bzcat, cal, cat, catv, chattr,
chgrp, chmod, chown, chpasswd, chpst, chroot, chrt, chvt,
cksum, clear, cmp, comm, cp, cpio, crond, crontab, cryptpw,
cut, date, dc, dd, deallocvt, delgroup, deluser, df, dhcprelay,
diff, dirname, dmesg, dnsd, dos2unix, du, dumpkmap, dumpleases,
echo, ed, egrep, eject, env, envdir, envuidgid, ether-wake,
expand, expr, fakeidentd, false, fbset, fdflush, fdformat,
fdisk, fgrep, find, fold, free, freeramdisk, fsck, fsck.minix,
ftpget, ftpput, fuser, getopt, getty, grep, gunzip, gzip,
halt, hdparm, head, hexdump, hostid, hostname, httpd,
hwclock, id, ifconfig, ifdown, ifup, inetd, init, insmod,
install, ip, ipaddr, ipcalc, ipcrm, ipcs, iplink, iproute,
iprule, iptunnel, kill, killall, killall5, klogd, last,
length, less, linux32, linux64, linuxrc, ln, loadfont,
loadkmap, logger, login, logname, logread, losetup, ls,
lsattr, lsmod, lzmacat, makedevs, md5sum, mdev, mesg,
mkdir, mkfifo, mkfs.minix, mknod, mkswap, mktemp, modprobe,
more, mount, mountpoint, mt, mv, nameif, nc, netstat,
nice, nmeter, nohup, nslookup, od, openvt, passwd, patch,
pidof, ping, ping6, pipe_progress, pivot_root, poweroff,
printenv, printf, ps, pscan, pwd, raidautorun, rdate,
readahead, readlink, readprofile, realpath, reboot, renice,
reset, resize, rm, rmdir, rmmod, route, rpm, rpm2cpio,
run-parts, runlevel, runsv, runsvdir, rx, sed, seq, setarch,
setconsole, setkeycodes, setlogcons, setsid, setuidgid,
sh, sha1sum, slattach, sleep, softlimit, sort, split,
start-stop-daemon, stat, strings, stty, su, sulogin, sum,
sv, svlogd, swapoff, swapon, switch_root, sync, sysctl,
syslogd, tail, tar, taskset, tcpsvd, tee, telnet, telnetd,
test, tftp, time, top, touch, tr, traceroute, true, tty,
ttysize, udhcpc, udhcpd, udpsvd, umount, uname, uncompress,
unexpand, uniq, unix2dos, unlzma, unzip, uptime, usleep,
uudecode, uuencode, vconfig, vi, vlock, watch, watchdog,
wc, wget, which, who, whoami, xargs, yes, zcat, zcip3 - Sauvegarder le firmware d'origine
Référence : ICI pour la sauvegarde du FW d'origine.
Il faut avoir une clé USB formatée ext2 (marche aussi en fat32)
AVANT LE MONTAGE DE LA CLE USB -bash-3.2# mount rootfs on / type rootfs (rw) /dev/root on / type jffs2 (ro) none on /proc type proc (rw) none on /sys type sysfs (rw) none on /dev/pts type devpts (rw) none on /tmp type tmpfs (rw) APRES LE MONTAGE DE LA CLE -bash-3.2# mount rootfs on / type rootfs (rw) /dev/root on / type jffs2 (ro) none on /proc type proc (rw) none on /sys type sysfs (rw) none on /dev/pts type devpts (rw) none on /tmp type tmpfs (rw) /tmp/.cemnt/sda1 on /tmp/.cemnt/mnt_sda1 type ext2 (rw,nosuid,nodev,noexec,noatime) -bash-3.2# cat /proc/mtd dev: size erasesize name mtd0: 00100000 00020000 "u-boot" mtd1: 00400000 00020000 "uImage" mtd2: 02000000 00020000 "root" mtd3: 0db00000 00020000 "data" -bash-3.2# cd /tmp/.cemnt/mnt_sda1 -bash-3.2# mkdir Backup -bash-3.2# cd Backup -bash-3.2# dd if=/dev/mtd0 of=mtd0.img 2048+0 records in 2048+0 records out -bash-3.2# sha1sum mtd0.img>mtd0.img.sha1 -bash-3.2# dd if=/dev/mtd1 of=mtd1.img 8192+0 records in 8192+0 records out -bash-3.2# sha1sum mtd1.img>mtd1.img.sha1 -bash-3.2# dd if=/dev/mtd2 of=mtd2.img 65536+0 records in 65536+0 records out -bash-3.2# sha1sum mtd2.img>mtd2.img.sha1 -bash-3.2# dd if=/dev/mtd3 of=mtd3.img 448512+0 records in 448512+0 records out -bash-3.2# sha1sum mtd3.img>mtd3.img.sha1 -bash-3.2# ls -l -rw-r--r-- 1 root root 1048576 Jul 23 19:35 mtd0.img -rw-r--r-- 1 root root 51 Jul 23 19:39 mtd0.img.sha1 -rw-r--r-- 1 root root 4194304 Jul 23 19:40 mtd1.img -rw-r--r-- 1 root root 51 Jul 23 19:40 mtd1.img.sha1 -rw-r--r-- 1 root root 33554432 Jul 23 19:40 mtd2.img -rw-r--r-- 1 root root 51 Jul 23 19:41 mtd2.img.sha1 -rw-r--r-- 1 root root 229638144 Jul 23 19:42 mtd3.img -rw-r--r-- 1 root root 51 Jul 23 19:43 mtd3.img.sha1 -bash-3.2#
4 - Installer Openwrt selon la méthode Eric Cooper
Référence : ICI
Il faut suivre la méthode proposée Eric Cooper.
L'auteur propose des images toutes faites d'OpenWrt pour éviter de construire les images (kernel et rootfs).
Il explique toutefois comment faire pour générer ces images.
Il faut donc récupérer 2 images et un programme et les mettre sur une clé USB en ext2.
Adresse des deux images :
http://www.cs.cmu.edu/~ecc/download/dockstar-uImage
http://www.cs.cmu.edu/~ecc/download/dockstar-rootfs
Adresse du programme
http://plugapps.com/os/pogoplug/uboot/blparam
A toutes fins utiles, j'ai mis blparam exécutable un peu partout...
Qui peut le plus peut le moins...
-bash-3.2# ls -l -rwxrwxrwx 1 1000 1000 14168 Jul 24 2010 blparam -rw-r--r-- 1 1000 1000 1966080 Jul 24 2010 dockstar-rootfs -rw-r--r-- 1 1000 1000 917504 Jul 24 2010 dockstar-uImage drwx------ 2 1000 1000 16384 Jul 23 2010 lost+found
Démonter la clé USB de votre station Linux
Puis relancer (reset ou Pwr off/on) la DockStar sans que la clé soit insérée
-bash-3.2# killall -9 hbwd
-bash-3.2# killall -9 hbplug
INSERER LA CLE SUR LA DOCKSTAR ET LA MONTER
-bash-3.2# mount /dev/sda1 /mnt
-bash-3.2# cd /mnt
-bash-3.2# ls -l
-rwxrwxrwx 1 1000 1000 14168 Jul 24 2010 blparam
-rw-r--r-- 1 1000 1000 1966080 Jul 24 2010 dockstar-rootfs
-rw-r--r-- 1 1000 1000 917504 Jul 24 2010 dockstar-uImage
drwx------ 2 1000 1000 16384 Jul 23 2010 lost+found
-bash-3.2# ./blparam arcNumber=2097
MTD: /dev/mtd0
type: 4
flags: 0x400
size: 1048576
erase size: 131072
write size: 2048
oob size: 64
-- Adding parameter 'arcNumber=2097'
-- Writing parameter 'baudrate=115200'
-- Writing parameter 'loads_echo=0'
-- Writing parameter 'ipaddr=169.254.254.253'
-- Writing parameter 'serverip=169.254.254.254'
-- Writing parameter 'rootpath=/mnt/ARM_FS/'
-- Writing parameter 'netmask=255.255.0.0'
-- Writing parameter 'run_diag=yes'
-- Writing parameter 'console=console=ttyS0,115200'
-- Writing parameter 'CASset=min'
-- Writing parameter 'MALLOC_len=1'
-- Writing parameter 'ethprime=egiga0'
-- Writing parameter 'bootargs_root=root=/dev/mtdblock2 ro'
-- Writing parameter 'ethmtu=1500'
-- Writing parameter 'usb0Mode=host'
-- Writing parameter 'nandEcc=1bit'
-- Writing parameter 'ethact=egiga0'
-- Writing parameter 'stdin=serial'
-- Writing parameter 'stdout=serial'
-- Writing parameter 'stderr=serial'
-- Writing parameter 'mainlineLinux=no'
-- Writing parameter 'enaMonExt=no'
-- Writing parameter 'enaCpuStream=no'
-- Writing parameter 'enaWrAllo=no'
-- Writing parameter 'pexMode=RC'
-- Writing parameter 'disL2Cache=no'
-- Writing parameter 'setL2CacheWT=yes'
-- Writing parameter 'disL2Prefetch=yes'
-- Writing parameter 'enaICPref=yes'
-- Writing parameter 'enaDCPref=yes'
-- Writing parameter 'sata_dma_mode=yes'
-- Writing parameter 'netbsd_en=no'
-- Writing parameter 'vxworks_en=no'
-- Writing parameter 'bootdelay=3'
-- Writing parameter 'disaMvPnp=no'
-- Writing parameter 'ethaddr=00:10:75:1A:1F:12'
-- Writing parameter 'cesvcid=AS67WP3UY2YQ6LSM7HFLXJXKME'
-- Writing parameter 'ceserialno=2GEP08A1'
-- Writing parameter 'ceboardver=REDSTONE:1.0'
-- Writing parameter 'bootcmd=nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root); bootm 0x800000'
-- Writing parameter 'arcNumber=2097'
Erasing 128 kb @ 0xa0000
Writing 2048 kb @ 0xbf800
***
*** BOOT LOADER PARAMETERS CHANGED -- REBOOT NECESSARY TO TAKE EFFECT!
***
-bash-3.2# ./blparam mainlineLinux=yes
MTD: /dev/mtd0
type: 4
flags: 0x400
size: 1048576
erase size: 131072
write size: 2048
oob size: 64
-- Removing parameter 'mainlineLinux' from 'no' because 'mainlineLinux=yes'
-- Adding parameter 'mainlineLinux=yes'
-- Writing parameter 'baudrate=115200'
-- Writing parameter 'loads_echo=0'
-- Writing parameter 'ipaddr=169.254.254.253'
-- Writing parameter 'serverip=169.254.254.254'
-- Writing parameter 'rootpath=/mnt/ARM_FS/'
-- Writing parameter 'netmask=255.255.0.0'
-- Writing parameter 'run_diag=yes'
-- Writing parameter 'console=console=ttyS0,115200'
-- Writing parameter 'CASset=min'
-- Writing parameter 'MALLOC_len=1'
-- Writing parameter 'ethprime=egiga0'
-- Writing parameter 'bootargs_root=root=/dev/mtdblock2 ro'
-- Writing parameter 'ethmtu=1500'
-- Writing parameter 'usb0Mode=host'
-- Writing parameter 'nandEcc=1bit'
-- Writing parameter 'ethact=egiga0'
-- Writing parameter 'stdin=serial'
-- Writing parameter 'stdout=serial'
-- Writing parameter 'stderr=serial'
-- Writing parameter 'enaMonExt=no'
-- Writing parameter 'enaCpuStream=no'
-- Writing parameter 'enaWrAllo=no'
-- Writing parameter 'pexMode=RC'
-- Writing parameter 'disL2Cache=no'
-- Writing parameter 'setL2CacheWT=yes'
-- Writing parameter 'disL2Prefetch=yes'
-- Writing parameter 'enaICPref=yes'
-- Writing parameter 'enaDCPref=yes'
-- Writing parameter 'sata_dma_mode=yes'
-- Writing parameter 'netbsd_en=no'
-- Writing parameter 'vxworks_en=no'
-- Writing parameter 'bootdelay=3'
-- Writing parameter 'disaMvPnp=no'
-- Writing parameter 'ethaddr=00:10:75:1A:1F:12'
-- Writing parameter 'cesvcid=AS67WP3UY2YQ6LSM7HFLXJXKME'
-- Writing parameter 'ceserialno=2GEP08A1'
-- Writing parameter 'ceboardver=REDSTONE:1.0'
-- Writing parameter 'bootcmd=nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root); bootm 0x800000'
-- Writing parameter 'arcNumber=2097'
-- Writing parameter 'mainlineLinux=yes'
Erasing 128 kb @ 0xa0000
Writing 2048 kb @ 0xbf800
***
*** BOOT LOADER PARAMETERS CHANGED -- REBOOT NECESSARY TO TAKE EFFECT!
***
-bash-3.2# flash_eraseall /dev/mtd1
Erasing 128 Kibyte @ 3e0000 -- 96 % complete.
-bash-3.2# nandwrite /dev/mtd1 dockstar-uImage
Writing data to block 0
Writing data to block 20000
Writing data to block 40000
Writing data to block 60000
Writing data to block 80000
Writing data to block a0000
Writing data to block c0000
-bash-3.2# flash_eraseall /dev/mtd2
Erasing 128 Kibyte @ 17a0000 -- 73 % complete.
Skipping bad block at 0x017c0000
Erasing 128 Kibyte @ 1fe0000 -- 99 % complete.
-bash-3.2# nandwrite /dev/mtd2 dockstar-rootfs
Writing data to block 0
Writing data to block 20000
Writing data to block 40000
Writing data to block 60000
Writing data to block 80000
Writing data to block a0000
Writing data to block c0000
Writing data to block e0000
Writing data to block 100000
Writing data to block 120000
Writing data to block 140000
Writing data to block 160000
Writing data to block 180000
Writing data to block 1a0000
Writing data to block 1c0000
-bash-3.2# flash_eraseall /dev/mtd3
flash_eraseall: /dev/mtd3: Read-only file systemIl y a donc un doute qui subsiste "Skipping bad block at 0x017c0000"
Il est impossible d'effacer mtd3 qui est RO...
Mais l'auteur nous dit "It's OK if this step fails with a "read-only filesystem" error. "
On peut donc rebooter après avoir fait un "busybox halt"
Et là, bonne nouvelle sur le port série :
U-Boot 1.1.4 (Jul 16 2009 - 21:02:16) Cloud Engines (3.4.16)
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 00690D60
Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB 16bit width
Flash: 0 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:256 MB
CPU : Marvell Feroceon (Rev 1)
CLOUD ENGINES BOARD: REDSTONE:1.0
Streaming disabled
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net: egiga0 [PRIME], egiga1
Hit any key to stop autoboot: 0
NAND read: device 0 offset 0x100000, size 0x300000
Reading data from 0x3ff800 -- 100% complete.
3145728 bytes read: OK
## Booting image at 00800000 ...
Image Name: Linux-2.6.30.10
Created: 2010-07-20 14:53:40 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 902996 Bytes = 881.8 kB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.30.10 (ecc@stratocaster) (gcc version 4.4.4 (GCC) ) #4 Tue Jul 20 10:53:37 EDT 2010
CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Seagate DockStar
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: console=ttyS0,115200 root=/dev/mtdblock2 ro
NR_IRQS:114
PID hash table entries: 512 (order: 9, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 127260KB available (2224K code, 193K data, 84K init, 0K highmem)
Calibrating delay loop... 1192.75 BogoMIPS (lpj=5963776)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 296 bytes
NET: Registered protocol family 16
Kirkwood: MV88F6281-A0, TCLK=200000000.
Feroceon L2: Enabling L2
Feroceon L2: Cache support initialised.
Kirkwood: Gating clock using mask 0x1ac224
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 248
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
console [ttyS0] enabled
Driver 'sd' needs updating - please use bus_type methods
MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth smi: probed
net eth0: port 0 with MAC address 00:10:75:1a:1f:12
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit )
Scanning device for bad blocks
Bad eraseblock 230 at 0x000001cc0000
Bad eraseblock 299 at 0x000002560000
Bad eraseblock 1161 at 0x000009120000
Creating 4 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000000000-0x000000100000 : "u-boot"
0x000000100000-0x000000500000 : "uImage"
0x000000500000-0x000002500000 : "rootfs"
0x000002500000-0x000010000000 : "rootfs_data"
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
orion-ehci orion-ehci.0: Marvell Orion EHCI
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
usb 1-1: new high speed USB device using orion-ehci and address 2
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
rtc-mv rtc-mv: internal RTC not ticking
i2c /dev entries driver
cpuidle: using governor ladder
TCP cubic registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
Freeing init memory: 84K
Please be patient, while OpenWrt loads ...
- preinit -
Press the [f] key and hit [enter] to enter failsafe mode
- regular preinit -
switching to jffs2
mini_fo: using base directory: /
mini_fo: using storage directory: /overlay
- init -
Please press Enter to activate this console. RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Registered led device: dockstar:green:health
Registered led device: dockstar:orange:misc
eth0: link up, 100 Mb/s, full duplex, flow control disabled
BusyBox v1.16.2 (2010-07-19 18:04:50 EDT) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (bleeding edge, r22294) ------------------
* 10 oz Vodka Shake well with ice and strain
* 10 oz Triple sec mixture into 10 shot glasses.
* 10 oz lime juice Salute!
---------------------------------------------------
root@OpenWrt:/#Il apparaît (merci SGDA car je n'avais pas vu) qu'il y a des blocs avec problème (est-ce la suite du "Skipping bad block at 0x017c0000"?). Pas très clair, mais l'installation semble correcte malgré cela. Je suppose que c'est propre (si j'ose dire) à mon unité... ![]()
Que propose le busybox ?
root@OpenWrt:/# busybox
BusyBox v1.16.2 (2010-07-19 18:04:50 EDT) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.
Usage: busybox [function] [arguments]...
or: function [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as.
Currently defined functions:
[, [[, arping, ash, awk, basename, blkid, brctl, bunzip2, bzcat, cat,
chgrp, chmod, chown, chroot, clear, cp, crond, crontab, cut, date, dd,
df, diff, dirname, dmesg, du, echo, egrep, env, expr, false, fgrep,
find, free, grep, gunzip, gzip, halt, head, hexdump, hostid, hwclock,
id, ifconfig, init, insmod, kill, killall, killall5, klogd, length,
less, ln, lock, logger, logread, ls, lsmod, md5sum, mesg, mkdir,
mkfifo, mknod, mkswap, mktemp, mount, mv, nc, netmsg, netstat, nice,
nslookup, passwd, pgrep, pidof, ping, ping6, pivot_root, pkill,
poweroff, printf, ps, pwd, rdate, reboot, reset, rm, rmdir, rmmod,
route, sed, seq, sh, sleep, sort, start-stop-daemon, strings, swapoff,
swapon, switch_root, sync, sysctl, syslogd, tail, tar, tee, telnet,
telnetd, test, time, top, touch, tr, traceroute, true, udhcpc, umount,
uname, uniq, uptime, vconfig, vi, watchdog, wc, wget, which, xargs,
yes, zcatUn peu moins riche que le busybox d'origine, mais version dernier cri.
Il n'y a plus d'accès ssh, seulement du telnet sans password de base.
Installer ssh si vous le souhaitez depuisvotre accès root en telnet.
Un boot (reset) prend 25 secondes.
Pour la fin, une image de la mire obtenue en accès http (password admin)
Et voilà OpenWrt installé.
Reste maintenant à l'adapter à nos besoins...
5 - Installer Openwrt selon la méthode Kyle Anderson
Voila ce que j'ai fait pour flasher un DS avec Backfire, comme XKyle mais sans port série. En fait, comme Backfire n'utilise pas en standard le même partitionnement MTD, il faut passer par un kernel intermédiaire permettant de le modifier.
1°/ Depuis Pogoplug initial (@IP en DHCP à voir dans les stats DHCP box) :
Telnet @IP. Login = root/stxadmin
./blparam arcNumber=2097
./blparam mainlineLinux=yes
./blparam bootargs_root=root=/dev/mtdblock2 rootfstype=jffs2 panic=10
cd /tmp
wget http://xkyle.com/packages/openwrt-kirkw … ge-ramroot
dd if=openwrt-kirkwood-uImage-ramroot of=dockstar-uImage bs=128k conv=sync
flash_eraseall /dev/mtd1
nandwrite /dev/mtd1 dockstar-uImage
reboot
2°/ Depuis Openwrt intermédiaire (@IP en 192.168.1.1) :
/etc/init.d/dnsmasq stop
udhcpc -i br-lan
cat /proc/partitions
mkdir /target
mtd erase mtd2
mount /dev/mtdblock2 /target -t jffs2
cd /target
wget http://downloads.openwrt.org/backfire/1 … rootfs.tgz
tar xzvpf openwrt-kirkwood-rootfs.tgz
#rm openwrt-kirkwood-rootfs.tgz
cd ..
umount /target
cd /tmp
wget http://downloads.openwrt.org/backfire/1 … ood-uImage
opkg update
opkg -dest ram install coreutils-dd
/tmp/usr/bin/dd if=openwrt-kirkwood-uImage of=dockstar-uImage bs=128k conv=sync
opkg -dest ram install mtd-utils
/tmp/usr/sbin/flash_eraseall /dev/mtd1
/tmp/usr/sbin/nandwrite /dev/mtd1 dockstar-uImage
reboot
6 - Générer soi-même les images OpenWrt backfire
Récupérons la branche backfire (10.03)
/owrt-ds$ svn co svn://svn.openwrt.org/openwrt/branches/backfire Révision 22411 extraite.
Dans le répertoire backfire, lancer make menuconfig afin de sélectionner la configuration souhaitée
Je n'ai pas trouvé USB EHCI, ni luci , ni le client ntp ...
Si quelqu'un a une idée, sinon on verra plus tard....
/owrt-ds/backfire$ make menuconfig
Warning! Found recursive dependency: PACKAGE_kmod-mac80211 PACKAGE_hostapd PACKAGE_crda PACKAGE_kmod-mac80211
#
# using defaults found in .config
#
*** End of OpenWrt configuration.
*** Execute 'make' to build the OpenWrt or try 'make help'.
CONFIGURATION SELECTIONNEE
Target System ---> ...............................................Marvell Kirkwood
Target Images --->
[*] squashfs
Kernel modules --->
Block Devices --->
--- kmod-scsi-core.......................................... SCSI device support │ │
<*> kmod-scsi-generic........................... Kernel support for SCSI generic
Filesystems --->
<*> kmod-fs-ext2......................................... EXT2 filesystem support
Sound Support --->
<*> kmod-sound-core................................................ Sound support │ │
<*> kmod-sound-cs5535audio............................. CS5535 PCI Controller │ │
<*> kmod-sound-i8x0................. Intel/SiS/nVidia/AMD/ALi AC97 Controller │ │
<*> kmod-sound-soc-core.................................... SoC sound support
USB Support --->
<*> kmod-usb-audio............................. Support for USB audio devices │ │
<*> kmod-usb-serial..................... Support for USB-to-Serial converters │ │
<*> kmod-usb-serial-ftdi.......................... Support for FTDI devices │ │
--- kmod-usb-storage..................................... USB Storage support │ │
<*> kmod-usb-storage-extras.................... Extra drivers for usb-storage │ │
<*> kmod-usb2................................... Support for USB2 controllersIl faut lancer une construction initiale par un make
/owrt-ds/backfire$ make make[1] world make[2] target/compile make[3] -C target/linux compile make[2] package/cleanup make[2] package/compile make[3] -C package/base-files compile make[3] -C package/busybox compile make[3] -C package/dnsmasq compile make[3] -C package/dropbear compile make[3] -C package/libtool host-compile make[3] -C package/libtool compile make[3] -C package/iptables compile make[3] -C package/firewall compile make[3] -C package/hotplug2 compile make[3] -C package/kernel compile make[3] -C package/mtd compile make[3] -C package/opkg compile make[3] -C package/linux-atm compile make[3] -C package/libpcap compile make[3] -C package/ppp compile make[3] -C package/lua compile make[3] -C package/uci compile make[3] -C package/udevtrigger compile make[2] package/install make[3] -C package/base-files install make[3] -C package/busybox install make[3] -C package/dnsmasq install make[3] -C package/dropbear install make[3] -C package/firewall install make[3] -C package/hotplug2 install make[3] -C package/iptables install make[3] -C package/kernel install make[3] -C package/mtd install make[3] -C package/opkg install make[3] -C package/ppp install make[3] -C package/uci install make[3] -C package/udevtrigger install make[2] package/rootfs-prepare make[3] package/preconfig make[2] target/install make[3] -C target/linux install make[2] package/index
Il faut ensuite patcher, car la mémoire NAND et les LEDS sont différentes dans DockStar, et la convention de nommage est à modifier.
/owrt-ds/backfire$ patch -p1 < dockstar.patch patching file build_dir/linux-kirkwood/linux-2.6.30.10/arch/arm/mach-kirkwood/sheevaplug-setup.c
Le patch est téléchargeable ICI
--- a/build_dir/linux-kirkwood/linux-2.6.30.10/arch/arm/mach-kirkwood/sheevaplug-setup.c
+++ b/build_dir/linux-kirkwood/linux-2.6.30.10/arch/arm/mach-kirkwood/sheevaplug-setup.c
@@ -37,6 +37,10 @@
}, {
.name = "rootfs",
.offset = MTDPART_OFS_NXTBLK,
+ .size = SZ_32M
+ }, {
+ .name = "rootfs_data",
+ .offset = MTDPART_OFS_NXTBLK,
.size = MTDPART_SIZ_FULL
},
};
@@ -77,9 +81,15 @@
static struct gpio_led sheevaplug_led_pins[] = {
{
- .name = "plug:green:health",
+ .name = "dockstar:green:health",
.default_trigger = "default-on",
- .gpio = 49,
+ .gpio = 46, /* green */
+ .active_low = 1,
+ },
+ {
+ .name = "dockstar:orange:misc",
+ .default_trigger = "none",
+ .gpio = 47, /* orange */
.active_low = 1,
},
};
@@ -99,7 +109,8 @@
static unsigned int sheevaplug_mpp_config[] __initdata = {
MPP29_GPIO, /* USB Power Enable */
- MPP49_GPIO, /* LED */
+ MPP46_GPIO, /* LED green */
+ MPP47_GPIO, /* LED orange */
0
};De nouveau, relancer un make.
/owrt-ds/backfire$ make ++ mkdir -p /home/alarme/Desktop/owrt-ds/backfire/staging_dir/toolchain-arm_v5te_gcc-4.3.3+cs_uClibc-0.9.30.1_eabi ++ cd /home/alarme/Desktop/owrt-ds/backfire/staging_dir/toolchain-arm_v5te_gcc-4.3.3+cs_uClibc-0.9.30.1_eabi ++ mkdir -p stamp lib usr/include usr/lib make[4]: Entering directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux' make[5]: Entering directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux/kirkwood' make[6]: Entering directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux/kirkwood/image' make[6]: Leaving directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux/kirkwood/image' make[5]: Leaving directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux/kirkwood' make[4]: Leaving directory `/home/alarme/Desktop/owrt-ds/backfire/target/linux' make[1] world make[2] target/compile make[3] -C target/linux compile make[2] package/cleanup make[2] package/compile make[3] -C package/base-files compile make[3] -C package/busybox compile make[3] -C package/dnsmasq compile make[3] -C package/dropbear compile make[3] -C package/libtool host-compile make[3] -C package/libtool compile make[3] -C package/iptables compile make[3] -C package/firewall compile make[3] -C package/hotplug2 compile make[3] -C package/kernel compile make[3] -C package/mtd compile make[3] -C package/opkg compile make[3] -C package/linux-atm compile make[3] -C package/libpcap compile make[3] -C package/ppp compile make[3] -C package/lua compile make[3] -C package/uci compile make[3] -C package/udevtrigger compile make[2] package/install make[3] -C package/base-files install make[3] -C package/busybox install make[3] -C package/dnsmasq install make[3] -C package/dropbear install make[3] -C package/firewall install make[3] -C package/hotplug2 install make[3] -C package/iptables install make[3] -C package/kernel install make[3] -C package/mtd install make[3] -C package/opkg install make[3] -C package/ppp install make[3] -C package/uci install make[3] -C package/udevtrigger install make[2] package/rootfs-prepare make[3] package/preconfig make[2] target/install make[3] -C target/linux install make[2] package/index
Nous avons alors les binaires nécessaires, le kernel et le rootfs que l'on retrouve
/bin/kirkwood/openwrt-kirkwood-uImage
/build_dir/linux-kirkwood/base-files/root.squashfs
Il faut cependant en faire des images dont la taille sera un multiple de 128K et que pour ma part, j'installe dans un répertoire /images.
Copions d'abord les deux binaires depuis l'environnement owrt
/owrt-ds/images$ ls -l total 2008 -rw-r--r-- 1 alarme alarme 864944 jui 29 18:30 openwrt-kirkwood-uImage -rwx------ 1 alarme alarme 1179648 jui 29 18:30 root.squashfs /owrt-ds/images$ dd if=openwrt-kirkwood-uImage of=uImage bs=128k conv=sync 6+1 enregistrements lus 7+0 enregistrements écrits 917504 bytes (918 kB) copied, 0,00717326 s, 128 MB/s /owrt-ds/images$ dd if=root.squashfs of=squashfs bs=128k conv=sync 9+0 enregistrements lus 9+0 enregistrements écrits 1179648 bytes (1,2 MB) copied, 0,00900254 s, 131 MB/s /owrt-ds/images$ ls -l total 4064 -rw-r--r-- 1 alarme alarme 864944 jui 29 18:30 openwrt-kirkwood-uImage -rwx------ 1 alarme alarme 1179648 jui 29 18:30 root.squashfs -rw-r--r-- 1 alarme alarme 1179648 jui 29 21:18 squashfs -rw-r--r-- 1 alarme alarme 917504 jui 29 21:17 uImage alarme@aspire-1350:~/Desktop/owrt-ds/images$
Nous disposons des deux binaires uImage et squashfs utiles pour l'installation, selon diverses méthodes.
8 - Installation Openwrt par tftp
(en cours)
8 - Script d'initialisation
fxmx86 nous propose un script (adaptable) pour une post-configuration de l'installation réalisée. Un fil spécial, est accessible ICI
Après l'installation/la MAJ d'OpenWrt sur le DS, il est très pratique de pouvoir (re)jouer un script pour l'initialiser suivant ces besoins.
Voici le script que j'utilise et que j'essayerais de maintenir au fil des découvertes des nouvelles fonctionnalités à ajouter au DockStar.
A adapter suivant vos besoins :
#!/bin/sh
# Script pour finalisation Install DockStar par fxmx86
# initialisation
opkg update
opkg install luci
/etc/init.d/uhttpd enable
/etc/init.d/uhttpd start
# Réseau
cat > /etc/config/network << EOT
config interface loopback
option ifname lo
option proto static
option ipaddr 127.0.0.1
option netmask 255.0.0.0
config interface lan
option ifname eth0
option proto static
option ipaddr 192.168.1.2
option netmask 255.255.255.0
option gateway 192.168.1.1
option dns 192.168.1.1
option type bridge
option defaultroute 0
option peerdns 0
EOT
# Date
cat > /etc/config/system << EOT
config system
option hostname DockStar
option zonename Europe/Paris
option timezone CET-1CEST,M3.5.0,M10.5.0/3
config rdate
list server ac-ntp0.net.cmu.edu
list server ac-ntp1.net.cmu.edu
list server tick.greyware.com
list server ntp.xs4all.nl
list server ptbtime1.ptb.de
list server ptbtime2.ptb.de
list server ptbtime3.ptb.de
list server cudns.cit.cornell.edu
EOT
# serveur samba
opkg install samba-server
cat > /etc/samba/smb.conf << EOT
[global]
syslog = 0
syslog only = yes
workgroup = OpenWrt
server string = OpenWrt Samba Server
security = share
encrypt passwords = yes
guest account = root
local master = yes
name resolve order = lmhosts hosts bcast
[owrt]
comment = Disque OpenWRT
path = /
browseable = yes
writable = yes
public = yes
[datas]
comment = Datas OpenWRT
path = /datas
browseable = yes
writable = yes
public = yes
EOT
echo 127.0.0.1 DockStar >> /etc/hosts
/etc/init.d/samba enable
/etc/init.d/samba start
# Automount USB vfat
opkg install kmod-usb-storage
opkg install kmod-usb2
opkg install kmod-fs-vfat
opkg install kmod-nls-cp437
opkg install kmod-nls-iso8859-1
opkg install block-hotplug
cat >> /etc/config/fstab << EOT
config mount
option enabled 1
option device /dev/sda1
option target /datas
option fstype vfat
option options noatime,sync
EOT
sed -i "s/echo '\# /#echo '\#/" /etc/init.d/fstab
# explication : http://wiki.openwrt.org/doc/uci/fstab
/etc/init.d/fstab enable
/etc/init.d/fstab start
# Leds si patch kernel
# infos dans /sys/class/leds
opkg install kmod-leds-gpio
grep -q "config led" /etc/config/system || {
cat >> /etc/config/system << EOT
config led
option sysfs 'dockstar:green:health'
option trigger netdev
option dev eth0
option mode 'link tx rx'
config led
option sysfs 'dockstar:orange:misc'
option trigger nand-disk
EOT
}
# mpd et carte son USB
opkg install alsa-lib
opkg install kmod-usb-audio
opkg install kmod-input-core
opkg install mpd
opkg install mdnsresponder
opkg install libffmpeg
opkg install libspeex
rebootHors ligne
Bravo.. en attendant de faire aussi bien
Hors ligne
Premier problème
-bash-3.2# ls -l drwxr-xr-x 2 root root 4096 Jul 23 19:43 Backup -rwxr--r-- 1 root root 14168 Jul 23 16:18 blparam -rwxr--r-- 1 root root 1966080 Jul 23 16:18 dockstar-rootfs -rwxr--r-- 1 root root 917504 Jul 23 16:18 dockstar-uImage drwx------ 2 root root 16384 Jul 23 16:16 lost+found -bash-3.2# -bash-3.2# killall -9 hbwd -bash-3.2# killall -9 hbplug -bash-3.2# ./blparam arcNumber=2097 -bash: ./blparam: Permission denied
Bon je vais me coucher...
CORRIGE - Voir Post de synthèse au début
Hors ligne
Je ne suis pas sur que tu puisses faire cela, vu que tu t'es déjà activé et donc que tu as procédé à la MAJ...
Maintenant tu dois normalement passé par u-boot, cf "Installation using a serial cable", non ?
Je ne sais pas si cela peut aider mais il est dit "If the USB drive is removed while running, the next boot might hang. If it does hang, power cycle to reboot and it should boot into the default Pogoplug firmware." ici :
http://www.plugapps.com/index.php5?titl … ug_Setboot
A+
Hors ligne
La MaJ semble ne jouer que pour le SSH ... (à valider)
Je me contente de suivre la marche suivante :
http://www.cs.cmu.edu/~ecc/dockstar-howto.html
Et jusqu'à la tentative d'exécution du blparam tout est OK.
Mon blparam doit être foireux pour une raison ou une autre...
Sinon, en effet il restera u-boot, tftp ...![]()
Hors ligne
Il faut bien suivre le mode d'emploi ...
et ne pas avoir l'USB montée avant ![]()
Voir le premier post mis à jour.
Mais j'ai un imprévu lors de la MaJ de la flash
-bash-3.2# flash_eraseall /dev/mtd1 Erasing 128 Kibyte @ 3e0000 -- 96 % complete. -bash-3.2# nandwrite /dev/mtd1 dockstar-uImage Writing data to block 0 Writing data to block 20000 Writing data to block 40000 Writing data to block 60000 Writing data to block 80000 Writing data to block a0000 Writing data to block c0000 -bash-3.2# flash_eraseall /dev/mtd2 Erasing 128 Kibyte @ 17a0000 -- 73 % complete. Skipping bad block at 0x017c0000 Erasing 128 Kibyte @ 1fe0000 -- 99 % complete. -bash-3.2# nandwrite /dev/mtd1 dockstar-rootfs Writing data to block 0 pwrite: Input/output error Data did not fit into device, due to bad blocks : Illegal seek
Zut, j'ai un bloc foireux !
Ou bien une erreur de frappe mtd1 au lieu de mtd2 en plus du bad block !!
Quelle tare!
![]()
CORRIGE - Voir Post de synthèse au début
Hors ligne
on reprend...
login as: root root@192.168.1.45's password: -bash-3.2# -bash-3.2# cd /mnt -bash-3.2# ls -l -rwxrwxrwx 1 1000 1000 14168 Jul 24 07:46 blparam -rw-r--r-- 1 1000 1000 1966080 Jul 24 07:47 dockstar-rootfs -rw-r--r-- 1 1000 1000 917504 Jul 24 07:45 dockstar-uImage drwx------ 2 1000 1000 16384 Jul 23 16:16 lost+found -bash-3.2# flash_eraseall /dev/mtd1 Erasing 128 Kibyte @ 3e0000 -- 96 % complete. -bash-3.2# nandwrite /dev/mtd1 dockstar-uImage Writing data to block 0 Writing data to block 20000 Writing data to block 40000 Writing data to block 60000 Writing data to block 80000 Writing data to block a0000 Writing data to block c0000 -bash-3.2# flash_eraseall /dev/mtd2 Erasing 128 Kibyte @ 17a0000 -- 73 % complete. Skipping bad block at 0x017c0000 Erasing 128 Kibyte @ 1fe0000 -- 99 % complete. -bash-3.2# nandwrite /dev/mtd2 dockstar-rootfs Writing data to block 0 Writing data to block 20000 Writing data to block 40000 Writing data to block 60000 Writing data to block 80000 Writing data to block a0000 Writing data to block c0000 Writing data to block e0000 Writing data to block 100000 Writing data to block 120000 Writing data to block 140000 Writing data to block 160000 Writing data to block 180000 Writing data to block 1a0000 Writing data to block 1c0000 -bash-3.2# flash_eraseall /dev/mtd3 flash_eraseall: /dev/mtd3: Read-only file system
Doute qui subsiste "Skipping bad block at 0x017c0000"
Maintenant impossible d'effacer mtd3 qui est RO...
Faut le rendre RW ou bien ne rien faire ?
L'auteur nous dit "It's OK if this step fails with a "read-only filesystem" error. "
???
Je vais donc rebooter avec ce problème qui demeure...
C'est Ok - Voir Post de synthèse au début
Hors ligne
Youpi !
Serial port
U-Boot 1.1.4 (Jul 16 2009 - 21:02:16) Cloud Engines (3.4.16)
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 00690D60
Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB 16bit width
Flash: 0 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:256 MB
CPU : Marvell Feroceon (Rev 1)
CLOUD ENGINES BOARD: REDSTONE:1.0
Streaming disabled
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net: egiga0 [PRIME], egiga1
Hit any key to stop autoboot: 0
NAND read: device 0 offset 0x100000, size 0x300000
Reading data from 0x3ff800 -- 100% complete.
3145728 bytes read: OK
## Booting image at 00800000 ...
Image Name: Linux-2.6.30.10
Created: 2010-07-20 14:53:40 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 902996 Bytes = 881.8 kB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.30.10 (ecc@stratocaster) (gcc version 4.4.4 (GCC) ) #4 Tue Jul 20 10:53:37 EDT 2010
CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Seagate DockStar
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: console=ttyS0,115200 root=/dev/mtdblock2 ro
NR_IRQS:114
PID hash table entries: 512 (order: 9, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 127260KB available (2224K code, 193K data, 84K init, 0K highmem)
Calibrating delay loop... 1192.75 BogoMIPS (lpj=5963776)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 296 bytes
NET: Registered protocol family 16
Kirkwood: MV88F6281-A0, TCLK=200000000.
Feroceon L2: Enabling L2
Feroceon L2: Cache support initialised.
Kirkwood: Gating clock using mask 0x1ac224
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 248
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
console [ttyS0] enabled
Driver 'sd' needs updating - please use bus_type methods
MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth smi: probed
net eth0: port 0 with MAC address 00:10:75:1a:1f:12
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit )
Scanning device for bad blocks
Bad eraseblock 230 at 0x000001cc0000
Bad eraseblock 299 at 0x000002560000
Bad eraseblock 1161 at 0x000009120000
Creating 4 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000000000-0x000000100000 : "u-boot"
0x000000100000-0x000000500000 : "uImage"
0x000000500000-0x000002500000 : "rootfs"
0x000002500000-0x000010000000 : "rootfs_data"
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
orion-ehci orion-ehci.0: Marvell Orion EHCI
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
usb 1-1: new high speed USB device using orion-ehci and address 2
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
rtc-mv rtc-mv: internal RTC not ticking
i2c /dev entries driver
cpuidle: using governor ladder
TCP cubic registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
Freeing init memory: 84K
Please be patient, while OpenWrt loads ...
- preinit -
Press the [f] key and hit [enter] to enter failsafe mode
- regular preinit -
switching to jffs2
mini_fo: using base directory: /
mini_fo: using storage directory: /overlay
- init -
Please press Enter to activate this console. RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Registered led device: dockstar:green:health
Registered led device: dockstar:orange:misc
eth0: link up, 100 Mb/s, full duplex, flow control disabled
BusyBox v1.16.2 (2010-07-19 18:04:50 EDT) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (bleeding edge, r22294) ------------------
* 10 oz Vodka Shake well with ice and strain
* 10 oz Triple sec mixture into 10 shot glasses.
* 10 oz lime juice Salute!
---------------------------------------------------
root@OpenWrt:/#Busybox moins riche
root@OpenWrt:/# busybox
BusyBox v1.16.2 (2010-07-19 18:04:50 EDT) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.
Usage: busybox [function] [arguments]...
or: function [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as.
Currently defined functions:
[, [[, arping, ash, awk, basename, blkid, brctl, bunzip2, bzcat, cat,
chgrp, chmod, chown, chroot, clear, cp, crond, crontab, cut, date, dd,
df, diff, dirname, dmesg, du, echo, egrep, env, expr, false, fgrep,
find, free, grep, gunzip, gzip, halt, head, hexdump, hostid, hwclock,
id, ifconfig, init, insmod, kill, killall, killall5, klogd, length,
less, ln, lock, logger, logread, ls, lsmod, md5sum, mesg, mkdir,
mkfifo, mknod, mkswap, mktemp, mount, mv, nc, netmsg, netstat, nice,
nslookup, passwd, pgrep, pidof, ping, ping6, pivot_root, pkill,
poweroff, printf, ps, pwd, rdate, reboot, reset, rm, rmdir, rmmod,
route, sed, seq, sh, sleep, sort, start-stop-daemon, strings, swapoff,
swapon, switch_root, sync, sysctl, syslogd, tail, tar, tee, telnet,
telnetd, test, time, top, touch, tr, traceroute, true, udhcpc, umount,
uname, uniq, uptime, vconfig, vi, watchdog, wc, wget, which, xargs,
yes, zcatPlus d'accès ssh seulement telnet.
Voir Post de synthèse au début
Hors ligne
Et voilà (là le MdP est "admin")
![]()
Voir Post de synthèse au début
Hors ligne
Félicitations
3 blocks de perdus ?
Bad eraseblock 230 at 0x000001cc0000
Bad eraseblock 299 at 0x000002560000
Bad eraseblock 1161 at 0x000009120000
Hors ligne
SGDA a écrit:
Bad eraseblock 230 at 0x000001cc0000
Bad eraseblock 299 at 0x000002560000
Bad eraseblock 1161 at 0x000009120000
En effet, je n'avais pas vu.
Merci
Mais cela ne semble pas gêner outre mesure ...
Enfin, à étudier. ![]()
Hors ligne
J'ai récupéré le mien hier soir, je vais faire la même manip que toi ce soir, je pense. Je vais rapidement essayer d'en faire un petit lecteur MPD avec ma carte son USB, vu que je n'ai pas réussi sur la NB4 en 2.x...
Donc au final, le fait d'avoir activé le Dockstar n'a pas posé de pb et ne t'impose pas non plus l'utilisation du port série ?
Amuses-toi bien !
Hors ligne
Non, l'enregistrement n'a en rien gêné la suite des opérations.
Au contraire, mais vérifie, car sans enregistrement, il n'y a pas d'accès SSH / TELNET possible, alors que l'enregistrement permet d'ouvrir SSH et de définir le password.
Donc tu vas pouvoir échapper au port série. ![]()
Que je préfère toutefois installer pour avoir une log complète de ce qui se passe dans certaines situations. C'est un choix.
Les deux images fournies sont bien pratiques pour éviter de devoir les générer sous OpenWrt.
Bref c'est assez simple lorsque l'on ne s'écarte pas du mode d'emploi proposé par l'auteur (et revu dans le post de tête).
Reste à jouer avec OpenWrt, et là je compte bien sur tes conseils pour ouvrir un paragraphe 5.![]()
Hors ligne
Merci pour tes explications détaillées, cela m'a facilité les choses !
Bon, c'est parti pour une MAJ vers OWRT (Durée estimée 15') :
1°/ Débrancher l'ADSL de sa box après avoir récupérer les 2 fichiers OWRT (kernel et rootfs) de Eric Cooper. Comme cela, pas de MAJ du Dockstar.
2°/ Brancher le Dockstar et récupérer son @IP dans les stats DHCP de la box (NB4 ?).
3°/ Telnet @IP. Login = root/stxadmin
4°/ Si besoin, sauvegarde sur clé USB (Fat32 OK). Cf point 3 - Sauvegarder le firmware d'origine du tuto de CUAGN.
5°/ Passage en OWRT : Cf point 4 - Installer Openwrt.
C'est vraiment très facile et quasi immédiat ! Après install, il reste plus de 100 Mo de ram et plus de Mo de Flash pour des prgs et données.
Le joujou est très mignon et ne consomme que 3W (+ 3W avec un HDD) ! Si, si !
PS : de mon côté, seulement un badblock sur mtd3 (et formatage OK). Pour info, ssh est déjà installé, Marc, il suffit juste de se connecter une fois en telnet et de faire "passwd" pour définir un PWD et activer SSH.
Hors ligne
fxmx86 a écrit:
...
Pour info, ssh est déjà installé, Marc, il suffit juste de se connecter une fois en telnet et de faire "passwd" pour définir un PWD et activer SSH.
Une fois sous OWRT ? Je suis d'accord.
Mon doute c'est sur la DS en PogoPlug: a-t-on un telnet ? Ca n'avait pas marché de mon côté. Faudra mieux tester sur une unité "non touchée".
Les 100 MO de RAM vont bien m'aider pour les pb de Logs domotique...
A+![]()
Hors ligne
cuagn a écrit:
Mon doute c'est sur la DS en PogoPlug: a-t-on un telnet ? Ca n'avait pas marché de mon côté. Faudra mieux tester sur une unité "non touchée".
Oui, oui, c'est OK sur le DS non modifié, accès telnet direct avec root/stxadmin.
Je suis en train de faire des petits scripts pour installer les packages nécessaires à l'automount, à mpd, ...
PS : pourquoi "Une" DS ?
Hors ligne
fxmx86 a écrit:
...
PS : pourquoi "Une" DS ?
DockStar en français moi je la voit au féminin...![]()
EDIT : à moins que tu vise l'aspect quantitatif. Il aurait fallu écrire une première DS du groupe...
Hors ligne
Pour ne pas imposer ma vision, dites moi tous le genre de DOCKSTAR en français.
Masculin ou féminin ?
Je corrigerai le Howto de synthèse ....
De même signalez moi les oublis ou les corrections à apporter.![]()
Hors ligne
Sur le connecteur série quelle est la broche avec le 3.3 V?
J'ai un adaptateur passif
Hors ligne
SGDA a écrit:
Sur le connecteur série quelle est la broche avec le 3.3 V?
J'ai un adaptateur passif
Je vais voir d'un coup de contrôleur dans la matinée.
Peut-être la 8 ou sinon la 3 dirais-je dans une pure inspiration technique et logique....
Hors ligne
Tout faux.
C'est la PIN 1 qui a un 3.3V qui ne semble pas être un signal.
Hors ligne
Merci...pas facile de passer du connecteur en ligne des NB4 à cette config
(fil volant je pense)
Hors ligne
vousavezunmsg a écrit:
Reçu mon pack de 3 de chez RDC.
J'attaque ce soir, j'ai hâte de voir ce qu'il a dans le ventre ce CPU Kirkwood 1.2Ghz.
Je pense lui faire un serveur de webcam 720P+ Motion.
Eventuellement un peu de FFMpeg pour transcoder des fichiers video en backgroud voir ce qu'il a dans le ventre.
Ouh là, même si la conso est faible, la puissance est aussi assez faible. Je pense que les 1.2 GHz de cet ARM doivent être équivalent à un PII 400 environ, alors faire du transcodage risque d'être un peu long. Tu nous diras les perfs que tu obtiens. ![]()
Edit : Je viens de faire un petit test de débit réseau avec samba 2 et le débit semble suffisant pour saturer mes petits 100 Mb/s puisque j'atteins 70 Mb/s environ en transférant 95 Mo en moins de 11 s. Pas mal quand même !
Le wifi 54 Mb/s de la NB4, lui, n'atteint que env 20 Mb/s...
Dernière modification par fxmx86 (26/07/2010 11:07:26)
Hors ligne
SGDA a écrit:
Merci...pas facile de passer du connecteur en ligne des NB4 à cette config
(fil volant je pense)
Pour ma part, le convertisseur USB étant alimenté par le PC afin d'avoir la liaison disponible dès le PWR ON du DS, je n'ai pas ce problème, n'ayant besoin que des PINS en ligne (2,4,6).
D'autant que si j'ai un tas de connecteurs en ligne (récup de démontage de magnétoscopes/lecteurs DVD HS), je n'en ai trouvé aucun dual in line 2X5, ce qui serait l'idéal...
Les autres pins sont peut-être du JTAG. Faudrait qu'un spécialiste s'y colle... ou rechercher sur internet !
EDIT : je n'ai rien trouvé sur Internet ...
Hors ligne
Pour tous, Eric Cooper vient d'updater ces fichiers (kernel et rootfs) ce qui corrige normalement les pbs pour monter des modules (comme kmod-fs-vfat ou encore tout ce qui permet d'avoir du son). A tester d'urgence !
Hors ligne