rosbif wrote:flavoie wrote:Yes, it worked before the upgrade - see my full pre-upgrade output in this thread - after pushing the Power button... I was still using stock kernel-stock distro - with nothing changed at that point:
viewtopic.php?f=146&t=1941
If you look at the timestamps of blackbird001, he has the same timestamp for uboot so he could have the same updated uboot from aaribaud.
I don't see the point of flashing U-Boot if you are just using the stock LaCie kernel.
*WARNING* Flashing U-Boot is a *very dangerous* operation.
You can easily brick your device and I do not know how to recover even with JTAG hardware.
AFAIK even Albert has not yet been able to access the FLASH using JTAG.
flavoie wrote:Are there arguments or something to pass to the kernel, something I would need to re-setup under the newer uboot which could have been lost from the uboot configuration ? Do I need to re-setup anything in uboot ?
I have never used Albert's U-Boot but I imagine that he has left most environment variables unchanged.
However it *could* be a mach-type problem.
The stock Marvell/LaCie U-Boot passes a bogus machine type 526 (= 0x20e) to the Linux kernel in the register r1.
A mainline Linux kernel requires the official machine type 1756 (= 0x6dc) which I registered.
AIUI Albert's U-Boot passes this official machine type.
However the stock LaCie kernel *may* require the bogus machine type which is passed by their stock U-Boot.
flavoie wrote:Marvell>> bdinfo
arch_number = 0x000006DC
This is the official machine type and not the bogus one.
I do not know if it is hard coded or if you can change it from the U-Boot command line. Albert?
EDIT: I have looked quickly at Albert's patches and it seems as if a:
from the U-Boot command line will do the trick

Plus IIRC with Albert's U-Boot you can save the environment variables permanently.
Kudos to Albert for doing things cleanly

