FreeCalypso > hg > freecalypso-sw
view target-utils/libcommon/uartsel.c @ 853:ae254ffeaec3
AT command interface works!
The cause of the breakage was the same Nucleus API issue with NU_Create_Timer()
which we encountered at the very beginning of this project with Riviera timers:
the code in uartfax.c from TCS211 was passing 0 as the initial dummy value for
the timer duration, and our FreeNucleus version doesn't like it. The fix is
the same: pass 1 as the initial dummy value instead.
| author | Space Falcon <falcon@ivan.Harhan.ORG> |
|---|---|
| date | Thu, 30 Apr 2015 01:46:26 +0000 |
| parents | 40f607bb0a2c |
| children | a7b0b426f9ca |
line wrap: on
line source
/* * uart_select_init() figures out which UART was used to load us * through the boot ROM, and sets things up for us to use the same * UART for our communication. */ #include "types.h" #include "romvars.h" #include "ns16550.h" #include "halt.h" extern struct boot_rom_vars rom_vars; struct ns16550_regs *uart_base; char *uart_name; uart_select_init() { switch (rom_vars.uart_id) { case 0: uart_base = (struct ns16550_regs *) 0xFFFF5800; uart_name = "MODEM"; break; case 1: uart_base = (struct ns16550_regs *) 0xFFFF5000; uart_name = "IrDA"; break; default: _exit(HALTCODE_INVALIDUART); } }
