diff mbox series

[3/3] gpio: axp/sunxi: Remove virtual VBUS detection GPIO

Message ID 20230122234623.1636-4-samuel@sholland.org
State Accepted
Commit 09cbd3858f156e0461c0c939f23cf3c76ef95dcc
Delegated to: Andre Przywara
Headers show
Series power: Model X-Powers PMIC VBUS detection using the driver model | expand

Commit Message

Samuel Holland Jan. 22, 2023, 11:46 p.m. UTC
Now that this functionality is modeled using the device tree and
regulator uclass, the named GPIO is not referenced anywhere. Remove it.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/include/asm/arch-sunxi/gpio.h |  1 -
 drivers/gpio/axp_gpio.c                | 21 ++++-----------------
 drivers/gpio/sunxi_gpio.c              |  6 +-----
 include/axp209.h                       |  1 -
 include/axp221.h                       |  1 -
 include/axp809.h                       |  1 -
 include/axp818.h                       |  1 -
 7 files changed, 5 insertions(+), 27 deletions(-)

Comments

Andre Przywara April 28, 2023, 12:26 a.m. UTC | #1
On Sun, 22 Jan 2023 17:46:22 -0600
Samuel Holland <samuel@sholland.org> wrote:

> Now that this functionality is modeled using the device tree and
> regulator uclass, the named GPIO is not referenced anywhere. Remove it.
> 
> Signed-off-by: Samuel Holland <samuel@sholland.org>

There is indeed no config left that would set AXP0-VBUS-DETECT, so this
code is indeed no longer needed:

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Queued for sunxi/master.

Cheers,
Andre

