[U-Boot] [PATCH 06/10] debug_uart: Adjust the declaration of debug_uart_init()
Simon Glass
sjg at chromium.org
Sun Oct 18 14:18:07 CEST 2015
Hi Bin,
On 14 September 2015 at 06:16, Bin Meng <bmeng.cn at gmail.com> wrote:
> Hi Simon,
>
> On Wed, Sep 9, 2015 at 7:52 AM, Simon Glass <sjg at chromium.org> wrote:
>> We want to be able to add other common code to this function. So change the
>> driver's version to have an underscore before it, just like
>> _debug_uart_putc(). Define debug_uart_init() to call this version.
>>
>> Update all drivers to this new method.
>>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> ---
>>
>> drivers/serial/ns16550.c | 2 +-
>> drivers/serial/serial_efi.c | 2 +-
>> drivers/serial/serial_s5p.c | 2 +-
>> include/debug_uart.h | 9 +++++++--
>> lib/efi/efi_stub.c | 2 +-
>> 5 files changed, 11 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c
>> index 6275a11..6433844 100644
>> --- a/drivers/serial/ns16550.c
>> +++ b/drivers/serial/ns16550.c
>> @@ -257,7 +257,7 @@ int NS16550_tstc(NS16550_t com_port)
>> (1 << CONFIG_DEBUG_UART_SHIFT), \
>> CONFIG_DEBUG_UART_SHIFT)
>>
>> -void debug_uart_init(void)
>> +static inline void _debug_uart_init(void)
>
> Is this 'static inline' change needed? As I don't see the same changes
> applied to serial_efi.c and serial_s5p.c
Yes I've added it to those two - it is not essential but I think it
makes sense since there is only one declaration and we want to avoid
unnecessary function calls.
>
>> {
>> struct NS16550 *com_port = (struct NS16550 *)CONFIG_DEBUG_UART_BASE;
>> int baud_divisor;
>> diff --git a/drivers/serial/serial_efi.c b/drivers/serial/serial_efi.c
>> index cf57d89..ee3029b 100644
>> --- a/drivers/serial/serial_efi.c
>> +++ b/drivers/serial/serial_efi.c
>> @@ -107,7 +107,7 @@ static int serial_efi_pending(struct udevice *dev, bool input)
>> * There is nothing to init here since the EFI console is already running by
>> * the time we enter U-Boot.
>> */
>> -void debug_uart_init(void)
>> +void _debug_uart_init(void)
>> {
>> }
>>
>> diff --git a/drivers/serial/serial_s5p.c b/drivers/serial/serial_s5p.c
>> index 3f0b588..e7adf0d 100644
>> --- a/drivers/serial/serial_s5p.c
>> +++ b/drivers/serial/serial_s5p.c
>> @@ -207,7 +207,7 @@ U_BOOT_DRIVER(serial_s5p) = {
>>
>> #include <debug_uart.h>
>>
>> -void debug_uart_init(void)
>> +void _debug_uart_init(void)
>> {
>> struct s5p_uart *uart = (struct s5p_uart *)CONFIG_DEBUG_UART_BASE;
>>
>> diff --git a/include/debug_uart.h b/include/debug_uart.h
>> index a75e377..257ba00 100644
>> --- a/include/debug_uart.h
>> +++ b/include/debug_uart.h
>> @@ -38,7 +38,7 @@
>> * To enable the debug UART in your serial driver:
>> *
>> * - #include <debug_uart.h>
>> - * - Define debug_uart_init(), trying to avoid using the stack
>> + * - Define _debug_uart_init(), trying to avoid using the stack
>> * - Define _debug_uart_putc() as static inline (avoiding stack usage)
>> * - Immediately afterwards, add DEBUG_UART_FUNCS to define the rest of the
>> * functionality (printch(), etc.)
>> @@ -132,6 +132,11 @@ void printhex8(uint value);
>> void printhex8(uint value) \
>> { \
>> printhex(value, 8); \
>> - }
>> + } \
>> +\
>> + void debug_uart_init(void) \
>> + { \
>> + _debug_uart_init(); \
>> + } \
>>
>> #endif
>> diff --git a/lib/efi/efi_stub.c b/lib/efi/efi_stub.c
>> index d4d3e49..e138709 100644
>> --- a/lib/efi/efi_stub.c
>> +++ b/lib/efi/efi_stub.c
>> @@ -59,7 +59,7 @@ struct __packed desctab_info {
>> * considering if we start needing more U-Boot functionality. Note that we
>> * could then move get_codeseg32() to arch/x86/cpu/cpu.c.
>> */
>> -void debug_uart_init(void)
>> +void _debug_uart_init(void)
>> {
>> }
>>
>> --
>
> Regards,
> Bin
Regards,
Simon
More information about the U-Boot
mailing list