Lines Matching refs:pin
25 #define PIN_OFFSET(pin) (pin % MAX_GPIO_PER_REG) argument
26 #define REG_OFFSET(base, reg, pin) (base + reg + (pin / MAX_GPIO_PER_REG) \ argument
70 int (*p2o)(int pin); /* pin_to_offset */
80 static inline u32 is_plgpio_set(void __iomem *base, u32 pin, u32 reg) in is_plgpio_set() argument
82 u32 offset = PIN_OFFSET(pin); in is_plgpio_set()
83 void __iomem *reg_off = REG_OFFSET(base, reg, pin); in is_plgpio_set()
89 static inline void plgpio_reg_set(void __iomem *base, u32 pin, u32 reg) in plgpio_reg_set() argument
91 u32 offset = PIN_OFFSET(pin); in plgpio_reg_set()
92 void __iomem *reg_off = REG_OFFSET(base, reg, pin); in plgpio_reg_set()
98 static inline void plgpio_reg_reset(void __iomem *base, u32 pin, u32 reg) in plgpio_reg_reset() argument
100 u32 offset = PIN_OFFSET(pin); in plgpio_reg_reset()
101 void __iomem *reg_off = REG_OFFSET(base, reg, pin); in plgpio_reg_reset()
364 int regs_count, count, pin, offset, i = 0; in plgpio_irq_handler() local
395 pin = plgpio->o2p(offset); in plgpio_irq_handler()
396 if (pin == -1) in plgpio_irq_handler()
399 pin = offset; in plgpio_irq_handler()
402 pin = i * MAX_GPIO_PER_REG + pin; in plgpio_irq_handler()
404 irq_find_mapping(gc->irqdomain, pin)); in plgpio_irq_handler()
417 static int spear310_p2o(int pin) in spear310_p2o() argument
419 int offset = pin; in spear310_p2o()
421 if (pin <= 27) in spear310_p2o()
423 else if (pin <= 33) in spear310_p2o()
425 else if (pin <= 97) in spear310_p2o()
427 else if (pin <= 101) in spear310_p2o()
428 offset = 101 - pin; in spear310_p2o()