Help - Search - Members - Calendar
Full Version: U-boot Kernel Loading
OESF Forums > Distros, Development, and Model Specific Forums > Distro Support and Discussion > pdaXrom
louigi600
I'm trying to reconfigure u-boot to load alternative kernels from SD/MMC.
Anyone know how to modify the line below in order to load kernel from SD instead of onboard flash:
nand read.logical 0xa0800000 0x005a0000 0x00160000

As far as I understand the syntax is:
nand read.logical <destination address> <read start address> <read size>

So prpbably the question boils down to:
anyone know where SD is mapped to on corgi ?
and what should be used to read from SD/MMC since "nand read.logical" is probably meant for onboard flash ?

Could this be the address I'm looking for:
#define CFG_MMC_BASE 0xF0000000

Unfortunately I do not have a serial cable for my Z in order to have a better guess at what should be done ... anyone have any other ideas ?

Please help !
Meanie
QUOTE(louigi600 @ Dec 30 2006, 06:10 AM)
I'm trying to reconfigure u-boot to load alternative kernels from SD/MMC.
Anyone know how to modify the line below in order to load kernel from SD instead of onboard flash:
nand read.logical 0xa0800000 0x005a0000 0x00160000

As far as I understand the syntax is:
nand read.logical <destination address> <read start address> <read size>

So prpbably the question boils down to:
anyone know where SD is mapped to on corgi ?
and what should be used to read from SD/MMC since "nand read.logical" is probably meant for onboard flash ?

Could this be the address I'm looking for:
#define CFG_MMC_BASE            0xF0000000

Unfortunately I do not have a serial cable for my Z in order to have a better guess at what should be done ... anyone have any other ideas ?

Please help !
*


afaik uboot already lets you boot off microdrive, sd, cf, etc...
all you need is a special kernel on those devices...
louigi600
No really ... kernel is still loaded from onboard flash but root is fylesystem is passed as a kernel parameter (and can be any one of the devices you said Meanie)
.
See Sash's blog fore more details.

If this is what you want you might not even need a different kernel .... at least for SD/MMC; I already had beta4 with root on an ext3 partition of my SD (have not tested CF but I think it might have gotten fixed meantime since Shash's blog posting).

What loads the kernel to default load address is this:

nand read.logical 0xa0800000 0x005a0000 0x00160000

and what sets the boot parameters is this:

setenv bootargs console=ttyS0,115200 console=tty1 root=/dev/mtdblock2 \ rootfstype=jffs2

What I want to do is load an alternative kernel from the SD/MMC instead of the one from onboard flash.

A possible application for this would be allways having a working pdaXrom installed on the onboard flash and being able to test kernels without making the PDA unusable till you reflash a working kernel.
It might even be possible to have some other rom installed on SD/MMC (I like to keep the CF slot free for wifi/bluetooth/gps).
himchen
QUOTE(louigi600 @ Dec 30 2006, 12:44 PM)
What loads the kernel to default load address is this:
nand read.logical 0xa0800000 0x005a0000 0x00160000
and what sets the boot parameters is this:
setenv bootargs console=ttyS0,115200 console=tty1 root=/dev/mtdblock2 \ rootfstype=jffs2
What I want to do is load an alternative kernel from the SD/MMC instead of the one from onboard flash.


You could let the Linux kernel load a different Linux kernel, like OpenBSD does it
with the zbsd..o kernel module.
louigi600
QUOTE(himchen @ Dec 31 2006, 05:39 PM)
You could let the Linux kernel load a different Linux kernel, like OpenBSD does it
with the zbsd..o kernel module.
*


My goal was to leave the kernel on the onboard flash untouched so that I could allways have a working pdaXrom installation ... but being able to fiddle with testing kernels on tha SD/MMC.
The r121 kernel I think does not have the module you mentioned ... all I could find with bsd was bsd_comp.ko.
louigi600
QUOTE(himchen @ Dec 31 2006, 05:39 PM)
You could let the Linux kernel load a different Linux kernel, like OpenBSD does it
with the zbsd..o kernel module.
*


Are you talking about kexec there or something else ?
Meanie
QUOTE(louigi600 @ Apr 12 2007, 05:08 PM)
QUOTE(himchen @ Dec 31 2006, 05:39 PM)
You could let the Linux kernel load a different Linux kernel, like OpenBSD does it
with the zbsd..o kernel module.
*


Are you talking about kexec there or something else ?
*



OpenBSD on Z uses the Sharp kernel to boot the Z, ie makes the skeleton Sharp system a pseudo boot loader and then loads the OpenBSD kernel , etc...

kexec uses a very similar concept and has been implemented in some of the testing versions of OpenZaurus, but not on the stable releases...

unfortunately, it has not been implemented in pdaXrom yet afaik...
louigi600
QUOTE(Meanie @ Apr 12 2007, 09:19 AM)
OpenBSD on Z uses the Sharp kernel to boot the Z, ie makes the skeleton Sharp system a pseudo boot loader and then loads the OpenBSD kernel , etc...

kexec uses a very similar concept and has been implemented in some of the testing versions of OpenZaurus, but not on the stable releases...

unfortunately, it has not been implemented in pdaXrom yet afaik...
*

Yea ... compiling kernel with kexec is not a difficult task ... and I guess that using altboot would then be easy ... but I would really prefer having u-boot load kernel straight from the SD/MMC ... it would be so much better.
My programming skill is far from sufficient to do the job on u-boot ... but looking at the sources it looks like it's possible (but needs some good programmer to have it working for Z). I've been bugging Sash to get help about this but he's too buisy with work.
On top of that I would really need a serial cable to do testing on whatever I do on u-boot ... and that's missing too.
I'm pretty much in a stall situation ;-)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2016 Invision Power Services, Inc.