I have not tested this so please would you kindly confirm whether this works and if it solves the problem?
If it is indeed a mach-type problem (which is not certain) you would seem to have these possibilities to boot the stock kernel:
a) change arch_number (EDIT: in fact set the environment variable mach_type to 526) from the U-Boot command line,
b) prepend a shim to the stock kernel. This would be one assembler instruction which loads 526 into r1,
c) reflash just arch_number in Albert's U-Boot code (dangerous),
d) reflash the stock U-Boot (dangerous).
Try a) and b) to check that this is really the problem before attempting c) or d).
HTH.
Cheers,
Chris
Hi Chris,
Thanks a lot for your reply. You nailed it, it works !
I figured I would update uboot first, and I knew the risks... but i figured i should do this first, and then update the kernel and distro with something else - which I still plan to do. Next, i'll likely want to backup what I have...
This is a very nice workaround, it should be documented in Albert's page.
Here are the simple workaround commands (assumes you have serial access, you likely would not be here if you did not anyways)
To boot lacie stock kernels which require a different machine type:
- press a button to get uboot prompt
- setenv mach_type 526
- saveenv (optional, only if you wish to keep using the stock kernel)
- boot (can also use "reset" if you did saveenv)
The revert to aaribaud's image defaults, and use more up to date kernels:
- press a button to get uboot prompt
- setenv mach_type 1756
- saveenv (optional, only if you wish to keep this setting in flash)
- boot (can also use "reset" if you did saveenv)
I tested both.
Note: Have a look at how I cannot see my mach_type environment variable changed after I typed in the command, I typed bdinfo and printenv before and after my "setenv mach_type 526" command. It does the job, but you'll have no feedback that you changed something. Even after "saveenv" of the new mach_type of 526 and "reset", bdinfo still displays arch_number = 0x000006DC and there's no output of mach_type in printenv.
Marvell>> bdinfo
arch_number = 0x000006DC
env_t = 0x00000000
boot_params = 0x00000100
DRAM bank = 0x00000000
-> start = 0x00000000
-> size = 0x04000000
DRAM bank = 0x00000001
-> start = 0xFFFFFFFF
-> size = 0x00000000
DRAM bank = 0x00000002
-> start = 0xFFFFFFFF
-> size = 0x00000000
DRAM bank = 0x00000003
-> start = 0xFFFFFFFF
-> size = 0x00000000
ethaddr = 00:D0:4B:85:98:46
ip_addr = 0.0.0.0
baudrate = 115200 bps
Marvell>> printenv
bootargs=console=ttyS0,115200 root=/dev/sda7 ro
bootcmd=if lump 2; then ; else run disk_disk; fi
baudrate=115200
loads_echo=0
kernel_addr=0x400000
boot_disk=disk ${kernel_addr} 1:6
snap_disk=if snapboot 1:9 ${kernel_addr}; then; else run boot_disk; fi
disk_disk=ide reset; run snap_disk; bootm ${kernel_addr};
ethaddr=00:d0:4b:85:98:46
stdin=serial
stdout=serial
stderr=serial
cpuName=926
CASset=min
enaMonExt=no
enaFlashBuf=yes
enaCpuStream=no
MALLOC_len=4
ethprime=egiga0
bootdelay=3
disaMvPnp=no
overEthAddr=no
usb0Mode=host
usb1Mode=device
ethact=egiga0
Environment size: 558/8188 bytes
Marvell>> set mach_type 526
Marvell>> printenv
bootargs=console=ttyS0,115200 root=/dev/sda7 ro
bootcmd=if lump 2; then ; else run disk_disk; fi
baudrate=115200
loads_echo=0
kernel_addr=0x400000
boot_disk=disk ${kernel_addr} 1:6
snap_disk=if snapboot 1:9 ${kernel_addr}; then; else run boot_disk; fi
disk_disk=ide reset; run snap_disk; bootm ${kernel_addr};
ethaddr=00:d0:4b:85:98:46
stdin=serial
stdout=serial
stderr=serial
cpuName=926
CASset=min
enaMonExt=no
enaFlashBuf=yes
enaCpuStream=no
MALLOC_len=4
ethprime=egiga0
bootdelay=3
disaMvPnp=no
overEthAddr=no
usb0Mode=host
usb1Mode=device
ethact=egiga0
mach_type=526
Environment size: 572/8188 bytes
Marvell>> bdinfo
arch_number = 0x000006DC
env_t = 0x00000000
boot_params = 0x00000100
DRAM bank = 0x00000000
-> start = 0x00000000
-> size = 0x04000000
DRAM bank = 0x00000001
-> start = 0xFFFFFFFF
-> size = 0x00000000
DRAM bank = 0x00000002
-> start = 0xFFFFFFFF
-> size = 0x00000000
DRAM bank = 0x00000003
-> start = 0xFFFFFFFF
-> size = 0x00000000
ethaddr = 00:D0:4B:85:98:46
ip_addr = 0.0.0.0
baudrate = 115200 bps
Marvell>>
============
full output:
__ __ _ _
| \/ | __ _ _ ____ _____| | |
| |\/| |/ _` | '__\ \ / / _ \ | |
| | | | (_| | | \ V / __/ | |
|_| |_|\__,_|_| \_/ \___|_|_|
_ _ ____ _
| | | | | __ ) ___ ___ | |_
| | | |___| _ \ / _ \ / _ \| __|
| |_| |___| |_) | (_) | (_) | |_
\___/ |____/ \___/ \___/ \__| ** LOADER **
** MARVELL BOARD: DB-88F5182-EDmini-V2 LE
U-Boot 1.1.1 (May 26 2008 - 12:55:51) Marvell version: 1.7.3 - LaCie version: 1.3.4
DRAM CS[0] base 0x00000000 size 64MB
DRAM Total size 64MB
Flash: flashStructGet manu 0xc2 id 0xba
[512kB@fff80000] Flash: 512 kB
Addresses 20M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (20M - 16M): Done
*** Warning - bad CRC, using default environment
Soc: MV88F5182 Rev 2
CPU: ARM926 (Rev 0) running @ 400Mhz
SysClock = 133Mhz , TClock = 166Mhz
USB 0: host mode
USB 1: device mode
PCI 0: PCI Express Root Complex Interface
PCI 1: Conventional PCI, speed = 33000000
Net: egiga0 [PRIME]
Power Button Released
Hit any key to stop autoboot: 0
Marvell>> setenv mach_type 526
Marvell>> boot
Waiting for LUMP (2)
Using egiga0 device
no lump receive; continuing
Reset IDE:
Marvell Serial ATA Adapter
Intergrated Sata device found
Device 1: OK
Model: Hitachi HDP725050GLA360 Firm: GM4OA52A Ser#: GEB530RE2XSB8B
Type: Hard Disk
Supports 48-bit addressing
Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
Checking whether rollback is requested..
Checking for /snaps/00
<DIR> 4096 .
<DIR> 4096 ..
<DIR> 4096 oldroot
<DIR> 4096 etc
<DIR> 4096 dev
<DIR> 4096 usr
Checking for Image /snaps/00/boot/uImage
** Image /snaps/00/boot/uImage not found...
Checking for /snaps/01
** Can not find directory. **
** End of Snapshots **
No valid Image Found. Loading default kernel
Loading from IDE device 1, partition 6: Name: hdb6
Type: U-Boot
Image Name: Linux-2.6.12.6-arm1-lacie5a
Created: 2006-10-31 10:26:32 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1523420 Bytes = 1.5 MB
Load Address: 00008000
Entry Point: 00008000
## Booting image at 00400000 ...
Image Name: Linux-2.6.12.6-arm1-lacie5a
Created: 2006-10-31 10:26:32 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1523420 Bytes = 1.5 MB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux......................................................................................................... done, booting the kernel.
Linux version 2.6.12.6-arm1-lacie5a (root@lacie) (gcc version 3.4.4 (release) (CodeSourcery ARM 2005q3-2)) #1 Tue Oct 31 11:26:21 CET 2006
CPU: ARM926EJ-Sid(wb) [41069260] revision 0 (ARMv5TEJ)
CPU0: D VIVT write-back cache
CPU0: I cache: 32768 bytes, associativity 1, 32 byte lines, 1024 sets
CPU0: D cache: 32768 bytes, associativity 1, 32 byte lines, 1024 sets
Machine: MV-88fxx81
Using UBoot passing parameters structure
Sys Clk = 133000000, Tclk = 166666667
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists
Kernel command line: console=ttyS0,115200 root=/dev/sda7 ro
PID hash table entries: 512 (order: 9, 8192 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 64MB 0MB 0MB 0MB = 64MB total
Memory: 61440KB available (2817K code, 416K data, 96K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 64MB
SDRAM_CS1 ....disable
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e0000000, size 128MB
PEX0_IO ....base f2000000, size 1MB
PCI0_MEM ....base e8000000, size 128MB
PCI0_IO ....base f2100000, size 1MB
INTER_REGS ....base f1000000, size 1MB
DEVICE_CS0 ....no such
DEVICE_CS1 ....base f4000000, size 16MB
DEVICE_CS2 ....no such
DEV_BOOCS ....base ff800000, size 8MB
CRYPTO ENG ....base f0000000, size 64KB
LaCie EDmini V2 (MV LSP Version 1.10.3.patch2_DB_NAS)-- RD-88F5182-EDMV2 Soc: 88F5182 A2
Detected Tclk 166666667 and SysClk 133000000
Marvell USB EHCI Host controller #0: c3c11b00
Marvell USB EHCI Gadget controller #1: c3c11a40
pexBarOverlapDetect: winNum 2 overlap current 0
mvPexInit:Warning :Bar 2 size is illigal
it will be disabled
please check Pex and CPU windows configuration
PCI: bus0: Fast back to back transfers enabled
PCI: bus1: Fast back to back transfers enabled
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
Use the XOR engines (offloading) for enhancing the following functions:
o RAID 5 Xor calculation
o kernel memcpy
o kenrel memzero
o copy user to/from kernel buffers
Number of XOR engines to use: 2
Fast Floating Point Emulator V0.9 (c) Peter Teichmann.
inotify device minor=63
Registering unionfs 1.1.5
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
ttyS0 at MMIO 0x0 (irq = 3) is a 16550A
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
loop: loaded (max 8 devices)
Marvell Gigabit Ethernet Driver 'egiga':
o Ethernet descriptors in DRAM
o DRAM SW cache-coherency
o Checksum offload enabled
o Loading network interface 'egiga0'
Intergrated Sata device found
scsi0 : Marvell SCSI to SATA adapter
scsi1 : Marvell SCSI to SATA adapter
Vendor: Hitachi Model: HDP725050GLA360 Rev: GM4O
Type: Direct-Access ANSI SCSI revision: 03
SCSI device sda: 976773168 512-byte hdwr sectors (500108 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 976773168 512-byte hdwr sectors (500108 MB)
SCSI device sda: drive cache: write back
sda: sda1 < sda5 sda6 sda7 sda8 sda9 > sda2
Attached scsi disk sda at scsi1, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi1, channel 0, id 0, lun 0, type 0
physmap flash device: 80000 at ff800000
phys_mapped_flash: Found 1 x16 devices at 0x0 in 8-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
phys_mapped_flash: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
cmdlinepart partition parsing not available
RedBoot partition parsing not available
ehci_platform ehci_platform.4523: EHCI Host Controller
ehci_platform ehci_platform.4523: new USB bus registered, assigned bus number 1
ehci_platform ehci_platform.4523: irq 17, io mem 0x00000000
ehci_platform ehci_platform.4523: park 0
ehci_platform ehci_platform.4523: USB 0.0 initialized, EHCI 1.00, driver 10 Dec 2004
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usbcore: registered new driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.01:USB HID core driver
mice: PS/2 mouse device common for all mice
edmini_power 1.0 initialised
md: linear personality registered as nr 1
md: raid0 personality registered as nr 2
md: raid1 personality registered as nr 3
md: raid10 personality registered as nr 9
md: md driver 0.90.1 MAX_MD_DEVS=256, MD_SB_DISKS=27
device-mapper: 4.4.0-ioctl (2005-01-12) initialised:
dm-devel@redhat.com
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
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)
NET: Registered protocol family 1
NET: Registered protocol family 17
NET: Registered protocol family 5
Loading I2C based RTC driver device interface.
Found TWSI adapter with id: 0
Found I2C RTC rs5c372 @ 0x32
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing init memory: 96K
kjournald starting. Commit interval 5 seconds
#### Started PatchManager ####
EXT3-fs: mounted filesystem with ordered data mode.
kjournald starting. Commit interval 5 seconds
#### Running File System Check on Base Partition ###
kjournald starting. Commit interval 5 seconds
EXT3 FS on sda9, internal journal
EXT3-fs: sda9: 1 orphan inode deleted
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
Mounting kernel-based file systems: /procnodev sysfs
/sys [ OK ]
Starting clock sync [ OK ]
Starting system log daemon... [ OK ]
Starting kernel log daemon... [ OK ]
Loading modules: xfs reiserfs g_ether ntfs [ OK ]
Activating all swap files/partitions... [ OK ]
Starting UserData service
Bringing up the loopback interface... [ OK ]
Setting hostname to EDmini... [ OK ]
Bringing up the egiga0 interface (udhcpc)...
Removing remaining PID file
udhcpc (v0.9.9-pre) started
Lease of 192.168.0.104 obtained, lease time 86400
Reloading smbd...
Reloading nmbd... [ OK ]
Bringing up the usb0 interface (udhcpc)...
Removing remaining PID file
udhcpc (v0.9.9-pre) started
No lease, forking to background. [ OK ]
Starting HTTPD... [ OK ]
Starting Network Interface Plugging Daemon:Process 698 died: No such process; removing PID file. (/var/run/ifplugd.egiga0.pid)
egiga0Process 734 died: No such process; removing PID file. (/var/run/ifplugd.usb0.pid)
usb0.
Starting ipconfd ... [ OK ]
Starting udevd... [ OK ]
Starting FTP Server... [ OK ]
Starting nmbd... [ OK ]
Starting smbd...
/usr/sbin/smbd: /lib/libpam.so.0: no version information available (r[ OK ]d by /usr/sbin/smbd)
Starting DAAP server
setting dest to 4 [ OK ]
Twonky server seems already be running under PID 935
(PID file /var/run/twonky.pid already exists). Checking for process...
Looks like the daemon crashed: the PID does not match the daemon.
Removing flag file...
Starting /usr/local/TwonkyVision/twonkymedia ...
TwonkyMedia Version 4.4.2
Time synchronization from network
Updating PatchManager Log
LaCix Linux release 1.0
Kernel 2.6.12.6-arm1-lacie5a on an armv5tejl / ttyS0
EDmini login: