diff options
author | Yidi Lin <yidilin@chromium.org> | 2024-09-05 17:10:33 +0800 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2024-09-12 16:57:11 +0000 |
commit | f3b698462975a5b23004affca45a6dd1a3ff46a6 (patch) | |
tree | a94a1af1b963d6140081e5c4b8c2e4d50304d974 /src/soc/mediatek/mt8195 | |
parent | ffc48178de6eee2e4efd33b4943f922475badc71 (diff) |
soc/mediatek: Remove redundant struct pad_func and PAD_* definitions
Clean up redundant `struct pad_func` and `PAD_*` definitions. This patch
also refactors the PAD_* macros by,
- Repurposing PAD_FUNC and dropping PAD_FUNC_SEL.
- Adding PAD_FUNC_DOWN and PAD_FUNC_UP to avoid the implicit
initialization.
BUG=none
TEST=emerge-{elm, kukui, asurada, cherry, corsola, geralt, rauru} coreboot
Change-Id: I12b8f6749015bff52988208a7c3aa01e952612c6
Signed-off-by: Yidi Lin <yidilin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84222
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/mediatek/mt8195')
-rw-r--r-- | src/soc/mediatek/mt8195/i2c.c | 41 | ||||
-rw-r--r-- | src/soc/mediatek/mt8195/pcie.c | 21 | ||||
-rw-r--r-- | src/soc/mediatek/mt8195/spi.c | 46 |
3 files changed, 43 insertions, 65 deletions
diff --git a/src/soc/mediatek/mt8195/i2c.c b/src/soc/mediatek/mt8195/i2c.c index e4041075d3..1fa9608fb9 100644 --- a/src/soc/mediatek/mt8195/i2c.c +++ b/src/soc/mediatek/mt8195/i2c.c @@ -53,45 +53,38 @@ struct mtk_i2c mtk_i2c_bus_controller[] = { _Static_assert(ARRAY_SIZE(mtk_i2c_bus_controller) == I2C_BUS_NUMBER, "Wrong size of mtk_i2c_bus_controller"); -struct pad_func { - gpio_t gpio; - u8 func; -}; - -#define PAD_FUNC(name, func) {GPIO(name), PAD_##name##_FUNC_##func} - static const struct pad_func i2c_funcs[I2C_BUS_NUMBER][2] = { [0] = { - PAD_FUNC(SDA0, SDA0), - PAD_FUNC(SCL0, SCL0), + PAD_FUNC_UP(SDA0, SDA0), + PAD_FUNC_UP(SCL0, SCL0), }, [1] = { - PAD_FUNC(SDA1, SDA1), - PAD_FUNC(SCL1, SCL1), + PAD_FUNC_UP(SDA1, SDA1), + PAD_FUNC_UP(SCL1, SCL1), }, [2] = { - PAD_FUNC(SDA2, SDA2), - PAD_FUNC(SCL2, SCL2), + PAD_FUNC_UP(SDA2, SDA2), + PAD_FUNC_UP(SCL2, SCL2), }, [3] = { - PAD_FUNC(SDA3, SDA3), - PAD_FUNC(SCL3, SCL3), + PAD_FUNC_UP(SDA3, SDA3), + PAD_FUNC_UP(SCL3, SCL3), }, [4] = { - PAD_FUNC(SDA4, SDA4), - PAD_FUNC(SCL4, SCL4), + PAD_FUNC_UP(SDA4, SDA4), + PAD_FUNC_UP(SCL4, SCL4), }, [5] = { - PAD_FUNC(HDMIRX_SCL, SCL5), - PAD_FUNC(HDMIRX_SDA, SDA5), + PAD_FUNC_DOWN(HDMIRX_SCL, SCL5), + PAD_FUNC_DOWN(HDMIRX_SDA, SDA5), }, [6] = { - PAD_FUNC(HDMITX_SCL, SCL6), - PAD_FUNC(HDMITX_SDA, SDA6), + PAD_FUNC_DOWN(HDMITX_SCL, SCL6), + PAD_FUNC_DOWN(HDMITX_SDA, SDA6), }, [7] = { - PAD_FUNC(HDMIRX_HTPLG, SCL7), - PAD_FUNC(HDMIRX_PWR5V, SDA7), + PAD_FUNC_DOWN(HDMIRX_HTPLG, SCL7), + PAD_FUNC_DOWN(HDMIRX_PWR5V, SDA7), }, }; @@ -104,7 +97,7 @@ static void mtk_i2c_set_gpio_pinmux(uint8_t bus) for (size_t i = 0; i < 2; i++) { gpio_set_mode(ptr[i].gpio, ptr[i].func); if (bus <= I2C4) - gpio_set_pull(ptr[i].gpio, GPIO_PULL_ENABLE, GPIO_PULL_UP); + gpio_set_pull(ptr[i].gpio, GPIO_PULL_ENABLE, ptr[i].select); } } diff --git a/src/soc/mediatek/mt8195/pcie.c b/src/soc/mediatek/mt8195/pcie.c index 2676207db7..19b4c93a3b 100644 --- a/src/soc/mediatek/mt8195/pcie.c +++ b/src/soc/mediatek/mt8195/pcie.c @@ -10,23 +10,16 @@ #define PCIE_REG_BASE_PORT0 0x112f0000 -struct pad_func { - gpio_t gpio; - u8 func; -}; - -#define PAD_FUNC(name, func) {GPIO(name), PAD_##name##_FUNC_##func} - static const struct pad_func pcie_pins[2][3] = { { - PAD_FUNC(PCIE_WAKE_N, WAKEN), - PAD_FUNC(PCIE_PERESET_N, PERSTN), - PAD_FUNC(PCIE_CLKREQ_N, CLKREQN), + PAD_FUNC_UP(PCIE_WAKE_N, WAKEN), + PAD_FUNC_UP(PCIE_PERESET_N, PERSTN), + PAD_FUNC_UP(PCIE_CLKREQ_N, CLKREQN), }, { - PAD_FUNC(CMMCLK0, PERSTN_1), - PAD_FUNC(CMMCLK1, CLKREQN_1), - PAD_FUNC(CMMCLK2, WAKEN_1), + PAD_FUNC_UP(CMMCLK0, PERSTN_1), + PAD_FUNC_UP(CMMCLK1, CLKREQN_1), + PAD_FUNC_UP(CMMCLK2, WAKEN_1), }, }; @@ -37,7 +30,7 @@ static void mtk_pcie_set_pinmux(uint8_t port) for (i = 0; i < ARRAY_SIZE(pcie_pins[port]); i++) { gpio_set_mode(pins[i].gpio, pins[i].func); - gpio_set_pull(pins[i].gpio, GPIO_PULL_ENABLE, GPIO_PULL_UP); + gpio_set_pull(pins[i].gpio, GPIO_PULL_ENABLE, pins[i].select); } } diff --git a/src/soc/mediatek/mt8195/spi.c b/src/soc/mediatek/mt8195/spi.c index 98b0d54a08..6307ff8fae 100644 --- a/src/soc/mediatek/mt8195/spi.c +++ b/src/soc/mediatek/mt8195/spi.c @@ -34,50 +34,42 @@ struct mtk_spi_bus spi_bus[SPI_BUS_NUMBER] = { }, }; -struct pad_func { - u8 pin_id; - u8 func; -}; - -#define PAD_FUNC(name, func) {PAD_##name##_ID, PAD_##name##_FUNC_##func} -#define PAD_FUNC_GPIO(name) {PAD_##name##_ID, 0} - static const struct pad_func pad0_funcs[SPI_BUS_NUMBER][4] = { { - PAD_FUNC(SPIM0_MI, SPIM0_MI), + PAD_FUNC_DOWN(SPIM0_MI, SPIM0_MI), PAD_FUNC_GPIO(SPIM0_CSB), - PAD_FUNC(SPIM0_MO, SPIM0_MO), - PAD_FUNC(SPIM0_CLK, SPIM0_CLK), + PAD_FUNC_DOWN(SPIM0_MO, SPIM0_MO), + PAD_FUNC_DOWN(SPIM0_CLK, SPIM0_CLK), }, { - PAD_FUNC(SPIM1_MI, SPIM1_MI), + PAD_FUNC_DOWN(SPIM1_MI, SPIM1_MI), PAD_FUNC_GPIO(SPIM1_CSB), - PAD_FUNC(SPIM1_MO, SPIM1_MO), - PAD_FUNC(SPIM1_CLK, SPIM1_CLK), + PAD_FUNC_DOWN(SPIM1_MO, SPIM1_MO), + PAD_FUNC_DOWN(SPIM1_CLK, SPIM1_CLK), }, { - PAD_FUNC(SPIM2_MI, SPIM2_MI), + PAD_FUNC_DOWN(SPIM2_MI, SPIM2_MI), PAD_FUNC_GPIO(SPIM2_CSB), - PAD_FUNC(SPIM2_MO, SPIM2_MO), - PAD_FUNC(SPIM2_CLK, SPIM2_CLK), + PAD_FUNC_DOWN(SPIM2_MO, SPIM2_MO), + PAD_FUNC_DOWN(SPIM2_CLK, SPIM2_CLK), }, { - PAD_FUNC(PWRAP_SPI_MI, SPIM3_MI), + PAD_FUNC_DOWN(PWRAP_SPI_MI, SPIM3_MI), PAD_FUNC_GPIO(PWRAP_SPI_CSN), - PAD_FUNC(PWRAP_SPI_MO, SPIM3_MO), - PAD_FUNC(PWRAP_SPI_CK, SPIM3_CLK), + PAD_FUNC_DOWN(PWRAP_SPI_MO, SPIM3_MO), + PAD_FUNC_DOWN(PWRAP_SPI_CK, SPIM3_CLK), }, { - PAD_FUNC(DGI_D3, SPIM4_MI), + PAD_FUNC_DOWN(DGI_D3, SPIM4_MI), PAD_FUNC_GPIO(DGI_D2), - PAD_FUNC(DGI_D1, SPIM4_MO), - PAD_FUNC(DGI_D0, SPIM4_CLK), + PAD_FUNC_DOWN(DGI_D1, SPIM4_MO), + PAD_FUNC_DOWN(DGI_D0, SPIM4_CLK), }, { - PAD_FUNC(DGI_D7, SPIM5_MI), + PAD_FUNC_DOWN(DGI_D7, SPIM5_MI), PAD_FUNC_GPIO(DGI_D6), - PAD_FUNC(DGI_D5, SPIM5_MO), - PAD_FUNC(DGI_D4, SPIM5_CLK), + PAD_FUNC_DOWN(DGI_D5, SPIM5_MO), + PAD_FUNC_DOWN(DGI_D4, SPIM5_CLK), }, }; @@ -89,7 +81,7 @@ void mtk_spi_set_gpio_pinmux(unsigned int bus, enum spi_pad_mask pad_select) ptr = pad0_funcs[bus]; for (int i = 0; i < 4; i++) - gpio_set_mode((gpio_t){.id = ptr[i].pin_id}, ptr[i].func); + gpio_set_mode(ptr[i].gpio, ptr[i].func); } static const struct spi_ctrlr spi_flash_ctrlr = { |