upload zImage to Ben NanoNote
Xiangfu Liu
xiangfu at qi-hardware.com
Mon Dec 28 12:32:41 EST 2009
Hi
thanks for the info. will keep post when have progress on "upload zImage"
Bas Wijnen wrote:
> Hi,
>
> For clarity, I suppose you are referring to table 3-30 in the 4720
> datasheet.
>
> It seems that indeed there is some setup done by the boot rom when
> booting from nand flash. Appearantly this setup is not undone when
> booting from usb, so this is likely to be the issue you're seeing. I
> don't see it with Iris, because I don't use the flash at all yet (all
> programs and data are read from usb).
>
> Setting up those pins to "alternate function" should help. All the pins
> that are mentioned in the table are set by __gpio_as_nand() from
> include/asm-mips/jz4740/ops.h . Except the port A pins, but they are
> set to "alternate function" already by __gpio_as_sdram_16bit() (I think
> Linux uses _32bit, which makes no difference because all the other pins
> are unavailable in the 4720).
>
> So in short, adding __gpio_as_nand() to the startup code (near all the
> other __gpio_as_* calls) should fix your problem.
>
> Thanks,
> Bas
>
> On Sun, Dec 27, 2009 at 10:53:31PM +0800, Xiangfu Liu wrote:
>> Hi Bas Wijnen
>>
>> I found there is some GPIO status difference in different boot mode.
>> [Table 3-30] -- Pins are used and are set to function pins during BOOT
>> maybe we need set those GPIO when usbboot mode.
>>
>>
>> Bas Wijnen wrote:
>>> On Sun, Dec 06, 2009 at 01:02:45AM +0800, Xiangfu Liu wrote:
>>>> I have try to send the Linux(zImage) or u-boot to device like Iris.
>>>> I use the "xbboot" in xburst-tools.git
>>> I took most of my own "stage 1" driver from xburst-tools as well, so I'm
>>> familiar with the code.
>>>
>>>> direct boot to usbboot mode:
>>>> 1. upload the stage1 to device. (for init PLL, SDRAM, Serial Console)
>>>> 2. upload the zImage to 0x80600000
>>>> 3. run the zImage at 0x80600000
>>>> then nothing happen in serial console.
>>>>
>>>> BUT if I boot the device to rootfs first, then reset the device to usbboot mode:
>>>> 1. upload the stage1 to device. (for init PLL, SDRAM, Serial Console)
>>>> 2. upload the zImage to 0x80600000
>>>> 3. run the zImage at 0x80600000
>>>> everything ok. kernel booting.
>>>>
>>>> ----here is the u-boot:
>>>> direct boot to usbboot mode:
>>>> 1. upload the stage1 to device. (for init PLL, SDRAM, Serial Console)
>>>> 2. upload the u-boot.bin to 0x80100000
>>>> 3. run the u-boot.bin at 0x80100000
>>>> u-boot work fine. but stop at "Starting kernel ..." after read the kernel form nand. Uncompress kernel etc.
>>>>
>>>> BUT if I boot the device to rootfs first, then reset the device to usbboot mode:
>>>> 1. upload the stage1 to device. (for init PLL, SDRAM, Serial Console)
>>>> 2. upload the u-boot.bin to 0x80100000
>>>> 3. run the u-boot.bin at 0x80100000
>>>> everything ok. kernel boot to rootfs success.
>>>>
>>>> do you have any clues on this issue?
>>> It seems that some setting up remains in effect after the reset. I know
>>> that the usbboot stage1 doesn't set up the nand flash, so that may be a
>>> problem. Perhaps the chip does that by itself when it is booting from
>>> it, but not when booting over usb.
>>>
>>> Also, it is possible that the settings that stage1 tries to use to set
>>> up the sdram are wrong. Usbboot needs to get some configuration values
>>> from the host. However, that doesn't really fit with the description,
>>> because then it shouldn't work after a booting rootfs either.
>>>
>>> In case of problems like this one, I excessively use printf (in this
>>> case to the serial port). For example, I'm printing line numbers of a
>>> file which seems to be a problem. It usually helps to find the source
>>> of the problem. :-) If you do this, make sure that the serial port's
>>> buffer is flushed (that is, you wait until it's empty) before
>>> continuing. It makes everything much slower, but it means that the last
>>> message received is indeed the last thing that was sent.
>>>
>>> Thanks,
>>> Bas
>>>
>>
>> --
>> Xiangfu Liu
>> Email: xiangfu at qi-hardware dot com
>> Web: http://www.qi-hardware.com
>>
>> _______________________________________________
>> Qi Developer Mailing List
>> Mail to list (members only): developer at lists.qi-hardware.com
>> Subscribe or Unsubscribe: http://lists.qi-hardware.com/cgi-bin/mailman/listinfo/developer
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Qi Developer Mailing List
>> Mail to list (members only): developer at lists.qi-hardware.com
>> Subscribe or Unsubscribe: http://lists.qi-hardware.com/cgi-bin/mailman/listinfo/developer
--
Xiangfu Liu
Email: xiangfu at qi-hardware dot com
Web: http://www.qi-hardware.com
More information about the discussion
mailing list