diff options
author | Vadim Bendebury <vbendeb@chromium.org> | 2014-04-23 13:42:22 -0700 |
---|---|---|
committer | Marc Jones <marc.jones@se-eng.com> | 2014-12-30 20:17:39 +0100 |
commit | 4f062ae381db3c7e5b1b64ce22db374f63f048d7 (patch) | |
tree | c19003460ee720272ea702a1c047376dd1366604 | |
parent | 6a3f92f55c7288e1b8cde00088188bcd9171139e (diff) | |
download | coreboot-4f062ae381db3c7e5b1b64ce22db374f63f048d7.tar.xz |
ipq8064: prepare include files before adding UART driver
These patch modifies .h files to match the coreboot API. A few more
significant changes are:
- UART specific fields removed from common board structure in cdp.h.
These fields are set at compile time in u-boot (where this
structure comes from), they will be set in a different structure in
the UART driver in an upcoming patch.
- an inline wrapper is added in gpio.h to provide GPIO API the UART
driver expects.
- the ipq_configure_gpio() is passed the descriptor placed in ro data.
BUG=chrome-os-partner:27784
TEST=none
Original-Change-Id: Id49507fb0c72ef993a89b538cd417b6c86ae3786
Original-Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/196661
Original-Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
(cherry picked from commit ea400f1b720eb671fa411c5fd1df7efd14fdacd6)
Signed-off-by: Marc Jones <marc.jones@se-eng.com>
Change-Id: I2c7be09675b225de99be3c94b22e9ee2ebb2cb9a
Reviewed-on: http://review.coreboot.org/7873
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
-rw-r--r-- | src/soc/qualcomm/ipq806x/include/cdp.h | 10 | ||||
-rw-r--r-- | src/soc/qualcomm/ipq806x/include/gpio.h | 8 | ||||
-rw-r--r-- | src/soc/qualcomm/ipq806x/include/gsbi.h | 2 | ||||
-rw-r--r-- | src/soc/qualcomm/ipq806x/include/ipq_uart.h | 5 |
4 files changed, 11 insertions, 14 deletions
diff --git a/src/soc/qualcomm/ipq806x/include/cdp.h b/src/soc/qualcomm/ipq806x/include/cdp.h index 22ba192bc4..15f91cb169 100644 --- a/src/soc/qualcomm/ipq806x/include/cdp.h +++ b/src/soc/qualcomm/ipq806x/include/cdp.h @@ -106,20 +106,12 @@ typedef struct { /* Board specific parameters */ typedef struct { - unsigned int machid; - unsigned int ddr_size; - unsigned int uart_gsbi; - unsigned int uart_gsbi_base; - unsigned int uart_dm_base; - unsigned int clk_dummy; #if 0 - uart_clk_mnd_t mnd_value; unsigned int gmac_gpio_count; gpio_func_data_t *gmac_gpio; ipq_gmac_board_cfg_t gmac_cfg[IPQ_GMAC_NMACS]; flash_desc flashdesc; spinorflash_params_t flash_param; - gpio_func_data_t dbg_uart_gpio[NO_OF_DBG_UART_GPIOS]; #endif } __attribute__ ((__packed__)) board_ipq806x_params_t; @@ -141,5 +133,5 @@ static inline int gmac_cfg_is_valid(ipq_gmac_board_cfg_t *cfg) #endif unsigned int get_board_index(unsigned machid); -void ipq_configure_gpio(gpio_func_data_t *gpio, unsigned count); +void ipq_configure_gpio(const gpio_func_data_t *gpio, unsigned count); #endif diff --git a/src/soc/qualcomm/ipq806x/include/gpio.h b/src/soc/qualcomm/ipq806x/include/gpio.h index 678da0dcae..efaf30e996 100644 --- a/src/soc/qualcomm/ipq806x/include/gpio.h +++ b/src/soc/qualcomm/ipq806x/include/gpio.h @@ -92,4 +92,12 @@ void gpio_tlmm_config_get(gpio_t gpio, unsigned int *func, void gpio_io_config_set(gpio_t gpio, unsigned int out); void gpio_io_config_get(gpio_t gpio, unsigned int *in, unsigned int *out); + +/* Keep this to maintain backwards compatibility with the vendor API. */ +static inline void gpio_tlmm_config(unsigned int gpio, unsigned int func, + unsigned int dir, unsigned int pull, + unsigned int drvstr, unsigned int enable) +{ + gpio_tlmm_config_set(gpio, func, pull, drvstr, enable); +} #endif // __SOC_QUALCOMM_IPQ806X_GPIO_H_ diff --git a/src/soc/qualcomm/ipq806x/include/gsbi.h b/src/soc/qualcomm/ipq806x/include/gsbi.h index d2ba2b310a..c12d6fd7b4 100644 --- a/src/soc/qualcomm/ipq806x/include/gsbi.h +++ b/src/soc/qualcomm/ipq806x/include/gsbi.h @@ -19,8 +19,6 @@ #ifndef __GSBI_H_ #define __GSBI_H_ -#include <asm/io.h> - /* GSBI Registers */ #define GSBI_CTRL_REG(base) ((base) + 0x0) diff --git a/src/soc/qualcomm/ipq806x/include/ipq_uart.h b/src/soc/qualcomm/ipq806x/include/ipq_uart.h index 6fff0468f8..da943b909a 100644 --- a/src/soc/qualcomm/ipq806x/include/ipq_uart.h +++ b/src/soc/qualcomm/ipq806x/include/ipq_uart.h @@ -32,14 +32,13 @@ #ifndef __UART_DM_H__ #define __UART_DM_H__ -#include <asm/io.h> -#include "common.h" +#define PERIPH_BLK_BLSP 0 + #define MSM_BOOT_UART_DM_EXTR_BITS(value, start_pos, end_pos) \ ((value << (32 - end_pos))\ >> (32 - (end_pos - start_pos))) -extern void dsb(void); #define PACK_CHARS_INTO_WORDS(a, cnt, word) { \ word = 0; \ int j; \ |