mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 1/2] ARM: baltos: use GPIO names for DIP switches
@ 2022-08-03  9:31 yegorslists
  2022-08-03  9:31 ` [PATCH 2/2] ARM: baltos: use GPIO name for mPCIe power enable pin yegorslists
  0 siblings, 1 reply; 2+ messages in thread
From: yegorslists @ 2022-08-03  9:31 UTC (permalink / raw)
  To: barebox

From: Yegor Yefremov <yegorslists@googlemail.com>

Switch to gpio_find_by_name() method to get the required input lines.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
---
 arch/arm/boards/vscom-baltos/board.c   |  25 ++++--
 arch/arm/dts/am335x-baltos-minimal.dts | 120 +++++++++++++++++++++++++
 2 files changed, 137 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boards/vscom-baltos/board.c b/arch/arm/boards/vscom-baltos/board.c
index 9229df09d4..30553d1838 100644
--- a/arch/arm/boards/vscom-baltos/board.c
+++ b/arch/arm/boards/vscom-baltos/board.c
@@ -49,6 +49,7 @@ static uint8_t get_dip_switch(uint16_t id, uint32_t rev)
 {
 	uint16_t maj, min;
 	uint8_t dip = 0;
+	int inputs[4];
 
 	maj = rev >> 16;
 	min = rev & 0xffff;
@@ -59,10 +60,14 @@ static uint8_t get_dip_switch(uint16_t id, uint32_t rev)
 	switch(id) {
 		case 214:
 		case 215:
-			dip = !gpio_get_value(44);
-			dip += !gpio_get_value(45) << 1;
-			dip += !gpio_get_value(46) << 2;
-			dip += !gpio_get_value(47) << 3;
+			inputs[0] = gpio_find_by_name("SW2_0_alt");
+			inputs[1] = gpio_find_by_name("SW2_1_alt");
+			inputs[2] = gpio_find_by_name("SW2_2_alt");
+			inputs[3] = gpio_find_by_name("SW2_3_alt");
+			dip = !gpio_get_value(inputs[0]);
+			dip += !gpio_get_value(inputs[1]) << 1;
+			dip += !gpio_get_value(inputs[2]) << 2;
+			dip += !gpio_get_value(inputs[3]) << 3;
 			break;
 		case 212:
 		case 221:
@@ -72,10 +77,14 @@ static uint8_t get_dip_switch(uint16_t id, uint32_t rev)
 		case 226:
 		case 227:
 		case 230:
-			dip = !gpio_get_value(82);
-			dip += !gpio_get_value(83) << 1;
-			dip += !gpio_get_value(105) << 2;
-			dip += !gpio_get_value(106) << 3;
+			inputs[0] = gpio_find_by_name("SW2_0");
+			inputs[1] = gpio_find_by_name("SW2_1");
+			inputs[2] = gpio_find_by_name("SW2_2");
+			inputs[3] = gpio_find_by_name("SW2_3");
+			dip = !gpio_get_value(inputs[0]);
+			dip += !gpio_get_value(inputs[1]) << 1;
+			dip += !gpio_get_value(inputs[2]) << 2;
+			dip += !gpio_get_value(inputs[3]) << 3;
 			break;
 	}
 
diff --git a/arch/arm/dts/am335x-baltos-minimal.dts b/arch/arm/dts/am335x-baltos-minimal.dts
index 1544e2cc29..e9d57696d1 100644
--- a/arch/arm/dts/am335x-baltos-minimal.dts
+++ b/arch/arm/dts/am335x-baltos-minimal.dts
@@ -45,6 +45,18 @@
 };
 
 &am33xx_pinmux {
+	pinctrl-names = "default";
+	pinctrl-0 = <&dip_switch_pins>;
+
+	dip_switch_pins: pinmux_dip_switch_pins {
+		pinctrl-single,pins = <
+			AM33XX_PADCONF(AM335X_PIN_GPMC_AD12, PIN_INPUT_PULLUP, MUX_MODE7)
+			AM33XX_PADCONF(AM335X_PIN_GPMC_AD13, PIN_INPUT_PULLUP, MUX_MODE7)
+			AM33XX_PADCONF(AM335X_PIN_GPMC_AD14, PIN_INPUT_PULLUP, MUX_MODE7)
+			AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_INPUT_PULLUP, MUX_MODE7)
+		>;
+	};
+
 	mmc1_pins: pinmux_mmc1_pins {
 		pinctrl-single,pins = <
 			0xf0 (INPUT_EN | PULL_UP) MUX_MODE0	/* mmc0_dat3.mmc0_dat3 */
@@ -449,3 +461,111 @@
 &gpio0 {
 	ti,no-reset-on-init;
 };
+
+&gpio1 {
+	gpio-line-names =
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"SW2_0_alt",
+		"SW2_1_alt",
+		"SW2_2_alt",
+		"SW2_3_alt",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC";
+};
+
+&gpio2 {
+	gpio-line-names =
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"SW2_0",
+		"SW2_1",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC";
+};
+
+&gpio3 {
+	gpio-line-names =
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"SW2_2",
+		"SW2_3",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC",
+		"NC";
+};
-- 
2.17.0




^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH 2/2] ARM: baltos: use GPIO name for mPCIe power enable pin
  2022-08-03  9:31 [PATCH 1/2] ARM: baltos: use GPIO names for DIP switches yegorslists
@ 2022-08-03  9:31 ` yegorslists
  0 siblings, 0 replies; 2+ messages in thread
