Auto boot fails in u-boot

Bug #1006683 reported by Matt Waddel
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
IglooCommunity
Fix Committed
High
Ramesh Chandrasekaran

Bug Description

When a serial console is not connected to the snowball platform the boot sequence intermittently gets stuck at the u-boot prompt. It seems like there is garbage in the pipe of the serial console. So when the bootloader asks "Press any key to stop", the system has stopped. After attaching a console cable I can see it's paused at the bootloader prompt.

If I press return at the u-boot prompt (which executes the last command again) I see this:

Unknown command '�����枞������枀' - try 'help'
U8500 $
Unknown command '�����枞������枀' - try 'help'
U8500 $

This information may not be helpful because this could have been caused by plugging in the console cable, but it's for sure stuck in u-boot.

Changed in igloocommunity:
importance: Undecided → High
milestone: none → 2012.06
Changed in igloocommunity:
assignee: nobody → Mathieu Poirier (mathieu.poirier)
Revision history for this message
Mathieu Poirier (mathieu.poirier-deactivatedaccount) wrote :

The problem still persist after backporting the mainline uart RX queue fix to u-boot-linaro-stable and needs to be investigated further.

Changed in igloocommunity:
milestone: 2012.06 → 2012.07
Revision history for this message
Matt Waddel (mwaddel) wrote :

I looked at the hardware surrounding the FT232RL chip and realized that without a USB serial cable the chip reset line was being pulled low and driving this chip into reset. So I attached a 10K pull-up from R216 to Vcc and that fixed the problem. I have booted over a dozen times with and without a USB serial cable and it has not failed a single time.

I don't know if this means there is a problem with the bootloader software waiting for FT232RL to come out of reset or if the hardware should not be pulling the reset line low when a cable isn't attached, I just know this fixed the problem. The chip data sheet shows the current hardware layout for a self-powered configuration, which seems correct. So I wonder if it's more likely that u-boot hangs looking for some sort of response from the FT232RL chip.

Anybody have any ideas?

--Matt

Changed in igloocommunity:
milestone: 2012.07 → 2012.09
Changed in igloocommunity:
status: New → In Progress
assignee: Mathieu Poirier (mathieu.poirier) → Ramesh Chandrasekaran (ramesh-chandrasekaran)
Revision history for this message
Ramesh Chandrasekaran (ramesh-chandrasekaran) wrote :

As mentioned in the above analysis, there seems to be garbage in the RX FIFO when the user is not connecting the usb cable.
When u-boot waits for keypress from user to stop autoboot, a character with ascii value:255 seems to be there in the RX FIFO.
Because of this autobooting stops, and prevents the board from booting further.

The Actual cause of the Garbage in the RX FIFO is unknown. So, before waiting for the keypress from user, clearing the RX FIFO, seems to fix the issue. Code will be sent to review.

Revision history for this message
Mathieu Poirier (mathieu.poirier-deactivatedaccount) wrote :

I am eager to see your solution for this problem - I have cleared the RX FIFO queue multiple times without success. The problem would always come back.

Revision history for this message
Ramesh Chandrasekaran (ramesh-chandrasekaran) wrote :

The fix is reviewed and merged. Hence moving to fix commited state.

Changed in igloocommunity:
status: In Progress → Fix Committed
Changed in igloocommunity:
status: Fix Committed → In Progress
Changed in igloocommunity:
status: In Progress → Fix Committed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.