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>
This commit is contained in:

committed by
Caleb Connolly

parent
e948fe5f01
commit
8daee349e5
@@ -10,11 +10,25 @@
|
|||||||
#include <asm/types.h>
|
#include <asm/types.h>
|
||||||
#include <stdbool.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 {
|
struct msm_pin_data {
|
||||||
int pin_count;
|
int pin_count;
|
||||||
const unsigned int *pin_offsets;
|
const unsigned int *pin_offsets;
|
||||||
/* Index of first special pin, these are ignored for now */
|
|
||||||
unsigned int special_pins_start;
|
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)
|
static inline u32 qcom_pin_offset(const unsigned int *offs, unsigned int selector)
|
||||||
|
Reference in New Issue
Block a user