From: yegorslists @ 2022-08-03  9:31 UTC (permalink / raw)
  To: barebox

From: Yegor Yefremov <yegorslists@googlemail.com>

Switch to gpio_find_by_name() method to get the required input line.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
---
 arch/arm/boards/vscom-baltos/board.c   | 4 +++-
 arch/arm/dts/am335x-baltos-minimal.dts | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boards/vscom-baltos/board.c b/arch/arm/boards/vscom-baltos/board.c
index 30553d1838..b9ce356264 100644
--- a/arch/arm/boards/vscom-baltos/board.c
+++ b/arch/arm/boards/vscom-baltos/board.c
@@ -98,6 +98,7 @@ static int baltos_read_eeprom(void)
 	int rc;
 	unsigned char mac_addr[6];
 	uint8_t dip;
+	int mpcie_pwr_pin;
 
 	if (!of_machine_is_compatible("vscom,onrisc"))
 		return 0;
@@ -145,7 +146,8 @@ static int baltos_read_eeprom(void)
 	globalvar_add_simple("board.id", var_buf);
 
 	/* enable mPCIe slot */
-	gpio_direction_output(100, 1);
+	mpcie_pwr_pin = gpio_find_by_name("3G_PWR_EN");
+	gpio_direction_output(mpcie_pwr_pin, 1);
 
 	/* configure output signals of the external GPIO controller */
 	if (hw_param.SystemId == 210 || hw_param.SystemId == 211) {
diff --git a/arch/arm/dts/am335x-baltos-minimal.dts b/arch/arm/dts/am335x-baltos-minimal.dts
index e9d57696d1..28a550aa84 100644
--- a/arch/arm/dts/am335x-baltos-minimal.dts
+++ b/arch/arm/dts/am335x-baltos-minimal.dts
@@ -540,7 +540,7 @@
 		"NC",
 		"NC",
 		"NC",
-		"NC",
+		"3G_PWR_EN",
 		"NC",
 		"NC",
 		"NC",
-- 
2.17.0




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-08-03  9:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-03  9:31 [PATCH 1/2] ARM: baltos: use GPIO names for DIP switches yegorslists
2022-08-03  9:31 ` [PATCH 2/2] ARM: baltos: use GPIO name for mPCIe power enable pin yegorslists

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox