include/console/uart: make index parameter unsigned

The UART index is never negative, so make it unsigned and drop the
checks for the index to be non-negative.

Change-Id: I64bd60bd2a3b82552cb3ac6524792b9ac6c09a94
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/45294
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Felix Held 2020-09-11 15:47:09 +02:00
parent 8395165eee
commit e3a1247b15
32 changed files with 98 additions and 98 deletions

View File

@ -55,9 +55,9 @@ static int oxpcie_uart_active(void)
return oxpcie_present; return oxpcie_present;
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if ((idx >= 0) && (idx < 8) && oxpcie_uart_active()) if ((idx < 8) && oxpcie_uart_active())
return uart0_base + idx * 0x200; return uart0_base + idx * 0x200;
return 0; return 0;
} }

View File

@ -5,11 +5,11 @@
#include <console/uart.h> #include <console/uart.h>
#include <drivers/uart/pl011.h> #include <drivers/uart/pl011.h>
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct pl011_uart *regs = uart_platform_baseptr(idx); struct pl011_uart *regs = uart_platform_baseptr(idx);
@ -17,7 +17,7 @@ void uart_tx_byte(int idx, unsigned char data)
uart_tx_flush(idx); uart_tx_flush(idx);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
struct pl011_uart *regs = uart_platform_baseptr(idx); struct pl011_uart *regs = uart_platform_baseptr(idx);
@ -26,7 +26,7 @@ void uart_tx_flush(int idx)
; ;
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct pl011_uart *regs = uart_platform_baseptr(idx); struct pl011_uart *regs = uart_platform_baseptr(idx);

View File

@ -45,7 +45,7 @@ static void sifive_uart_init(struct sifive_uart_registers *regs, int div)
write32(&regs->rxctrl, RXCTRL_RXEN|RXCTRL_RXCNT(0)); write32(&regs->rxctrl, RXCTRL_RXEN|RXCTRL_RXCNT(0));
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
unsigned int div; unsigned int div;
div = uart_baudrate_divisor(get_uart_baudrate(), div = uart_baudrate_divisor(get_uart_baudrate(),
@ -58,7 +58,7 @@ static bool uart_can_tx(struct sifive_uart_registers *regs)
return !(read32(&regs->txdata) & TXDATA_FULL); return !(read32(&regs->txdata) & TXDATA_FULL);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct sifive_uart_registers *regs = uart_platform_baseptr(idx); struct sifive_uart_registers *regs = uart_platform_baseptr(idx);
@ -68,7 +68,7 @@ void uart_tx_byte(int idx, unsigned char data)
write32(&regs->txdata, data); write32(&regs->txdata, data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
struct sifive_uart_registers *regs = uart_platform_baseptr(idx); struct sifive_uart_registers *regs = uart_platform_baseptr(idx);
uint32_t ip; uint32_t ip;
@ -79,7 +79,7 @@ void uart_tx_flush(int idx)
} while (!(ip & IP_TXWM)); } while (!(ip & IP_TXWM));
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct sifive_uart_registers *regs = uart_platform_baseptr(idx); struct sifive_uart_registers *regs = uart_platform_baseptr(idx);
uint32_t rxdata; uint32_t rxdata;

View File

@ -77,14 +77,14 @@ static void uart8250_init(unsigned int base_port, unsigned int divisor)
static const unsigned int bases[] = { 0x3f8, 0x2f8, 0x3e8, 0x2e8 }; static const unsigned int bases[] = { 0x3f8, 0x2f8, 0x3e8, 0x2e8 };
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (idx < ARRAY_SIZE(bases)) if (idx < ARRAY_SIZE(bases))
return bases[idx]; return bases[idx];
return 0; return 0;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
if (!CONFIG(DRIVERS_UART_8250IO_SKIP_INIT)) { if (!CONFIG(DRIVERS_UART_8250IO_SKIP_INIT)) {
unsigned int div; unsigned int div;
@ -94,17 +94,17 @@ void uart_init(int idx)
} }
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
uart8250_tx_byte(uart_platform_base(idx), data); uart8250_tx_byte(uart_platform_base(idx), data);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return uart8250_rx_byte(uart_platform_base(idx)); return uart8250_rx_byte(uart_platform_base(idx));
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
uart8250_tx_flush(uart_platform_base(idx)); uart8250_tx_flush(uart_platform_base(idx));
} }

