Lines Matching defs:pin

3308 	 * JZ4730 function and IRQ registers support two-bits-per-pin
3575 unsigned int pin, unsigned int reg, bool set)
3577 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3578 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3598 unsigned int pin, u8 reg, bool set)
3600 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3607 unsigned int pin)
3610 pin / PINS_PER_GPIO_CHIP);
3614 unsigned int pin, u8 reg_upper, u8 reg_lower, u8 value)
3617 * JZ4730 function and IRQ registers support two-bits-per-pin
3620 unsigned int idx = pin % JZ4730_PINS_PER_PAIRED_REG;
3622 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3623 u8 reg = (pin % PINS_PER_GPIO_CHIP) < JZ4730_PINS_PER_PAIRED_REG ? reg_lower : reg_upper;
3630 unsigned int pin, unsigned int reg)
3632 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3633 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3645 unsigned int pin = gc->base + offset;
3648 if (ingenic_get_pin_config(jzpc, pin, JZ4770_GPIO_INT) ||
3649 ingenic_get_pin_config(jzpc, pin, JZ4770_GPIO_PAT1))
3653 if (!ingenic_get_pin_config(jzpc, pin, JZ4730_GPIO_GPDIR))
3658 if (ingenic_get_pin_config(jzpc, pin, JZ4740_GPIO_SELECT))
3661 if (ingenic_get_pin_config(jzpc, pin, JZ4740_GPIO_DIR))
3718 int pin, int func)
3720 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3721 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3723 dev_dbg(jzpc->dev, "set pin P%c%u to function %u\n",
3727 ingenic_shadow_config_pin(jzpc, pin, JZ4770_GPIO_INT, false);
3728 ingenic_shadow_config_pin(jzpc, pin, GPIO_MSK, false);
3729 ingenic_shadow_config_pin(jzpc, pin, JZ4770_GPIO_PAT1, func & 0x2);
3730 ingenic_shadow_config_pin(jzpc, pin, JZ4770_GPIO_PAT0, func & 0x1);
3731 ingenic_shadow_config_pin_load(jzpc, pin);
3733 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_INT, false);
3734 ingenic_config_pin(jzpc, pin, GPIO_MSK, false);
3735 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_PAT1, func & 0x2);
3736 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_PAT0, func & 0x1);
3738 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_FUNC, true);
3739 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_TRIG, func & 0x2);
3740 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_SELECT, func & 0x1);
3742 ingenic_config_pin(jzpc, pin, JZ4730_GPIO_GPIER, false);
3743 jz4730_config_pin_function(jzpc, pin, JZ4730_GPIO_GPAUR, JZ4730_GPIO_GPALR, func);
3786 unsigned int pin, bool input)
3789 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3790 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3792 dev_dbg(pctldev->dev, "set pin P%c%u to %sput\n",
3796 ingenic_shadow_config_pin(jzpc, pin, JZ4770_GPIO_INT, false);
3797 ingenic_shadow_config_pin(jzpc, pin, GPIO_MSK, true);
3798 ingenic_shadow_config_pin(jzpc, pin, JZ4770_GPIO_PAT1, input);
3799 ingenic_shadow_config_pin_load(jzpc, pin);
3801 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_INT, false);
3802 ingenic_config_pin(jzpc, pin, GPIO_MSK, true);
3803 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_PAT1, input);
3805 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_SELECT, false);
3806 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_DIR, !input);
3807 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_FUNC, false);
3809 ingenic_config_pin(jzpc, pin, JZ4730_GPIO_GPIER, false);
3810 ingenic_config_pin(jzpc, pin, JZ4730_GPIO_GPDIR, !input);
3811 jz4730_config_pin_function(jzpc, pin, JZ4730_GPIO_GPAUR, JZ4730_GPIO_GPALR, 0);
3826 unsigned int pin, unsigned long *config)
3830 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3831 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3837 pullup = ingenic_get_pin_config(jzpc, pin, X2000_GPIO_PEPU) &&
3838 !ingenic_get_pin_config(jzpc, pin, X2000_GPIO_PEPD) &&
3840 pulldown = ingenic_get_pin_config(jzpc, pin, X2000_GPIO_PEPD) &&
3841 !ingenic_get_pin_config(jzpc, pin, X2000_GPIO_PEPU) &&
3846 unsigned int idxh = (pin % half) * 2;
3862 pull = !ingenic_get_pin_config(jzpc, pin, JZ4770_GPIO_PEN);
3864 pull = !ingenic_get_pin_config(jzpc, pin, JZ4740_GPIO_PULL_DIS);
3866 pull = ingenic_get_pin_config(jzpc, pin, JZ4730_GPIO_GPPUR);
3899 arg = !!ingenic_get_pin_config(jzpc, pin, reg);
3910 arg = !!ingenic_get_pin_config(jzpc, pin, reg);
3922 unsigned int pin, unsigned int bias)
3927 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPD, false);
3928 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPU, true);
3932 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPU, false);
3933 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPD, true);
3938 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPU, false);
3939 ingenic_config_pin(jzpc, pin, X2000_GPIO_PEPD, false);
3943 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
3945 unsigned int idxh = (pin % half) * 2;
3946 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
3961 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_PEN, !bias);
3963 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_PULL_DIS, !bias);
3965 ingenic_config_pin(jzpc, pin, JZ4730_GPIO_GPPUR, bias);
3970 unsigned int pin, bool enable)
3973 ingenic_config_pin(jzpc, pin, X2000_GPIO_SMT, enable);
3975 ingenic_config_pin(jzpc, pin, X1830_GPIO_SMT, enable);
3979 unsigned int pin, bool high)
3982 ingenic_config_pin(jzpc, pin, JZ4770_GPIO_PAT0, high);
3984 ingenic_config_pin(jzpc, pin, JZ4740_GPIO_DATA, high);
3986 ingenic_config_pin(jzpc, pin, JZ4730_GPIO_DATA, high);
3990 unsigned int pin, unsigned int slew)
3993 ingenic_config_pin(jzpc, pin, X2000_GPIO_SR, slew);
3995 ingenic_config_pin(jzpc, pin, X1830_GPIO_SR, slew);
3998 static int ingenic_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
4002 unsigned int idx = pin % PINS_PER_GPIO_CHIP;
4003 unsigned int offt = pin / PINS_PER_GPIO_CHIP;
4026 dev_dbg(jzpc->dev, "disable pull-over for pin P%c%u\n",
4028 ingenic_set_bias(jzpc, pin, GPIO_PULL_DIS);
4034 dev_dbg(jzpc->dev, "set pull-up for pin P%c%u\n",
4036 ingenic_set_bias(jzpc, pin, GPIO_PULL_UP);
4042 dev_dbg(jzpc->dev, "set pull-down for pin P%c%u\n",
4044 ingenic_set_bias(jzpc, pin, GPIO_PULL_DOWN);
4051 ingenic_set_schmitt_trigger(jzpc, pin, arg);
4055 ret = pinctrl_gpio_direction_output(pin);
4059 ingenic_set_output_level(jzpc, pin, arg);
4066 ingenic_set_slew_rate(jzpc, pin, arg);