Skip to content
Snippets Groups Projects
user avatar
Marek Behún authored
[ Upstream commit baf8d689 ]

The PWM pins on North Bridge on Armada 37xx can be configured into PWM
or GPIO functions. When in PWM function, each pin can also be configured
to drive low on 0 and tri-state on 1 (LED mode).

The current definitions handle this by declaring two pin groups for each
pin:
- group "pwmN" with functions "pwm" and "gpio"
- group "ledN_od" ("od" for open drain) with functions "led" and "gpio"

This is semantically incorrect. The correct definition for each pin
should be one group with three functions: "pwm", "led" and "gpio".

Change the "pwmN" groups to support "led" function.

Remove "ledN_od" groups. This cannot break backwards compatibility with
older device trees: no device tree uses it since there is no PWM driver
for this SOC yet. Also "ledN_od" groups are not even documented.

Fixes: b835d695 ("pinctrl: armada-37xx: swap polarity on LED group")
Signed-off-by: default avatarMarek Behún <kabel@kernel.org>
Acked-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210719112938.27594-1-kabel@kernel.org


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
ef5395fb
History
Name Last commit Last update
..
abilis,tb10x-iomux.txt
actions,s500-pinctrl.yaml
actions,s700-pinctrl.txt
actions,s900-pinctrl.txt
allwinner,sun4i-a10-pinctrl.yaml
aspeed,ast2400-pinctrl.yaml
aspeed,ast2500-pinctrl.yaml
aspeed,ast2600-pinctrl.yaml
atmel,at91-pinctrl.txt
atmel,at91-pio4-pinctrl.txt
axis,artpec6-pinctrl.txt
berlin,pinctrl.txt
bitmain,bm1880-pinctrl.txt
brcm,bcm11351-pinctrl.txt
brcm,bcm2835-gpio.txt
brcm,bcm4708-pinmux.txt
brcm,cygnus-pinmux.txt
brcm,iproc-gpio.txt
brcm,ns2-pinmux.txt
brcm,nsp-gpio.txt
brcm,nsp-pinmux.txt
cirrus,lochnagar.yaml
cirrus,madera.yaml
cnxt,cx92755-pinctrl.txt
cortina,gemini-pinctrl.txt
fsl,imx-pinctrl.txt
fsl,imx25-pinctrl.txt
fsl,imx27-pinctrl.txt
fsl,imx35-pinctrl.txt
fsl,imx50-pinctrl.txt
fsl,imx51-pinctrl.txt
fsl,imx53-pinctrl.txt
fsl,imx6dl-pinctrl.txt
fsl,imx6q-pinctrl.txt
fsl,imx6sl-pinctrl.txt
fsl,imx6sll-pinctrl.txt
fsl,imx6sx-pinctrl.txt
fsl,imx6ul-pinctrl.txt
fsl,imx7d-pinctrl.txt
fsl,imx7ulp-pinctrl.txt
fsl,imx8mm-pinctrl.yaml
fsl,imx8mn-pinctrl.yaml
fsl,imx8mp-pinctrl.yaml
fsl,imx8mq-pinctrl.yaml
fsl,mxs-pinctrl.txt
fsl,vf610-pinctrl.txt
img,pistachio-pinctrl.txt
ingenic,pinctrl.yaml
intel,lgm-io.yaml
lantiq,pinctrl-falcon.txt
lantiq,pinctrl-xway.txt
marvell,armada-370-pinctrl.txt
marvell,armada-375-pinctrl.txt
marvell,armada-37xx-pinctrl.txt
marvell,armada-38x-pinctrl.txt
marvell,armada-39x-pinctrl.txt
marvell,armada-98dx3236-pinctrl.txt
marvell,armada-xp-pinctrl.txt
marvell,dove-pinctrl.txt
marvell,kirkwood-pinctrl.txt
marvell,mvebu-pinctrl.txt
marvell,orion-pinctrl.txt
mediatek,mt6779-pinctrl.yaml
meson,pinctrl.txt
microchip,pic32-pinctrl.txt
mscc,ocelot-pinctrl.txt
nuvoton,npcm7xx-pinctrl.txt
nvidia,tegra114-pinmux.txt
nvidia,tegra124-dpaux-padctl.txt
nvidia,tegra124-pinmux.txt
nvidia,tegra124-xusb-padctl.txt
nvidia,tegra194-pinmux.txt
nvidia,tegra20-pinmux.txt
nvidia,tegra210-pinmux.txt
nvidia,tegra30-pinmux.txt
nxp,lpc1850-scu.txt
oxnas,pinctrl.txt
pincfg-node.yaml
pinctrl-atlas7.txt
pinctrl-bindings.txt
pinctrl-max77620.txt
pinctrl-mcp23s08.txt
pinctrl-mt65xx.txt
pinctrl-mt6797.txt
pinctrl-mt7622.txt
pinctrl-mt8183.txt
pinctrl-mt8192.yaml
pinctrl-palmas.txt
pinctrl-rk805.txt
pinctrl-single.txt
pinctrl-sirf.txt
pinctrl-st.txt
pinctrl-sx150x.txt
pinctrl-vt8500.txt
pinctrl-zx.txt
pinctrl_spear.txt
pinmux-node.yaml
qcom,apq8064-pinctrl.txt
qcom,apq8084-pinctrl.txt
qcom,ipq4019-pinctrl.txt