• Home
  • Help
  • Search
  • Login
  • Register
Pages: 1 [2]
Author Topic: SheevaPlug: no boot from SDHC after u-boot upgrade to DENX 2012.04.01-2  (Read 11456 times)
odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #15 on: May 09, 2013, 08:40:35 AM »

Good news: after the upgrade to Wheezy the plug rebooted with the new SD card without me having to push the reset button

Bad news: as with my first attempt to upgrade, smbd does not want to start. I got the below syslog message.

Thus I put back the "Squeeze" card for the moment, leaving the "Wheezy" for trouble shooting with my spare plug.

May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.289649,  0] lib/fault.c:47(fault_report)
May  9 17:06:45 Share smbd[2430]:   ===============================================================
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.295058,  0] lib/fault.c:48(fault_report)
May  9 17:06:45 Share smbd[2430]:   INTERNAL ERROR: Signal 7 in pid 2430 (3.6.6)
May  9 17:06:45 Share smbd[2430]:   Please read the Trouble-Shooting section of the Samba3-HOWTO
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.296434,  0] lib/fault.c:50(fault_report)
May  9 17:06:45 Share smbd[2430]:
May  9 17:06:45 Share smbd[2430]:   From: http://www.samba.org/samba/docs/Samba3-HOWTO.pdf
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.297702,  0] lib/fault.c:51(fault_report)
May  9 17:06:45 Share smbd[2430]:   ===============================================================
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.298565,  0] lib/util.c:1117(smb_panic)
May  9 17:06:45 Share smbd[2430]:   PANIC (pid 2430): internal error
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.300102,  0] lib/util.c:1221(log_stack_trace)
May  9 17:06:45 Share smbd[2430]:   BACKTRACE: 0 stack frames:
May  9 17:06:45 Share smbd[2430]: [2013/05/09 17:06:45.302107,  0] lib/util.c:1122(smb_panic)
May  9 17:06:45 Share smbd[2430]:   smb_panic(): calling panic action [/usr/share/samba/panic-action 2430]
May  9 17:06:53 Share smbd[2430]: [2013/05/09 17:06:53.908783,  0] lib/util.c:1130(smb_panic)
May  9 17:06:53 Share smbd[2430]:   smb_panic(): action returned status 0
May  9 17:06:53 Share smbd[2430]: [2013/05/09 17:06:53.909335,  0] lib/fault.c:372(dump_core)
May  9 17:06:53 Share smbd[2430]:   dumping core in /var/log/samba/cores/smbd
May  9 17:06:53 Share smbd[2430]:
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #16 on: July 30, 2013, 09:55:38 AM »

As I still have strange SHDC and USB-Drive behaviors, and as I lately purchased a USB3.0 Seagate Backup Plus Desktop 4TB, which I can only connect as a single device via an USB2.0 hub

I decided to try to build my own u-boot.

I found the following page https://doukki.net/doku.php?id=wiki:tutoriels:uboot.howto with instructions, however it leaves me with a question.

i) do I still have to apply any patches to the DENX 2013-07 version for my SheevaPlug (no eSATA)?

After compiling my plain vanilla version it gave me the following output

Code:
root@Share:/mnt/sda1/dev/u-boot-2013.07# make mrproper
root@Share:/mnt/sda1/dev/u-boot-2013.07# make sheevaplug_config
root@Share:/mnt/sda1/dev/u-boot-2013.07# make u-boot.kwb
[...]
Preparing kirkwood boot image to boot from nand
Nand ECC mode = default
Nand page size = 0x800
Image Type:   Kirkwood Boot from NAND Flash Image
Data Size:    379684 Bytes = 370.79 kB = 0.36 MB
Load Address: 00600000
Entry Point:  00600000
root@Share:/mnt/sda1/dev/u-boot-2013.07#

Are the any better pre-compiled u-boot images?
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #17 on: August 03, 2013, 02:53:11 AM »