View File

@ -97,7 +97,7 @@ static void uart8250_mem_init(void *base, unsigned int divisor)
uart8250_write(base, UART8250_LCR, CONFIG_TTYS0_LCS); uart8250_write(base, UART8250_LCR, CONFIG_TTYS0_LCS);
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
void *base = uart_platform_baseptr(idx); void *base = uart_platform_baseptr(idx);
if (!base) if (!base)
@ -109,7 +109,7 @@ void uart_init(int idx)
uart8250_mem_init(base, div); uart8250_mem_init(base, div);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
void *base = uart_platform_baseptr(idx); void *base = uart_platform_baseptr(idx);
if (!base) if (!base)
@ -117,7 +117,7 @@ void uart_tx_byte(int idx, unsigned char data)
uart8250_mem_tx_byte(base, data); uart8250_mem_tx_byte(base, data);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
void *base = uart_platform_baseptr(idx); void *base = uart_platform_baseptr(idx);
if (!base) if (!base)
@ -125,7 +125,7 @@ unsigned char uart_rx_byte(int idx)
return uart8250_mem_rx_byte(base); return uart8250_mem_rx_byte(base);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
void *base = uart_platform_baseptr(idx); void *base = uart_platform_baseptr(idx);
if (!base) if (!base)

View File

@ -35,14 +35,14 @@ unsigned int uart_input_clock_divider(void);
/* Bitbang out one byte on an 8n1 UART through the output function set_tx(). */ /* Bitbang out one byte on an 8n1 UART through the output function set_tx(). */
void uart_bitbang_tx_byte(unsigned char data, void (*set_tx)(int line_state)); void uart_bitbang_tx_byte(unsigned char data, void (*set_tx)(int line_state));
void uart_init(int idx); void uart_init(unsigned int idx);
void uart_tx_byte(int idx, unsigned char data); void uart_tx_byte(unsigned int idx, unsigned char data);
void uart_tx_flush(int idx); void uart_tx_flush(unsigned int idx);
unsigned char uart_rx_byte(int idx); unsigned char uart_rx_byte(unsigned int idx);
uintptr_t uart_platform_base(int idx); uintptr_t uart_platform_base(unsigned int idx);
static inline void *uart_platform_baseptr(int idx) static inline void *uart_platform_baseptr(unsigned int idx)
{ {
return (void *)uart_platform_base(idx); return (void *)uart_platform_base(idx);
} }

View File

@ -3,7 +3,7 @@
#include <console/uart.h> #include <console/uart.h>
#include <mainboard/addressmap.h> #include <mainboard/addressmap.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return VIRT_UART_BASE; return VIRT_UART_BASE;
} }

View File

@ -4,7 +4,7 @@
#define VEXPRESS_UART0_IO_ADDRESS (0x10009000) #define VEXPRESS_UART0_IO_ADDRESS (0x10009000)
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return VEXPRESS_UART0_IO_ADDRESS; return VEXPRESS_UART0_IO_ADDRESS;
} }

View File

@ -5,26 +5,26 @@
#include <boot/coreboot_tables.h> #include <boot/coreboot_tables.h>
static uint8_t *buf = (void *)0; static uint8_t *buf = (void *)0;
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t) buf; return (uintptr_t) buf;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return 0; return 0;
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
} }

View File

@ -4,7 +4,7 @@
#include <console/uart.h> #include <console/uart.h>
#include <mainboard/addressmap.h> #include <mainboard/addressmap.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t) QEMU_VIRT_UART0; return (uintptr_t) QEMU_VIRT_UART0;
} }

View File

