Lines Matching refs:rk628
10 static int rk628_calc_mux_offset(struct rk628 *rk628, int mux, int reg, int offset) in rk628_calc_mux_offset() argument
16 rk628_i2c_read(rk628, reg, &orig); in rk628_calc_mux_offset()
61 int rk628_misc_pinctrl_set_mux(struct rk628 *rk628, int gpio, int mux) in rk628_misc_pinctrl_set_mux() argument
80 val = rk628_calc_mux_offset(rk628, mux, iomux_base, offset); in rk628_misc_pinctrl_set_mux()
82 rk628_i2c_write(rk628, iomux_base, val); in rk628_misc_pinctrl_set_mux()
90 int rk628_misc_gpio_get_value(struct rk628 *rk628, int gpio) in rk628_misc_gpio_get_value() argument
107 rk628_i2c_read(rk628, data_reg, &val); in rk628_misc_gpio_get_value()
115 int rk628_misc_gpio_set_value(struct rk628 *rk628, int gpio, int value) in rk628_misc_gpio_set_value() argument
142 rk628_i2c_write(rk628, data_reg, val); in rk628_misc_gpio_set_value()
149 int rk628_misc_gpio_set_direction(struct rk628 *rk628, int gpio, int direction) in rk628_misc_gpio_set_direction() argument
176 rk628_i2c_write(rk628, dir_reg, val); in rk628_misc_gpio_set_direction()
182 int rk628_misc_iomux_init(struct rk628 *rk628) in rk628_misc_iomux_init() argument
191 val = rk628_calc_mux_offset(rk628, mux, iomux_base, offset); in rk628_misc_iomux_init()
192 rk628_i2c_write(rk628, iomux_base, val); in rk628_misc_iomux_init()
200 int rk628_misc_gpio_direction_input(struct rk628 *rk628, int gpio) in rk628_misc_gpio_direction_input() argument
202 rk628_misc_pinctrl_set_mux(rk628, gpio, GPIO_FUNC); in rk628_misc_gpio_direction_input()
204 rk628_misc_gpio_set_direction(rk628, gpio, GPIO_DIRECTION_IN); in rk628_misc_gpio_direction_input()
210 int rk628_misc_gpio_direction_output(struct rk628 *rk628, int gpio, int value) in rk628_misc_gpio_direction_output() argument
213 rk628_misc_pinctrl_set_mux(rk628, gpio, GPIO_FUNC); in rk628_misc_gpio_direction_output()
214 rk628_misc_gpio_set_value(rk628, gpio, value); in rk628_misc_gpio_direction_output()
215 rk628_misc_gpio_set_direction(rk628, gpio, GPIO_DIRECTION_OUT); in rk628_misc_gpio_direction_output()
220 int rk628_misc_gpio_set_pull_highz_up_down(struct rk628 *rk628, int gpio, int pull) in rk628_misc_gpio_set_pull_highz_up_down() argument
293 rk628_i2c_write(rk628, pull_reg, val); in rk628_misc_gpio_set_pull_highz_up_down()
300 int rk628_misc_gpio_test_all(struct rk628 *rk628) in rk628_misc_gpio_test_all() argument
311 rk628_misc_gpio_direction_output(rk628, rk628_pin_iomux_groups[i].pins, 1); in rk628_misc_gpio_test_all()
321 rk628_misc_gpio_direction_output(rk628, rk628_pin_iomux_groups[i].pins, 0); in rk628_misc_gpio_test_all()