OK, flashed my compiled DENX 2013-07 version to my SheevaPlug and it started, but it could not boot the Debian image from the SD card, as it has no MMC support!? (complains about the mmc command in my environment variables)

So I tried to apply the patch "0001-Sheevaplug-board-powerplug-v2013-04-refresh.patch" to the 2013-07.  As the dry patch run IMO gave no errors I went ahead, but I flashed the newly compiled uboot version to the plug, it didn't start and I had to unbrick it :-(

So back at square one.
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #18 on: August 03, 2013, 03:35:29 AM »

No succes in applying patch "0001-Sheevaplug-board-powerplug-v2013-04-refresh.patch" to the 2013-04 version neither :-(
Logged

apemberton
Newbie
*

Karma: 1
Posts: 31


View Profile
« Reply #19 on: August 08, 2013, 12:49:09 AM »

I did a compile of u-boot-2013.07 without the patch and at least it ran on an esata sheevaplug but as there is no ide built in, that was no use to me.

I am about to try using the patch as above so I will have a look. I had a brief look at the patch and I note that the u-boot environment appears to start at 0x80000 rather than 0x60000 as my previous u-boot (2012.04). Whether this has an impact on functioning of u-boot I'm not sure. My real problem is booting of a .dtb kernel (3.9.7 in this case) which will not boot on one out of three eSata sheevaplugs. An old kernel 3.7.7 which I had compiled myself does work on the one that won't boot with a .dtb kernel! Weird!!

Anyway, if I have success, I'll post again.
Logged

Tony Pemberton

apemberton
Newbie
*

Karma: 1
Posts: 31


View Profile
« Reply #20 on: September 09, 2013, 03:13:29 AM »

I am still struggling with this u-boot 2013.07 though some issues have become clearer - but not solved. Adding the patch as above will allow 2013.07 to complete but plainly there have been substantial changes to the mmc code as new files mvrl_mmc.c and mvrl_mmc.h have been added to the build. Unfortunately these modules do not seem to be properly integrated as the compilation complains about references to prototypes that are used internally in mvrl_mmc.c viz:-

Code:
In file included from sheevaplug.c:32:0:
/u-boot-2013.07/include/mrvl_mmc.h:256:12: warning: 'mrvl_mmc_setup_data' declared 'static' but never defined [-Wunused-function]
 static int mrvl_mmc_setup_data(struct mmc_data *data);
            ^
/u-boot-2013.07/include/mrvl_mmc.h:257:12: warning: 'mrvl_mmc_send_cmd' declared 'static' but never defined [-Wunused-function]
 static int mrvl_mmc_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd, struct mmc_data *data);
            ^
/u-boot-2013.07/include/mrvl_mmc.h:260:12: warning: 'mrvl_mmc_get_base_clock' declared 'static' but never defined [-Wunused-function]
 static u32 mrvl_mmc_get_base_clock(void);
            ^
/u-boot-2013.07/include/mrvl_mmc.h:261:13: warning: 'mrvl_mmc_set_clk' declared 'static' but never defined [-Wunused-function]
 static void mrvl_mmc_set_clk(uint clock);
             ^
/u-boot-2013.07/include/mrvl_mmc.h:262:13: warning: 'mrvl_mmc_set_bus' declared 'static' but never defined [-Wunused-function]
 static void mrvl_mmc_set_bus(unsigned int bus);
             ^
/u-boot-2013.07/include/mrvl_mmc.h:263:13: warning: 'mrvl_mmc_set_ios' declared 'static' but never defined [-Wunused-function]
 static void mrvl_mmc_set_ios(struct mmc *mmc);
             ^
/u-boot-2013.07/include/mrvl_mmc.h:264:12: warning: 'mrvl_mmc_init' declared 'static' but never defined [-Wunused-function]
 static int mrvl_mmc_init(struct mmc *);
            ^