@ -3,7 +3,7 @@
#include <types.h> #include <types.h>
#include <console/uart.h> #include <console/uart.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t) 0x02100000; return (uintptr_t) 0x02100000;
} }

View File

@ -8,7 +8,7 @@
* be provided exactly once and only by the UART that is used for console. * be provided exactly once and only by the UART that is used for console.
*/ */
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return get_uart_base(idx); return get_uart_base(idx);
} }

View File

@ -3,7 +3,7 @@
#include <console/uart.h> #include <console/uart.h>
#include <soc/southbridge.h> #include <soc/southbridge.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (CONFIG_UART_FOR_CONSOLE < 0 || CONFIG_UART_FOR_CONSOLE > 1) if (CONFIG_UART_FOR_CONSOLE < 0 || CONFIG_UART_FOR_CONSOLE > 1)
return 0; return 0;

View File

@ -94,7 +94,7 @@ unsigned int uart_platform_refclk(void)
return uart_hclk(uart); return uart_hclk(uart);
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return CONFIG_CONSOLE_SERIAL_UART_ADDRESS; return CONFIG_CONSOLE_SERIAL_UART_ADDRESS;
} }

View File

@ -37,7 +37,7 @@ static void uart_lpss_init(const struct device *dev, uintptr_t baseaddr)
} }
#if CONFIG(INTEL_LPSS_UART_FOR_CONSOLE) #if CONFIG(INTEL_LPSS_UART_FOR_CONSOLE)
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (idx == CONFIG_UART_FOR_CONSOLE) if (idx == CONFIG_UART_FOR_CONSOLE)
return CONFIG_CONSOLE_UART_BASE_ADDRESS; return CONFIG_CONSOLE_UART_BASE_ADDRESS;

View File

@ -8,9 +8,9 @@
#define MY_PCI_DEV(SEGBUS, DEV, FN) \ #define MY_PCI_DEV(SEGBUS, DEV, FN) \
((((SEGBUS)&0xFFF) << 20) | (((DEV)&0x1F) << 15) | (((FN)&0x07) << 12)) ((((SEGBUS)&0xFFF) << 20) | (((DEV)&0x1F) << 15) | (((FN)&0x07) << 12))
uintptr_t uart_platform_base(int idx); uintptr_t uart_platform_base(unsigned int idx);
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t)pci_io_read_config32( return (uintptr_t)pci_io_read_config32(
MY_PCI_DEV(0, CONFIG_HSUART_DEV, idx), MY_PCI_DEV(0, CONFIG_HSUART_DEV, idx),

View File

@ -8,7 +8,7 @@ unsigned int uart_platform_refclk(void)
return 44236800; return 44236800;
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return UART_BASE_ADDRESS; return UART_BASE_ADDRESS;
} }

View File

@ -139,22 +139,22 @@ static int mtk_uart_tst_byte(void)
return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR; return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
mtk_uart_init(); mtk_uart_init();
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return mtk_uart_rx_byte(); return mtk_uart_rx_byte();
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
mtk_uart_tx_byte(data); mtk_uart_tx_byte(data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
mtk_uart_tx_flush(); mtk_uart_tx_flush();
} }

View File

@ -76,12 +76,12 @@ static int tegra124_uart_tst_byte(struct tegra124_uart *uart_ptr)
return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR; return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR;
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
//Default to UART A //Default to UART A
unsigned int base = 0x70006000; unsigned int base = 0x70006000;
//UARTs A - E are mapped as index 0 - 4 //UARTs A - E are mapped as index 0 - 4
if ((idx < 5) && (idx >= 0)) { if ((idx < 5)) {
if (idx != 1) { //not UART B if (idx != 1) { //not UART B
base += idx * 0x100; base += idx * 0x100;
} else { } else {
@ -91,25 +91,25 @@ uintptr_t uart_platform_base(int idx)
return base; return base;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx); struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx);
tegra124_uart_init(uart_ptr); tegra124_uart_init(uart_ptr);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx); struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx);
return tegra124_uart_rx_byte(uart_ptr); return tegra124_uart_rx_byte(uart_ptr);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx); struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx);
tegra124_uart_tx_byte(uart_ptr, data); tegra124_uart_tx_byte(uart_ptr, data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx); struct tegra124_uart *uart_ptr = uart_platform_baseptr(idx);
tegra124_uart_tx_flush(uart_ptr); tegra124_uart_tx_flush(uart_ptr);

