Lines Matching refs:offset

53 static int lp3943_gpio_request(struct gpio_chip *chip, unsigned offset)  in lp3943_gpio_request()  argument
59 if (test_and_set_bit(offset, &lp3943->pin_used)) in lp3943_gpio_request()
65 static void lp3943_gpio_free(struct gpio_chip *chip, unsigned offset) in lp3943_gpio_free() argument
70 clear_bit(offset, &lp3943->pin_used); in lp3943_gpio_free()
73 static int lp3943_gpio_set_mode(struct lp3943_gpio *lp3943_gpio, u8 offset, in lp3943_gpio_set_mode() argument
79 return lp3943_update_bits(lp3943, mux[offset].reg, mux[offset].mask, in lp3943_gpio_set_mode()
80 val << mux[offset].shift); in lp3943_gpio_set_mode()
83 static int lp3943_gpio_direction_input(struct gpio_chip *chip, unsigned offset) in lp3943_gpio_direction_input() argument
87 lp3943_gpio->input_mask |= BIT(offset); in lp3943_gpio_direction_input()
89 return lp3943_gpio_set_mode(lp3943_gpio, offset, LP3943_GPIO_IN); in lp3943_gpio_direction_input()
93 struct gpio_chip *chip, unsigned offset) in lp3943_get_gpio_in_status() argument
98 switch (offset) { in lp3943_get_gpio_in_status()
104 offset = offset - 8; in lp3943_get_gpio_in_status()
114 return !!(read & BIT(offset)); in lp3943_get_gpio_in_status()
118 struct gpio_chip *chip, unsigned offset) in lp3943_get_gpio_out_status() argument
125 err = lp3943_read_byte(lp3943, mux[offset].reg, &read); in lp3943_get_gpio_out_status()
129 read = (read & mux[offset].mask) >> mux[offset].shift; in lp3943_get_gpio_out_status()
139 static int lp3943_gpio_get(struct gpio_chip *chip, unsigned offset) in lp3943_gpio_get() argument
152 if (lp3943_gpio->input_mask & BIT(offset)) in lp3943_gpio_get()
153 return lp3943_get_gpio_in_status(lp3943_gpio, chip, offset); in lp3943_gpio_get()
155 return lp3943_get_gpio_out_status(lp3943_gpio, chip, offset); in lp3943_gpio_get()
158 static void lp3943_gpio_set(struct gpio_chip *chip, unsigned offset, int value) in lp3943_gpio_set() argument
168 lp3943_gpio_set_mode(lp3943_gpio, offset, data); in lp3943_gpio_set()
171 static int lp3943_gpio_direction_output(struct gpio_chip *chip, unsigned offset, in lp3943_gpio_direction_output() argument
176 lp3943_gpio_set(chip, offset, value); in lp3943_gpio_direction_output()
177 lp3943_gpio->input_mask &= ~BIT(offset); in lp3943_gpio_direction_output()