More importantly, it seems that mmc has unreferenced functions mvsd_power_up , mvsd_power_down and mvsd_mmc_get_base_clock which (I guess) should be called during u-boot initialisation.

Code:
make -C drivers/mmc/
make[1]: Entering directory `/u-boot-2013.07/drivers/mmc'
gcc -M -g  -Os   -ffunction-sections -fdata-sections -fno-common -ffixed-r8 -msoft-float  -D__KERNEL__ -DCONFIG_SYS_TEXT_BASE=0x00600000 -I/u-boot-2013.07/include -fno-builtin -ffreestanding -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.8/include -pipe  -DCONFIG_ARM -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -march=armv5te   -MQ mmc.o mmc.c >.depend.mmc
gcc -M -g  -Os   -ffunction-sections -fdata-sections -fno-common -ffixed-r8 -msoft-float  -D__KERNEL__ -DCONFIG_SYS_TEXT_BASE=0x00600000 -I/u-boot-2013.07/include -fno-builtin -ffreestanding -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.8/include -pipe  -DCONFIG_ARM -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -march=armv5te   -MQ mrvl_mmc.o mrvl_mmc.c >.depend.mrvl_mmc
cat /dev/null .depend.mmc .depend.mrvl_mmc >.depend
make[1]: Leaving directory `/u-boot-2013.07/drivers/mmc'
make[1]: Entering directory `/u-boot-2013.07/drivers/mmc'
gcc  -g  -Os   -ffunction-sections -fdata-sections -fno-common -ffixed-r8 -msoft-float  -D__KERNEL__ -DCONFIG_SYS_TEXT_BASE=0x00600000 -I/u-boot-2013.07/include -fno-builtin -ffreestanding -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.8/include -pipe  -DCONFIG_ARM -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -march=armv5te -Wall -Wstrict-prototypes -fno-stack-protector -Wno-format-nonliteral -Wno-format-security -fstack-usage     -o mmc.o mmc.c -c
gcc  -g  -Os   -ffunction-sections -fdata-sections -fno-common -ffixed-r8 -msoft-float  -D__KERNEL__ -DCONFIG_SYS_TEXT_BASE=0x00600000 -I/u-boot-2013.07/include -fno-builtin -ffreestanding -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.8/include -pipe  -DCONFIG_ARM -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -march=armv5te -Wall -Wstrict-prototypes -fno-stack-protector -Wno-format-nonliteral -Wno-format-security -fstack-usage     -o mrvl_mmc.o mrvl_mmc.c -c
mrvl_mmc.c:227:13: warning: 'mvsd_power_up' defined but not used [-Wunused-function]
 static void mvsd_power_up(void)
             ^
mrvl_mmc.c:250:13: warning: 'mvsd_power_down' defined but not used [-Wunused-function]
 static void mvsd_power_down(void)
             ^
mrvl_mmc.c:273:12: warning: 'mrvl_mmc_get_base_clock' defined but not used [-Wunused-function]
 static u32 mrvl_mmc_get_base_clock(void)
            ^
ld.bfd  -r -o libmmc.o  mmc.o mrvl_mmc.o
make[1]: Leaving directory `/u-boot-2013.07/drivers/mmc'

I wish the u-boot documentation were better for people not 'in the know' as finding out what to do and the current status of patches seem to be unclear (at least to me). There are many references to the mmc patches but I can't see success stories yet. Is there something going wrong in u-boot patch testing (and indeed device tree kernels) as 'approved' code and patches should work 'out of the box'.

I am also trying to integrate the ext4 filesystem so that I don't have a legacy ext2 partition for booting uImage.
Logged

Tony Pemberton

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #21 on: January 16, 2014, 06:56:31 AM »

I think I haven't seen it been mentioned somewhere else in this forum, yet so let me make the following hint:

I recently noticed that Michael updated his u-boot binaries repository at http://people.debian.org/~tbm/u-boot/ with a newer version which is called 2013.10-2 from 02-Nov-2013.

