hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/pinctrl/meson/pinctrl-meson8.c
....@@ -1,14 +1,8 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * Pin controller and GPIO driver for Amlogic Meson8 and Meson8m2.
34 *
45 * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
5
- *
6
- * This program is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU General Public License
8
- * version 2 as published by the Free Software Foundation.
9
- *
10
- * You should have received a copy of the GNU General Public License
11
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
126 */
137
148 #include <dt-bindings/gpio/meson8-gpio.h>
....@@ -506,6 +500,32 @@
506500 GPIO_GROUP(GPIOZ_12),
507501 GPIO_GROUP(GPIOZ_13),
508502 GPIO_GROUP(GPIOZ_14),
503
+ GPIO_GROUP(CARD_0),
504
+ GPIO_GROUP(CARD_1),
505
+ GPIO_GROUP(CARD_2),
506
+ GPIO_GROUP(CARD_3),
507
+ GPIO_GROUP(CARD_4),
508
+ GPIO_GROUP(CARD_5),
509
+ GPIO_GROUP(CARD_6),
510
+ GPIO_GROUP(BOOT_0),
511
+ GPIO_GROUP(BOOT_1),
512
+ GPIO_GROUP(BOOT_2),
513
+ GPIO_GROUP(BOOT_3),
514
+ GPIO_GROUP(BOOT_4),
515
+ GPIO_GROUP(BOOT_5),
516
+ GPIO_GROUP(BOOT_6),
517
+ GPIO_GROUP(BOOT_7),
518
+ GPIO_GROUP(BOOT_8),
519
+ GPIO_GROUP(BOOT_9),
520
+ GPIO_GROUP(BOOT_10),
521
+ GPIO_GROUP(BOOT_11),
522
+ GPIO_GROUP(BOOT_12),
523
+ GPIO_GROUP(BOOT_13),
524
+ GPIO_GROUP(BOOT_14),
525
+ GPIO_GROUP(BOOT_15),
526
+ GPIO_GROUP(BOOT_16),
527
+ GPIO_GROUP(BOOT_17),
528
+ GPIO_GROUP(BOOT_18),
509529
510530 /* bank X */
511531 GROUP(sd_d0_a, 8, 5),
....@@ -774,7 +794,7 @@
774794 GROUP(hdmi_cec_ao, 0, 17),
775795 };
776796
777
-static const char * const gpio_groups[] = {
797
+static const char * const gpio_periphs_groups[] = {
778798 "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4",
779799 "GPIOX_5", "GPIOX_6", "GPIOX_7", "GPIOX_8", "GPIOX_9",
780800 "GPIOX_10", "GPIOX_11", "GPIOX_12", "GPIOX_13", "GPIOX_14",
....@@ -996,7 +1016,7 @@
9961016 };
9971017
9981018 static struct meson_pmx_func meson8_cbus_functions[] = {
999
- FUNCTION(gpio),
1019
+ FUNCTION(gpio_periphs),
10001020 FUNCTION(sd_a),
10011021 FUNCTION(sdxc_a),
10021022 FUNCTION(pcm_a),
....@@ -1083,6 +1103,7 @@
10831103 .num_funcs = ARRAY_SIZE(meson8_aobus_functions),
10841104 .num_banks = ARRAY_SIZE(meson8_aobus_banks),
10851105 .pmx_ops = &meson8_pmx_ops,
1106
+ .parse_dt = &meson8_aobus_parse_dt_extra,
10861107 };
10871108
10881109 static const struct of_device_id meson8_pinctrl_dt_match[] = {