Re: [U-Boot] mips board with no output from console

Hi myuboot,
(You should CC: the list - tap the wisdom of the crowd, plus answers get archived for the next person that gets bit by the problem.)
myuboot@fastmail.fm wrote:
Jerry,
I appreciate your input. I somehow fixed the issue without really knowing the cause.
DANGER, Will Robinson! http://en.wikipedia.org/wiki/Danger,_Will_Robinson
In the header file for the particular board I am using, I have the parameters for serial configuration,such as #define CFG_NS16550 #define CFG_NS16550_SERIAL #define CFG_NS16550_REG_SIZE 4 #define CFG_NS16550_CLK 4 ... when I port it to u-boot2009.06, I double defined the parameters so that my existing code does not need to be changed, so I have both #define CFG_NS16550 #define CFG_NS16550_SERIAL #define CFG_NS16550_REG_SIZE 4 #define CFG_NS16550_CLK 4 ...
#define CONFIG_SYS_NS16550 #define CONFIG_SYS_NS16550_SERIAL #define CONFIG_SYS_NS16550_REG_SIZE 4 #define CONFIG_SYS_NS16550_CLK 4 ...
When I removed every thing starts with CONFIG_SYS_NS16550, the console is working.
Thanks.
That is NOT the right fix. If you grep CFG_NS16550, you will find it is no longer used (there was a CFG/CONFIG cleanup a little while back). $ find . -name "*.[ch]" | xargs grep CFG_NS16550
If you look at common/serial.c, you will find the default serial console struct serial_device *__default_serial_console (void) is selected by a combination of #if defined(CONFIG_CONS_INDEX) && defined(CONFIG_SYS_NS16550_SERIAL)
Further, in void serial_initialize (void) the combination is also used to select which register/UART channel to set up via int serial_register (struct serial_device *dev)
I suspect you did not have CONFIG_CONS_INDEX, and possible some other CONFIG_SYS_NS16550_SERIAL_* defines defined, so your initialization didn't happen correctly. There are plenty of examples to copy from: $ find . -name "*.h" | xargs grep -l CONFIG_SYS_NS16550
Best regards, gvb
[snip]
participants (1)
-
Jerry Van Baren