• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1] 2
Author Topic: Updating Marvell uImage  (Read 7726 times)
jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« on: April 16, 2009, 07:49:41 AM »

Marvell has posted an updated uImage file (uImage.sheeva.040309).

Does anyone have a detailed Step by Step procedure on how to update a SheevaPlug with the latest image?

Since (I'm assuming) we will ALL have to deal with updating our plugs as Marvell makes improvements,
a detailed how to created by either Marvell or one of our more technical contributors would be of
long-term value to the entire community.

~Joe Donth

Logged

...I've always depended on the kindness of strangers

KaiBo
Newbie
*

Karma: 0
Posts: 35



View Profile
« Reply #1 on: April 16, 2009, 07:55:37 AM »

Take a look at the Documentation-Package on their Page. It contains instructions on how to write an uImage to the Plug within "Wrinting Jaunty Filesystem on the NAND flash".
Logged

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #2 on: April 16, 2009, 08:52:48 AM »

Take a look at the Documentation-Package on their Page. It contains instructions on how to write an uImage to the Plug within "Wrinting Jaunty Filesystem on the NAND flash".

Sorry for my lack of technical experience. I have spent a bit of time with the Marvell documentation and find it confusing.

Two examples:
 1) The document you refer to talks about flashing the 20090319 uImage. Will the settings also work for the 040309 image (step 8)?
 2) It assumes you already have the plug booted via NFS - A BIG assumption IMHO for someone who has just received his SheevaPlug
 and wants to be up-to-date with the firmware before starting any development work.

I am looking for one document that covers the entire process:
Console, Host Linux setup (tftp, nfs, etc), IP settings, etc. including cautions, warnings and how to recover when something goes wrong.

I'll keep studying it.
Logged

...I've always depended on the kindness of strangers

KaiBo
Newbie
*

Karma: 0
Posts: 35



View Profile
« Reply #3 on: April 16, 2009, 09:07:10 AM »

Assuming you already have a running Linux on your Plug you can skip all that NFS/TFTP stuff. The only things you will have to do are described in Steps 2.3 & 2.4. Here is what I'd do:

  • Find your uImage-Partition:
Code:
root@debian:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00400000 00020000 "uImage"
mtd1: 1fb00000 00020000 "rootfs"
    In my case that would be /dev/mtd0. Double-check this as you do not want to erase your U-Boot or rootfs-Partition![/li]
  • Erase current Image: nand_eraseall -j /dev/mtd0
  • Flash new Image: nandwrite -p /dev/mtd0 uImage.sheeva.040309

This worked for me several times. However, if you run into any problems you will have to either boot from NFS/TFTP or a USB-Stick to fix this.
Logged

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #4 on: April 16, 2009, 09:20:07 AM »

Assuming you already have a running Linux on your Plug you can skip all that NFS/TFTP stuff. The only things you will have to do are described in Steps 2.3 & 2.4. Here is what I'd do:
...
This worked for me several times. However, if you run into any problems you will have to either boot from NFS/TFTP or a USB-Stick to fix this.

Wow! Simple. Thank you very much. I'll try this later this afternoon.
Logged

...I've always depended on the kindness of strangers

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #5 on: April 16, 2009, 09:35:01 AM »

Assuming you already have a running Linux on your Plug you can skip all that NFS/TFTP stuff.

Will this also work with the Ubuntu rootfs? While the system is running Ubuntu?
Logged

...I've always depended on the kindness of strangers

KaiBo
Newbie
*

Karma: 0
Posts: 35



View Profile
« Reply #6 on: April 16, 2009, 09:57:34 AM »

Sure. Just use the jffs2-image you want to flash it into the rootfs-device (afer you erased the old contents).

As mentioned before, you want to have another way to boot your plug just in case something happened during this process.
Logged

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #7 on: April 16, 2009, 10:23:12 AM »

KaiBo,

I started to try your upgrade recommendation and noticed that the Marvell documentation says that a "cat /proc/mtd" will yield three partitions with mtd0 being the uBoot loader.

Your example (and my own system) reports two partitions mtd0 = "uImage" and mtd1 = "rootfs"

Why am I not seeing the uBoot partition? Am I safe to erase and reflash the partition named "uImage" even though it is mtd0?

Also, will your answer also apply to the rootfs on mtd1?

I'm going to hold off doing anything until I hear from you.

Thanks,
Joe
Logged

...I've always depended on the kindness of strangers

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #8 on: April 16, 2009, 11:44:33 AM »

I'm in trouble!!!

Against my own advice, I erased and nandwrite'd the uImage to /dev/mtd0 and rebooted.
All went well.

Did the same to mtd1. After the flash_eraseall I no longer have the nandwrite program on /usr/sbin.

Can someone send my a copy of /usr/sbin/nandwrite (I still have SSH contact with my SheevaPlug) so I can see if I can save this guy?

~Joe Donth
Logged

...I've always depended on the kindness of strangers

KaiBo
Newbie
*

Karma: 0
Posts: 35



View Profile
« Reply #9 on: April 16, 2009, 12:06:46 PM »

On second thought... Yeah, that might happen. Sorry, I did not think of that earlier (I myself keep my OS on an USB-Stick for now).

Anyways, find nandwrite here (Forum won't let me upload stuff: Cannot access attachments upload path!). I hope that it works like that. If not you might have to write one of Marvells rootfs-Images to a USB-Stick and boot from it.

Once again, sorry for not thinking that far.  Embarrassed
Logged

jdonth
Jr. Member
**

Karma: 0
Posts: 75

Azle, Texas


View Profile
« Reply #10 on: April 16, 2009, 12:28:46 PM »

On second thought... Yeah, that might happen. Sorry, I did not think of that earlier (I myself keep my OS on an USB-Stick for now).

Anyways, find nandwrite here (Forum won't let me upload stuff: Cannot access attachments upload path!). I hope that it works like that. If not you might have to write one of Marvells rootfs-Images to a USB-Stick and boot from it.

Once again, sorry for not thinking that far.  Embarrassed

No problem, that's what development is all about, right?

The nandwrite didn't work - I'm guessing my ssh connection was a memory-only image and couldn't find stuff it needed.

Can you point me to a post that will allow me to write the rootfs image to a USB stick so I can update the nand from there?

Thanks
Logged

...I've always depended on the kindness of strangers

KaiBo
Newbie
*

Karma: 0
Posts: 35



View Profile
« Reply #11 on: April 16, 2009, 12:55:43 PM »

First thing is to get the JFFS2-Image to a (partitioned and formated) stick. This can easily be done by using "cp -Rp" once you have mounted the Image (see HOWTO mount JFFS2 image on Linux host without NAND flash for details on that). Afterwards you can just follow instructions from Booting from USB drive - you do not have to write an uImage to the stick as you can use the one from your NAND. Hence you will only have to change the rootpath-part of your bootargs in u-boot.
Logged

lyzby
Newbie
*

Karma: 0
Posts: 48


View Profile
« Reply #12 on: April 16, 2009, 01:08:12 PM »

>Marvell has posted an updated uImage file (uImage.sheeva.040309).

Where is this file located?
Logged

bfmorgan
Guest
« Reply #13 on: April 16, 2009, 03:03:47 PM »

http://www.marvell.com/products/embedded_processors/developer/kirkwood/sheevaplug.jsp
Logged

lyzby
Newbie
*

Karma: 0
Posts: 48


View Profile
« Reply #14 on: April 16, 2009, 03:57:49 PM »

I'm sorry, I don't understand which of the links on the above page provides access to the file, uImage.sheeva.040309
Logged

Pages: [1] 2
Print
Jump to: