Lines Matching refs:pin

110 						   unsigned pin)  in intel_get_community()  argument
117 if (pin >= community->pin_base && in intel_get_community()
118 pin < community->pin_base + community->npins) in intel_get_community()
122 dev_warn(pctrl->dev, "failed to find community for pin %u\n", pin); in intel_get_community()
126 static void __iomem *intel_get_padcfg(struct intel_pinctrl *pctrl, unsigned pin, in intel_get_padcfg() argument
132 community = intel_get_community(pctrl, pin); in intel_get_padcfg()
136 padno = pin_to_padno(community, pin); in intel_get_padcfg()
140 static bool intel_pad_owned_by_host(struct intel_pinctrl *pctrl, unsigned pin) in intel_pad_owned_by_host() argument
146 community = intel_get_community(pctrl, pin); in intel_pad_owned_by_host()
152 padno = pin_to_padno(community, pin); in intel_pad_owned_by_host()
161 static bool intel_pad_acpi_mode(struct intel_pinctrl *pctrl, unsigned pin) in intel_pad_acpi_mode() argument
167 community = intel_get_community(pctrl, pin); in intel_pad_acpi_mode()
173 padno = pin_to_padno(community, pin); in intel_pad_acpi_mode()
181 static bool intel_pad_locked(struct intel_pinctrl *pctrl, unsigned pin) in intel_pad_locked() argument
187 community = intel_get_community(pctrl, pin); in intel_pad_locked()
193 padno = pin_to_padno(community, pin); in intel_pad_locked()
203 if (value & BIT(pin % community->gpp_size)) in intel_pad_locked()
208 if (value & BIT(pin % community->gpp_size)) in intel_pad_locked()
214 static bool intel_pad_usable(struct intel_pinctrl *pctrl, unsigned pin) in intel_pad_usable() argument
216 return intel_pad_owned_by_host(pctrl, pin) && in intel_pad_usable()
217 !intel_pad_locked(pctrl, pin); in intel_pad_usable()
246 unsigned pin) in intel_pin_dbg_show() argument
252 if (!intel_pad_owned_by_host(pctrl, pin)) { in intel_pin_dbg_show()
257 cfg0 = readl(intel_get_padcfg(pctrl, pin, PADCFG0)); in intel_pin_dbg_show()
258 cfg1 = readl(intel_get_padcfg(pctrl, pin, PADCFG1)); in intel_pin_dbg_show()
268 locked = intel_pad_locked(pctrl, pin); in intel_pin_dbg_show()
269 acpi = intel_pad_acpi_mode(pctrl, pin); in intel_pin_dbg_show()
360 unsigned pin) in intel_gpio_request_enable() argument
369 if (!intel_pad_usable(pctrl, pin)) { in intel_gpio_request_enable()
374 padcfg0 = intel_get_padcfg(pctrl, pin, PADCFG0); in intel_gpio_request_enable()
392 unsigned pin, bool input) in intel_gpio_set_direction() argument
401 padcfg0 = intel_get_padcfg(pctrl, pin, PADCFG0); in intel_gpio_set_direction()
424 static int intel_config_get(struct pinctrl_dev *pctldev, unsigned pin, in intel_config_get() argument
432 if (!intel_pad_owned_by_host(pctrl, pin)) in intel_config_get()
435 value = readl(intel_get_padcfg(pctrl, pin, PADCFG1)); in intel_config_get()
488 static int intel_config_set_pull(struct intel_pinctrl *pctrl, unsigned pin, in intel_config_set_pull() argument
500 padcfg1 = intel_get_padcfg(pctrl, pin, PADCFG1); in intel_config_set_pull()
557 static int intel_config_set(struct pinctrl_dev *pctldev, unsigned pin, in intel_config_set() argument
563 if (!intel_pad_usable(pctrl, pin)) in intel_config_set()
571 ret = intel_config_set_pull(pctrl, pin, configs[i]); in intel_config_set()
657 unsigned pin = irqd_to_hwirq(d); in intel_gpio_irq_ack() local
661 community = intel_get_community(pctrl, pin); in intel_gpio_irq_ack()
663 unsigned padno = pin_to_padno(community, pin); in intel_gpio_irq_ack()
678 unsigned pin = irqd_to_hwirq(d); in intel_gpio_irq_mask_unmask() local
683 community = intel_get_community(pctrl, pin); in intel_gpio_irq_mask_unmask()
685 unsigned padno = pin_to_padno(community, pin); in intel_gpio_irq_mask_unmask()
717 unsigned pin = irqd_to_hwirq(d); in intel_gpio_irq_type() local
722 reg = intel_get_padcfg(pctrl, pin, PADCFG0); in intel_gpio_irq_type()
731 if (intel_pad_acpi_mode(pctrl, pin)) { in intel_gpio_irq_type()
732 dev_warn(pctrl->dev, "pin %u cannot be used as IRQ\n", pin); in intel_gpio_irq_type()
772 unsigned pin = irqd_to_hwirq(d); in intel_gpio_irq_wake() local
776 community = intel_get_community(pctrl, pin); in intel_gpio_irq_wake()
780 padno = pin_to_padno(community, pin); in intel_gpio_irq_wake()
799 dev_dbg(pctrl->dev, "%sable wake for pin %u\n", on ? "en" : "dis", pin); in intel_gpio_irq_wake()