View File

@ -82,22 +82,22 @@ static int tegra210_uart_tst_byte(void)
return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR; return (read8(&uart_ptr->lsr) & UART8250_LSR_DR) == UART8250_LSR_DR;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
tegra210_uart_init(); tegra210_uart_init();
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
tegra210_uart_tx_byte(data); tegra210_uart_tx_byte(data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
tegra210_uart_tx_flush(); tegra210_uart_tx_flush();
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return tegra210_uart_rx_byte(); return tegra210_uart_rx_byte();
} }

View File

@ -87,7 +87,7 @@ static int valid_data = 0;
/* Received data */ /* Received data */
static unsigned int word = 0; static unsigned int word = 0;
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
int num_of_chars = 1; int num_of_chars = 1;
void *base = uart_board_param.uart_dm_base; void *base = uart_board_param.uart_dm_base;
@ -195,7 +195,7 @@ unsigned int msm_boot_uart_dm_init(void *uart_dm_base)
* *
* Initializes clocks, GPIO and UART controller. * Initializes clocks, GPIO and UART controller.
*/ */
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
/* Note int idx isn't used in this driver. */ /* Note int idx isn't used in this driver. */
void *dm_base; void *dm_base;
@ -230,7 +230,7 @@ void ipq40xx_uart_init(void)
* @brief uart_tx_flush - transmits a string of data * @brief uart_tx_flush - transmits a string of data
* @param idx: string to transmit * @param idx: string to transmit
*/ */
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
void *base = uart_board_param.uart_dm_base; void *base = uart_board_param.uart_dm_base;
@ -244,7 +244,7 @@ void uart_tx_flush(int idx)
* *
* Returns the character read from serial port. * Returns the character read from serial port.
*/ */
uint8_t uart_rx_byte(int idx) uint8_t uart_rx_byte(unsigned int idx)
{ {
uint8_t byte; uint8_t byte;

View File

@ -160,7 +160,7 @@ msm_boot_uart_dm_read(unsigned int *data, int *count, int wait)
} }
#endif #endif
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
int num_of_chars = 1; int num_of_chars = 1;
unsigned int tx_data = 0; unsigned int tx_data = 0;
@ -269,7 +269,7 @@ static unsigned int msm_boot_uart_dm_init(void *uart_dm_base)
* *
* Initializes clocks, GPIO and UART controller. * Initializes clocks, GPIO and UART controller.
*/ */
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
/* Note int idx isn't used in this driver. */ /* Note int idx isn't used in this driver. */
void *dm_base; void *dm_base;
@ -316,7 +316,7 @@ uint32_t uartmem_getbaseaddr(void)
* uart_tx_flush - transmits a string of data * uart_tx_flush - transmits a string of data
* @s: string to transmit * @s: string to transmit
*/ */
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
void *base = uart_board_param.uart_dm_base; void *base = uart_board_param.uart_dm_base;
@ -351,7 +351,7 @@ int uart_can_rx_byte(void)
* *
* Returns the character read from serial port. * Returns the character read from serial port.
*/ */
uint8_t uart_rx_byte(int idx) uint8_t uart_rx_byte(unsigned int idx)
{ {
uint8_t byte; uint8_t byte;

View File

@ -90,7 +90,7 @@ static int valid_data = 0;
static unsigned int word = 0; static unsigned int word = 0;
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
int num_of_chars = 1; int num_of_chars = 1;
void *base = uart_board_param.uart_dm_base; void *base = uart_board_param.uart_dm_base;
@ -199,7 +199,7 @@ unsigned int msm_boot_uart_dm_init(void *uart_dm_base)
* *
* Initializes clocks, GPIO and UART controller. * Initializes clocks, GPIO and UART controller.
*/ */
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
/* Note int idx isn't used in this driver. */ /* Note int idx isn't used in this driver. */
void *dm_base; void *dm_base;
@ -231,7 +231,7 @@ void qcs405_uart_init(void)
* @brief uart_tx_flush - transmits a string of data * @brief uart_tx_flush - transmits a string of data
* @param idx: string to transmit * @param idx: string to transmit
*/ */
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
void *base = uart_board_param.uart_dm_base; void *base = uart_board_param.uart_dm_base;
@ -246,7 +246,7 @@ void uart_tx_flush(int idx)
* *
* Returns the character read from serial port. * Returns the character read from serial port.
*/ */
uint8_t uart_rx_byte(int idx) uint8_t uart_rx_byte(unsigned int idx)
{ {
uint8_t byte; uint8_t byte;

View File

@ -34,7 +34,7 @@
#define UART_RX_PACK_VECTOR0 0xF #define UART_RX_PACK_VECTOR0 0xF
#define UART_RX_PACK_VECTOR2 0x00 #define UART_RX_PACK_VECTOR2 0x00
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
struct qup_regs *regs = qup[idx].regs; struct qup_regs *regs = qup[idx].regs;
@ -43,7 +43,7 @@ void uart_tx_flush(int idx)
; ;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
struct qup_regs *regs = qup[idx].regs; struct qup_regs *regs = qup[idx].regs;
unsigned int reg_value; unsigned int reg_value;
@ -113,7 +113,7 @@ void uart_init(int idx)
write32(&regs->geni_s_cmd0, START_UART_RX); write32(&regs->geni_s_cmd0, START_UART_RX);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct qup_regs *regs = qup[idx].regs; struct qup_regs *regs = qup[idx].regs;
@ -122,7 +122,7 @@ unsigned char uart_rx_byte(int idx)
return 0; return 0;
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct qup_regs *regs = qup[idx].regs; struct qup_regs *regs = qup[idx].regs;
@ -134,7 +134,7 @@ void uart_tx_byte(int idx, unsigned char data)
write32(&regs->geni_tx_fifon, data); write32(&regs->geni_tx_fifon, data);
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t)qup[idx].regs; return (uintptr_t)qup[idx].regs;
} }

View File

@ -16,22 +16,22 @@ static void set_tx(int line_state)
gpio_set(UART_TX_PIN, line_state); gpio_set(UART_TX_PIN, line_state);
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
gpio_output(UART_TX_PIN, 1); gpio_output(UART_TX_PIN, 1);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
uart_bitbang_tx_byte(data, set_tx); uart_bitbang_tx_byte(data, set_tx);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
/* unnecessary, PIO Tx means transaction is over when tx_byte returns */ /* unnecessary, PIO Tx means transaction is over when tx_byte returns */
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return 0; /* not implemented */ return 0; /* not implemented */
} }