I upgraded both my SheevaPlugs (prod and spare) a few days ago and I noticed no issues since then. Even with having the system on the 4 GB MicroSD, which, when plugged in instead of another 4 GB 'big' SD, usually now and then loses the USB attached 2 TB HDD (http://www.plugcomputer.org/plugforum/index.php?topic=6113.0).
Logged

apemberton
Newbie
*

Karma: 1
Posts: 31


View Profile
« Reply #22 on: January 16, 2014, 10:34:47 AM »

Thanks for the info. If you have the info, can this version boot from an EXT4 partition (commands 'ext4load' and 'ext4ls') as this could simplify the SDHC/disk partitioning?
Logged

Tony Pemberton

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #23 on: January 17, 2014, 01:30:11 PM »

No, I don't think so:
Code:
U-Boot 2013.10 (Oct 21 2013 - 21:06:56)
Marvell-Sheevaplug - eSATA - SD/MMC

SoC:   Kirkwood 88F6281_A0
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  512 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0
Marvell>> version

U-Boot 2013.10 (Oct 21 2013 - 21:06:56)
Marvell-Sheevaplug - eSATA - SD/MMC
gcc (Debian 4.8.1-9) 4.8.1
GNU ld (GNU Binutils for Debian) 2.23.52.20130727

Marvell>> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootm   - boot application image from memory
bootp   - boot image via network using BOOTP/TFTP protocol
chpart  - change active partition
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
dhcp    - boot image via network using DHCP/TFTP protocol
diskboot- boot from IDE device
echo    - echo args to console
editenv - edit environment variable
env     - environment handling commands
ext2load- load binary file from a Ext2 filesystem
ext2ls  - list files in a directory (default /)
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fsinfo  - print information about filesystems
fsload  - load binary file from a filesystem image
go      - start application at address 'addr'
help    - print command description/usage
ide     - IDE sub-system
iminfo  - print header information for application image
imxtract- extract a part of a multi-image
itest   - return true/false on integer compare
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loadx   - load binary file over serial line (xmodem mode)
loady   - load binary file over serial line (ymodem mode)
loop    - infinite loop on address range
ls      - list files in a directory (default /)
md      - memory display
mii     - MII utility commands
mm      - memory modify (auto-incrementing address)
mmc     - MMC sub-system
mtdparts- define flash/nand partitions
mw      - memory write (fill)
nand    - NAND sub-system
nboot   - boot from NAND device
nfs     - boot image via network using NFS protocol
nm      - memory modify (constant address)
ping    - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv  - set environment variables
sleep   - delay execution for some time
source  - run script from memory
tftpboot- boot image via network using TFTP protocol
ubi     - ubi commands
ubifsload- load file from an UBIFS filesystem
ubifsls - list files in a directory
ubifsmount- mount UBIFS volume
ubifsumount- unmount UBIFS volume
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version
Logged

birdman
Sr. Member
****

Karma: 4
Posts: 443


View Profile WWW
« Reply #24 on: January 17, 2014, 06:25:57 PM »

However, since all(?) of the files you need will be under /boot, you could just make an ext2 file-system  for that and use the ext2load.
Given that it will be fairly static you wont see any difference c.f. ext4.
Logged

apemberton
Newbie
*

Karma: 1
Posts: 31


View Profile
« Reply #25 on: January 18, 2014, 03:14:32 AM »

Yes, I already boot from an ext2 partition which is named as /boot in /etc/fstab. However wouldn't it be nice to have a single ext4 partition as I have in my Cubox's as the u-boot has these commands built in. I'm not sure now if I grabbed a binary or compiled the u-boot source for the cubox's. I have tried compiling a u-boot 2013-10 for sheevaplug but the patches and sources didn't work for me. I added the ext4 commands in the config but that was pointless.
Logged

Tony Pemberton

Pages: 1 [2]
Print
Jump to: