[U-Boot-Users] Trouble on PXA w/kernel command-line

Hello:
I have u-boot up and running on my PXA-255 based custom board, and the linux kernel is booting and running. GREAT!
The problem is that the command-line (as set in the u-boot environment variable) is not getting to the kernel. This isn't a terribly serious problem but it's time for me to sort this out.
Please let me know what would be the best way to debug this problem, and where I ought to look for the problem in u-boot/kernel code.
Thanks in advance, craig vanderborgh voxware incorporated

In message 41BF5627.9060407@voxware.com you wrote:
The problem is that the command-line (as set in the u-boot environment variable) is not getting to the kernel. This isn't a terribly serious problem but it's time for me to sort this out.
Is CONFIG_CMDLINE_TAG selected in your board config file?
Best regards,
Wolfgang Denk

Wolfgang Denk wrote:
In message 41BF5627.9060407@voxware.com you wrote:
The problem is that the command-line (as set in the u-boot environment
variable) is not getting to the kernel. This isn't a terribly serious
problem but it's time for me to sort this out.
Is CONFIG_CMDLINE_TAG selected in your board config file?
Best regards,
Wolfgang Denk
Hello Wolfgang!
Yes, it is most definitely set. Could you possibly describe how command-line passing is *supposed* to work and then I think I can fix it...
Thanks again for everything!!
craig

In message 41BF5D9D.50603@voxware.com you wrote:
Yes, it is most definitely set. Could you possibly describe how command-line passing is *supposed* to work and then I think I can fix it...
See setup_commandline_tag() and do_bootm_linux() in lib_arm/armlinux.c
Best regards,
Wolfgang Denk

Wolfgang Denk <wd <at> denx.de> writes:
In message <41BF5D9D.50603 <at> voxware.com> you wrote:
Yes, it is most definitely set. Could you possibly describe how command-line passing is *supposed* to work and then I think I can fix it...
See setup_commandline_tag() and do_bootm_linux() in lib_arm/armlinux.c
Best regards,
Wolfgang Denk
Hello Wolfgang:
It turns out that u-boot's handling of the command line is PERFECT. Absolutely spot-on. The trouble was on the receiving end of the command line in my kernel. My machine descriptor (in my processor setup C code) looked like this:
MACHINE_START(BITSYX, "Voxware/ADS BitsyX Lite") BOOT_MEM(0xa0000000, 0x40000000, io_p2v(0x40000000)) MAPIO(bitsyx_map_io) INITIRQ(bitsyx_init_irq) MACHINE_END
It lacked the "BOOT_PARAMS" macro that tells the kernel where in memory to look for the command line. Once I added a "BOOT_PARAMS" to my MACHINE descriptor everything works perfectly:
MACHINE_START(BITSYX, "Voxware/ADS BitsyX Lite") BOOT_PARAMS(0xa0000100) BOOT_MEM(0xa0000000, 0x40000000, io_p2v(0x40000000)) MAPIO(bitsyx_map_io) INITIRQ(bitsyx_init_irq) MACHINE_END
I am sorry to bother you with such trivialities, but they are UNDOCUMENTED and not at all obvious to people who don't regularly do Linux kernel work - like myself.
Thanks a MILLION.
Regards, craig

In message loom.20041215T032855-191@post.gmane.org you wrote:
I am sorry to bother you with such trivialities, but they are UNDOCUMENTED and not at all obvious to people who don't regularly do Linux kernel work - like myself.
Then please help improving the documentation. For example, you could add an entry to the Linux FAQ section in the DULG - it takes no more than 10 minutes, and might help others.
Best regards,
Wolfgang Denk
participants (3)
-
Craig A. Vanderborgh
-
craig vanderborgh
-
Wolfgang Denk