View File

@ -10,22 +10,22 @@ static void set_tx(int line_state)
gpio_set(UART_TX_PIN, line_state); gpio_set(UART_TX_PIN, line_state);
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
gpio_output(UART_TX_PIN, 1); gpio_output(UART_TX_PIN, 1);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
uart_bitbang_tx_byte(data, set_tx); uart_bitbang_tx_byte(data, set_tx);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
/* unnecessary, PIO Tx means transaction is over when tx_byte returns */ /* unnecessary, PIO Tx means transaction is over when tx_byte returns */
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
return 0; /* not implemented */ return 0; /* not implemented */
} }

View File

@ -9,7 +9,7 @@ unsigned int uart_platform_refclk(void)
return OSC_HZ; return OSC_HZ;
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return CONFIG_CONSOLE_SERIAL_UART_ADDRESS; return CONFIG_CONSOLE_SERIAL_UART_ADDRESS;
} }

View File

@ -100,7 +100,7 @@ static void exynos5_uart_tx_flush(struct s5p_uart *uart)
while (read32(&uart->ufstat) & 0x1ff0000); while (read32(&uart->ufstat) & 0x1ff0000);
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (idx < 4) if (idx < 4)
return 0x12c00000 + idx * 0x10000; return 0x12c00000 + idx * 0x10000;
@ -108,25 +108,25 @@ uintptr_t uart_platform_base(int idx)
return 0; return 0;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
exynos5_init_dev(uart); exynos5_init_dev(uart);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
return exynos5_uart_rx_byte(uart); return exynos5_uart_rx_byte(uart);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
exynos5_uart_tx_byte(uart, data); exynos5_uart_tx_byte(uart, data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
exynos5_uart_tx_flush(uart); exynos5_uart_tx_flush(uart);

View File

@ -92,7 +92,7 @@ static void exynos5_uart_tx_byte(struct s5p_uart *uart, unsigned char data)
write8(&uart->utxh, data); write8(&uart->utxh, data);
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (idx < 4) if (idx < 4)
return 0x12c00000 + idx * 0x10000; return 0x12c00000 + idx * 0x10000;
@ -100,25 +100,25 @@ uintptr_t uart_platform_base(int idx)
return 0; return 0;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
exynos5_init_dev(uart); exynos5_init_dev(uart);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
return exynos5_uart_rx_byte(uart); return exynos5_uart_rx_byte(uart);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct s5p_uart *uart = uart_platform_baseptr(idx); struct s5p_uart *uart = uart_platform_baseptr(idx);
exynos5_uart_tx_byte(uart, data); exynos5_uart_tx_byte(uart, data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
/* Exynos5250 implements this too. */ /* Exynos5250 implements this too. */
} }

