FreeCalypso > hg > fc-tourmaline
view src/cs/system/bootloader/inc/serial.h @ 221:5bf097aeaad7
LLS: when turning off all LEDs on boot, skip LED-C
Having LLS turn off LED-A and LED-B on boot is normally unnecessary
(they should already be off in Iota), but it is harmless, hence this
logic is kept for robustness. However, having LLS read-modify-write
the BCICTL2 register (to turn off LED-C) creates a potential race
condition with FCHG writes to this register, especially in the case
when baseband switch-on is caused by VCHG and charging is expected
to start right away. Furthermore, control of the charging LED itself
(on those hw targets that have it) is the responsibility of the FCHG
SWE, hence LLS should leave it alone.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Mon, 26 Apr 2021 21:55:13 +0000 |
| parents | 4e78acac3d88 |
| children |
line wrap: on
line source
/******************************************************************************* * * SERIAL.H * * This module contains functions to send or receive commands on the USART 8251. * Only polled mode is used. * * (C) Texas Instruments 1998 * ******************************************************************************/ #ifndef __SERIAL_H__ #define __SERIAL_H__ #include "main/sys_types.h" /* * ser_receive_command and ser_receive_char have 2 modes: * SER_INFINITE : Waits until a command is received. * SER_IMMEDIATE: Returns imediately even if no character is received. */ enum { SER_INFINITE, SER_IMMEDIATE }; /* * Return values of ser_receive_data_for_flash. */ enum { SER_DATA_READY, SER_DATA_ERROR, SER_END_OF_FILE }; extern void ser_wait_no_activity (SYS_UWORD8 device_id); extern long ser_send_command (SYS_UWORD8 *command, SYS_UWORD8 device_id); extern SYS_UWORD8 ser_receive_command (SYS_UWORD8 *command, int mode); extern long ser_receive_data_for_flash (SYS_UWORD32 *address, SYS_UWORD16 *data, SYS_UWORD8 device_id); extern void ser_initialize_flash_data_detection (void); extern void ser_initialize_serial_link (void); extern void ser_wait_last_character_sent (SYS_UWORD8 device_id); #endif /* __SERIAL_H__ */
