Hi,
Unfortunately my Sonos Connect AMP got bricked somehow. I opened it up, measured the voltages and found a UART port. I hooked it up to my laptop and it gave me the following serial output:
U-Boot 1.1.1(1-17-3-2.1), Build: 2.1
MPC8272 Reset Status: Check Stop, External Soft, External Hard
MPC8272 Clock Configuration
- Bus-to-Core Mult 3x, VCO Div 4, 60x Bus Freq 16-50 , Core Freq 50-150
- dfbrg 1, corecnf 0x10, busdf 3, cpmdf 1, plldf 0, pllmf 3
- vco_out 400000000, scc_clk 100000000, brg_clk 25000000
- cpu_clk 300000000, cpm_clk 200000000, bus_clk 100000000
- pci_clk 33333333
CPU: MPC8272 (HiP7 Rev 14, Mask unknown immr=0x0d10,k=0x00e1]) at 300 MHz
Board: Sonos Wembley
DRAM: 64 MB
DRAM test
Test complete - 0 errors, error pattern 00000000
Using default environment
In: serial
Out: serial
Err: serial
NAND:64 MB
ST Micro NAND 64MiB 3,3V 8-bit at 0xf8000000 (64 MB, 16 kB sector)
Bad block lbase 0, pbase 0, count 4096
Net: FCC2 ETHERNET
Hit any key to stop autoboot: 0
S0 provisionally good, KP=1, G=17
S1 provisionally good, KP=4, G=16
Boot from partition 1
Load Kernel start 10 nblock c8
Command Line (at 03fb1a08) is...
## Booting image at 01000000 ...
Image Name: Linux-2.6.39.4
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1489443 Bytes = 1.4 MB
Load Address: 00400000
Entry Point: 00400000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Memory <- <0x0 0x4000000> (64MB)
CPU clock-frequency <- 0x11e1a300 (300MHz)
CPU timebase-frequency <- 0x17d7840 (25MHz)
CPU bus-frequency <- 0x5f5e100 (100MHz)
zImage starting: loaded at 0x00400000 (sp: 0x03fb0d18)
Allocating 0x2f94a1 bytes for kernel ...
gunzipping (0x00000000 <- 0x0040d000:0x006ea6e8)...done 0x2ccee0 bytes
Linux/PowerPC load: console=ttyCPM0,38400 root=/dev/ram
Finalizing device tree... flat tree at 0x6f8300
/sbin/init: error while loading shared libraries: /lib/libc.so.6: cannot read file data: Input/output error
the last line “Input/output error” indicates a correct app partition. Unfortunately the device got shipped with a minimal u-boot setup meaning you don’t have any commands, not even the help command. After playing around with it I found the sonos command which triggers a tftpboot firmware download:
- I think the device can be fixed easily by letting u-boot boot the factory partition instead of the app partition 1.
Questions:
1. Is there any u-boot command that can set the boot partition to the factory partition?
2. is there a binary that I can use to fix this issue? Would the use of a corrupt binary trigger a checksum mismatch and automatically boot the factory partition?