View File

@ -6,7 +6,7 @@
#include <soc/addressmap.h> #include <soc/addressmap.h>
#include <soc/clock.h> #include <soc/clock.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
if (idx < 2) if (idx < 2)
return FU540_UART(idx); return FU540_UART(idx);

View File

@ -135,7 +135,7 @@ unsigned int uart_platform_refclk(void)
return 48000000; return 48000000;
} }
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
const unsigned int bases[] = { const unsigned int bases[] = {
0x44e09000, 0x48022000, 0x48024000, 0x44e09000, 0x48022000, 0x48024000,
@ -146,7 +146,7 @@ uintptr_t uart_platform_base(int idx)
return 0; return 0;
} }
void uart_init(int idx) void uart_init(unsigned int idx)
{ {
struct am335x_uart *uart = uart_platform_baseptr(idx); struct am335x_uart *uart = uart_platform_baseptr(idx);
uint16_t div = (uint16_t) uart_baudrate_divisor( uint16_t div = (uint16_t) uart_baudrate_divisor(
@ -154,19 +154,19 @@ void uart_init(int idx)
am335x_uart_init(uart, div); am335x_uart_init(uart, div);
} }
unsigned char uart_rx_byte(int idx) unsigned char uart_rx_byte(unsigned int idx)
{ {
struct am335x_uart *uart = uart_platform_baseptr(idx); struct am335x_uart *uart = uart_platform_baseptr(idx);
return am335x_uart_rx_byte(uart); return am335x_uart_rx_byte(uart);
} }
void uart_tx_byte(int idx, unsigned char data) void uart_tx_byte(unsigned int idx, unsigned char data)
{ {
struct am335x_uart *uart = uart_platform_baseptr(idx); struct am335x_uart *uart = uart_platform_baseptr(idx);
am335x_uart_tx_byte(uart, data); am335x_uart_tx_byte(uart, data);
} }
void uart_tx_flush(int idx) void uart_tx_flush(unsigned int idx)
{ {
} }

View File

@ -2,7 +2,7 @@
#include <console/uart.h> #include <console/uart.h>
uintptr_t uart_platform_base(int idx) uintptr_t uart_platform_base(unsigned int idx)
{ {
return (uintptr_t)(0xFEDC6000 + 0x2000 * (idx & 1)); return (uintptr_t)(0xFEDC6000 + 0x2000 * (idx & 1));
} }