aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm63xx/dts
diff options
context:
space:
mode:
authorDaniel González Cabanelas <dgcbueu@gmail.com>2020-05-19 15:56:29 +0200
committerÁlvaro Fernández Rojas <noltari@gmail.com>2021-02-23 11:01:20 +0100
commit50cb3a750f96c4a0f97602b7242068e9bb239fc4 (patch)
tree8c5b4ebb79d2131b494bcff01e428f6038358638 /target/linux/bcm63xx/dts
parent09bbf5581713695cbf6bcb5791e9be02ff8c27fe (diff)
downloadupstream-50cb3a750f96c4a0f97602b7242068e9bb239fc4.tar.gz
upstream-50cb3a750f96c4a0f97602b7242068e9bb239fc4.tar.bz2
upstream-50cb3a750f96c4a0f97602b7242068e9bb239fc4.zip
bcm63xx: pinctrl: fix BCM6348 groups
The current driver has some troubles: - Some groupings are wrong. - The pinctrl group0 owns pins never used (at least in Openwrt) for any pinmux. The driver hijacks all the pins on the group avoiding any other use, spite they're free. I.e. for buttons, causing this kernel error: [ 4.735928] gpio-keys-polled keys: unable to claim gpio 479, err=-22 [ 4.742642] gpio-keys-polled: probe of keys failed with error -22 - Minor errors about groupings on the documentation - Missing "diag" grouping in dtsi - Wrong groupings in dtsi Fix it by setting the correct groups. And relax the pin capturing, letting the gpios belonging to any group to be used for other purposes like buttons. This was the behavior with stock firmwares and old OpenWrt versions which never caused any trouble. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Diffstat (limited to 'target/linux/bcm63xx/dts')
-rw-r--r--target/linux/bcm63xx/dts/bcm6348.dtsi9
1 files changed, 7 insertions, 2 deletions
diff --git a/target/linux/bcm63xx/dts/bcm6348.dtsi b/target/linux/bcm63xx/dts/bcm6348.dtsi
index 1e04486909..38bb71e53c 100644
--- a/target/linux/bcm63xx/dts/bcm6348.dtsi
+++ b/target/linux/bcm63xx/dts/bcm6348.dtsi
@@ -94,7 +94,7 @@
};
pinctrl_mii_snoop: mii_snoop {
- function = "ext_ephy";
+ function = "mii_snoop";
groups = "group1", "group4";
};
@@ -125,7 +125,12 @@
pinctrl_utopia: utopia {
function = "utopia";
- groups = "group0", "group1", "group3";
+ groups = "group1", "group3", "group4";
+ };
+
+ pinctrl_diag: diag {
+ function = "diag";
+ groups = "group0", "group1", "group2", "group3", "group4";
};
};