> ---
> 
>  arch/arm/include/asm/arch-sunxi/gpio.h |  1 -
>  drivers/gpio/axp_gpio.c                | 21 ++++-----------------
>  drivers/gpio/sunxi_gpio.c              |  6 +-----
>  include/axp209.h                       |  1 -
>  include/axp221.h                       |  1 -
>  include/axp809.h                       |  1 -
>  include/axp818.h                       |  1 -
>  7 files changed, 5 insertions(+), 27 deletions(-)
> 
> diff --git a/arch/arm/include/asm/arch-sunxi/gpio.h b/arch/arm/include/asm/arch-sunxi/gpio.h
> index 437e86479c..6eaeece4e2 100644
> --- a/arch/arm/include/asm/arch-sunxi/gpio.h
> +++ b/arch/arm/include/asm/arch-sunxi/gpio.h
> @@ -209,7 +209,6 @@ enum sunxi_gpio_number {
>  
>  /* Virtual AXP0 GPIOs */
>  #define SUNXI_GPIO_AXP0_PREFIX "AXP0-"
> -#define SUNXI_GPIO_AXP0_VBUS_DETECT	4
>  #define SUNXI_GPIO_AXP0_VBUS_ENABLE	5
>  #define SUNXI_GPIO_AXP0_GPIO_COUNT	6
>  
> diff --git a/drivers/gpio/axp_gpio.c b/drivers/gpio/axp_gpio.c
> index 35585dc8ac..49672193ff 100644
> --- a/drivers/gpio/axp_gpio.c
> +++ b/drivers/gpio/axp_gpio.c
> @@ -36,18 +36,11 @@ static int axp_gpio_direction_input(struct udevice *dev, unsigned pin)
>  {
>  	u8 reg;
>  
> -	switch (pin) {
> -#ifndef CONFIG_AXP152_POWER /* NA on axp152 */
> -	case SUNXI_GPIO_AXP0_VBUS_DETECT:
> -		return 0;
> -#endif
> -	default:
> -		reg = axp_get_gpio_ctrl_reg(pin);
> -		if (reg == 0)
> -			return -EINVAL;
> +	reg = axp_get_gpio_ctrl_reg(pin);
> +	if (reg == 0)
> +		return -EINVAL;
>  
> -		return pmic_bus_write(reg, AXP_GPIO_CTRL_INPUT);
> -	}
> +	return pmic_bus_write(reg, AXP_GPIO_CTRL_INPUT);
>  }
>  
>  static int axp_gpio_direction_output(struct udevice *dev, unsigned pin,
> @@ -83,12 +76,6 @@ static int axp_gpio_get_value(struct udevice *dev, unsigned pin)
>  	int ret;
>  
>  	switch (pin) {
> -#ifndef CONFIG_AXP152_POWER /* NA on axp152 */
> -	case SUNXI_GPIO_AXP0_VBUS_DETECT:
> -		ret = pmic_bus_read(AXP_POWER_STATUS, &val);
> -		mask = AXP_POWER_STATUS_VBUS_PRESENT;
> -		break;
> -#endif
>  #ifdef AXP_MISC_CTRL_N_VBUSEN_FUNC
>  	/* Only available on later PMICs */
>  	case SUNXI_GPIO_AXP0_VBUS_ENABLE:
> diff --git a/drivers/gpio/sunxi_gpio.c b/drivers/gpio/sunxi_gpio.c
> index 1e85db179a..f0b42e4fdb 100644
> --- a/drivers/gpio/sunxi_gpio.c
> +++ b/drivers/gpio/sunxi_gpio.c
> @@ -117,11 +117,7 @@ int sunxi_name_to_gpio(const char *name)
>  #if !defined CONFIG_SPL_BUILD && defined CONFIG_AXP_GPIO
>  	char lookup[8];
>  
> -	if (strcasecmp(name, "AXP0-VBUS-DETECT") == 0) {
> -		sprintf(lookup, SUNXI_GPIO_AXP0_PREFIX "%d",
> -			SUNXI_GPIO_AXP0_VBUS_DETECT);
> -		name = lookup;
> -	} else if (strcasecmp(name, "AXP0-VBUS-ENABLE") == 0) {
> +	if (strcasecmp(name, "AXP0-VBUS-ENABLE") == 0) {
>  		sprintf(lookup, SUNXI_GPIO_AXP0_PREFIX "%d",
>  			SUNXI_GPIO_AXP0_VBUS_ENABLE);
>  		name = lookup;
> diff --git a/include/axp209.h b/include/axp209.h
> index 414f88a32c..d8bf44f1fa 100644
> --- a/include/axp209.h
> +++ b/include/axp209.h
> @@ -77,7 +77,6 @@ enum axp209_reg {
>  #ifdef CONFIG_AXP209_POWER
>  #define AXP_POWER_STATUS		0x00
>  #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
> -#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
>  #define AXP_GPIO0_CTRL			0x90
>  #define AXP_GPIO1_CTRL			0x92
>  #define AXP_GPIO2_CTRL			0x93
> diff --git a/include/axp221.h b/include/axp221.h
> index 8dfcc5b5a2..32b988f3a9 100644
> --- a/include/axp221.h
> +++ b/include/axp221.h
> @@ -53,7 +53,6 @@
>  #ifdef CONFIG_AXP221_POWER
>  #define AXP_POWER_STATUS		0x00
>  #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
> -#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
>  #define AXP_VBUS_IPSOUT			0x30
>  #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
>  #define AXP_MISC_CTRL			0x8f
> diff --git a/include/axp809.h b/include/axp809.h
> index 8082e402e2..71a7cb2aaa 100644
> --- a/include/axp809.h
> +++ b/include/axp809.h
> @@ -47,7 +47,6 @@
>  #ifdef CONFIG_AXP809_POWER
>  #define AXP_POWER_STATUS		0x00
>  #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
> -#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
>  #define AXP_VBUS_IPSOUT			0x30
>  #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
>  #define AXP_MISC_CTRL			0x8f
> diff --git a/include/axp818.h b/include/axp818.h
> index 8ac517a2bf..08ac35d15f 100644
> --- a/include/axp818.h
> +++ b/include/axp818.h
> @@ -61,7 +61,6 @@
>  #ifdef CONFIG_AXP818_POWER
>  #define AXP_POWER_STATUS		0x00
>  #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
> -#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
>  #define AXP_VBUS_IPSOUT			0x30
>  #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
>  #define AXP_MISC_CTRL			0x8f
diff mbox series

Patch

diff --git a/arch/arm/include/asm/arch-sunxi/gpio.h b/arch/arm/include/asm/arch-sunxi/gpio.h
index 437e86479c..6eaeece4e2 100644
--- a/arch/arm/include/asm/arch-sunxi/gpio.h
+++ b/arch/arm/include/asm/arch-sunxi/gpio.h
@@ -209,7 +209,6 @@  enum sunxi_gpio_number {
 
 /* Virtual AXP0 GPIOs */
 #define SUNXI_GPIO_AXP0_PREFIX "AXP0-"
-#define SUNXI_GPIO_AXP0_VBUS_DETECT	4
 #define SUNXI_GPIO_AXP0_VBUS_ENABLE	5
 #define SUNXI_GPIO_AXP0_GPIO_COUNT	6
 
diff --git a/drivers/gpio/axp_gpio.c b/drivers/gpio/axp_gpio.c
index 35585dc8ac..49672193ff 100644
--- a/drivers/gpio/axp_gpio.c
+++ b/drivers/gpio/axp_gpio.c
@@ -36,18 +36,11 @@  static int axp_gpio_direction_input(struct udevice *dev, unsigned pin)
 {
 	u8 reg;
 
-	switch (pin) {
-#ifndef CONFIG_AXP152_POWER /* NA on axp152 */
-	case SUNXI_GPIO_AXP0_VBUS_DETECT:
-		return 0;
-#endif
-	default:
-		reg = axp_get_gpio_ctrl_reg(pin);
-		if (reg == 0)
-			return -EINVAL;
+	reg = axp_get_gpio_ctrl_reg(pin);
+	if (reg == 0)
+		return -EINVAL;
 
-		return pmic_bus_write(reg, AXP_GPIO_CTRL_INPUT);
-	}
+	return pmic_bus_write(reg, AXP_GPIO_CTRL_INPUT);
 }
 
 static int axp_gpio_direction_output(struct udevice *dev, unsigned pin,
@@ -83,12 +76,6 @@  static int axp_gpio_get_value(struct udevice *dev, unsigned pin)
 	int ret;
 
 	switch (pin) {
-#ifndef CONFIG_AXP152_POWER /* NA on axp152 */
-	case SUNXI_GPIO_AXP0_VBUS_DETECT:
-		ret = pmic_bus_read(AXP_POWER_STATUS, &val);
-		mask = AXP_POWER_STATUS_VBUS_PRESENT;
-		break;
-#endif
 #ifdef AXP_MISC_CTRL_N_VBUSEN_FUNC
 	/* Only available on later PMICs */
 	case SUNXI_GPIO_AXP0_VBUS_ENABLE:
diff --git a/drivers/gpio/sunxi_gpio.c b/drivers/gpio/sunxi_gpio.c
index 1e85db179a..f0b42e4fdb 100644
--- a/drivers/gpio/sunxi_gpio.c
+++ b/drivers/gpio/sunxi_gpio.c
@@ -117,11 +117,7 @@  int sunxi_name_to_gpio(const char *name)
 #if !defined CONFIG_SPL_BUILD && defined CONFIG_AXP_GPIO
 	char lookup[8];
 
-	if (strcasecmp(name, "AXP0-VBUS-DETECT") == 0) {
-		sprintf(lookup, SUNXI_GPIO_AXP0_PREFIX "%d",
-			SUNXI_GPIO_AXP0_VBUS_DETECT);
-		name = lookup;
-	} else if (strcasecmp(name, "AXP0-VBUS-ENABLE") == 0) {
+	if (strcasecmp(name, "AXP0-VBUS-ENABLE") == 0) {
 		sprintf(lookup, SUNXI_GPIO_AXP0_PREFIX "%d",
 			SUNXI_GPIO_AXP0_VBUS_ENABLE);
 		name = lookup;
diff --git a/include/axp209.h b/include/axp209.h
index 414f88a32c..d8bf44f1fa 100644
--- a/include/axp209.h
+++ b/include/axp209.h
@@ -77,7 +77,6 @@  enum axp209_reg {
 #ifdef CONFIG_AXP209_POWER
 #define AXP_POWER_STATUS		0x00
 #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
-#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
 #define AXP_GPIO0_CTRL			0x90
 #define AXP_GPIO1_CTRL			0x92
 #define AXP_GPIO2_CTRL			0x93
diff --git a/include/axp221.h b/include/axp221.h
index 8dfcc5b5a2..32b988f3a9 100644
--- a/include/axp221.h
+++ b/include/axp221.h
@@ -53,7 +53,6 @@ 
 #ifdef CONFIG_AXP221_POWER
 #define AXP_POWER_STATUS		0x00
 #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
-#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
 #define AXP_VBUS_IPSOUT			0x30
 #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
 #define AXP_MISC_CTRL			0x8f
diff --git a/include/axp809.h b/include/axp809.h
index 8082e402e2..71a7cb2aaa 100644
--- a/include/axp809.h
+++ b/include/axp809.h
@@ -47,7 +47,6 @@ 
 #ifdef CONFIG_AXP809_POWER
 #define AXP_POWER_STATUS		0x00
 #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
-#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
 #define AXP_VBUS_IPSOUT			0x30
 #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
 #define AXP_MISC_CTRL			0x8f
diff --git a/include/axp818.h b/include/axp818.h
index 8ac517a2bf..08ac35d15f 100644
--- a/include/axp818.h
+++ b/include/axp818.h
@@ -61,7 +61,6 @@ 
 #ifdef CONFIG_AXP818_POWER
 #define AXP_POWER_STATUS		0x00
 #define AXP_POWER_STATUS_ALDO_IN		BIT(0)
-#define AXP_POWER_STATUS_VBUS_PRESENT		BIT(5)
 #define AXP_VBUS_IPSOUT			0x30
 #define AXP_VBUS_IPSOUT_DRIVEBUS		(1 << 2)
 #define AXP_MISC_CTRL			0x8f