diff options
author | Neil Armstrong <neil.armstrong@linaro.org> | 2024-05-28 10:31:54 +0200 |
---|---|---|
committer | Caleb Connolly <caleb.connolly@linaro.org> | 2024-07-05 12:04:48 +0200 |
commit | 8daee349e5aaa7363a0248e7830978b6f7946d9a (patch) | |
tree | 1dd95a14ce38d927e70996a8b135d624c03fb243 /arch | |
parent | e948fe5f01dafa07f6fc3e1fcae1354983e5f5a7 (diff) | |
download | u-boot-8daee349e5aaa7363a0248e7830978b6f7946d9a.zip u-boot-8daee349e5aaa7363a0248e7830978b6f7946d9a.tar.gz u-boot-8daee349e5aaa7363a0248e7830978b6f7946d9a.tar.bz2 |
arm: mach-snapdragon: gpio: introduce msm_special_pin_data
In order to help setup pin configuration for special pins (UFS, SDCard),
introduce the msm_special_pin_data struct largely inspired from the
Linux conterpart but with only U-Boot required fields.
This struct is added to the pins_data to allow specifying the special
pins data for each SoC.
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-snapdragon/include/mach/gpio.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/arm/mach-snapdragon/include/mach/gpio.h b/arch/arm/mach-snapdragon/include/mach/gpio.h index 53c6ae0..cc8f405 100644 --- a/arch/arm/mach-snapdragon/include/mach/gpio.h +++ b/arch/arm/mach-snapdragon/include/mach/gpio.h @@ -10,11 +10,25 @@ #include <asm/types.h> #include <stdbool.h> +struct msm_special_pin_data { + char *name; + + u32 ctl_reg; + u32 io_reg; + + unsigned pull_bit:5; + unsigned drv_bit:5; + + unsigned oe_bit:5; + unsigned in_bit:5; + unsigned out_bit:5; +}; + struct msm_pin_data { int pin_count; const unsigned int *pin_offsets; - /* Index of first special pin, these are ignored for now */ unsigned int special_pins_start; + const struct msm_special_pin_data *special_pins_data; }; static inline u32 qcom_pin_offset(const unsigned int *offs, unsigned int selector) |