[PATCH v2 4/6] pinctrl: airoha: add pin controller and gpio driver for EN7523 SoC

David Lechner dlechner at baylibre.com
Tue Apr 28 22:47:34 CEST 2026


The subject is a bit long on this and other similar commits.

Suggest:

	pinctrl: airoha: add driver for EN7523 SoC

or

	pinctrl: airoha: add pin/gpio driver for EN7523 SoC


On 4/28/26 10:34 AM, Mikhail Kshevetskiy wrote:
> The driver based on official linux airoha pinctrl and gpio driver with
> Matheus Sampaio Queiroga <srherobrine20 at gmail.com> changes.
> The changes:
>  * Separate code for each SoC and keep some of the functions in
>    common between them,
>  * Add pinctrl driver for EN7523 SoC.
> 
> The original Matheus Sampaio Queiroga driver can be taken from the repo:
>   https://sirherobrine23.com.br/airoha_an7523/kernel/commits/branch/airoha_an7523_pinctrl
> 
> This patch adds U-Boot pin controller and gpio driver for Airoha EN7523 SoC.
> 
> Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy at iopsys.eu>
> ---

Same comments about commit message and general style from core patch apply
here as well.

> +static const struct airoha_pinctrl_func_group en7523_phy3_led1_func_group[] = {
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio7", GPIO_LAN0_LED1_MODE_MASK,
> +				LAN0_LED_MAPPING_MASK, LAN0_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio6", GPIO_LAN1_LED1_MODE_MASK,
> +				LAN1_LED_MAPPING_MASK, LAN1_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio5", GPIO_LAN2_LED1_MODE_MASK,
> +				LAN2_LED_MAPPING_MASK, LAN2_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio4", GPIO_LAN3_LED1_MODE_MASK,
> +				LAN3_LED_MAPPING_MASK, LAN3_PHY_LED_MAP(2)),
> +};
> +
> +static const struct airoha_pinctrl_func_group en7523_phy4_led1_func_group[] = {
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio7", GPIO_LAN0_LED1_MODE_MASK,
> +				LAN0_LED_MAPPING_MASK, LAN0_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio6", GPIO_LAN1_LED1_MODE_MASK,
> +				LAN1_LED_MAPPING_MASK, LAN1_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio5", GPIO_LAN2_LED1_MODE_MASK,
> +				LAN2_LED_MAPPING_MASK, LAN2_PHY_LED_MAP(2)),
> +	AIROHA_PINCTRL_PHY_LED1(EN7523, "gpio4", GPIO_LAN3_LED1_MODE_MASK,
> +				LAN3_LED_MAPPING_MASK, LAN3_PHY_LED_MAP(2)),
> +};

Are these suppose to be LANX_PHY_LED_MAP(3) instead of 2?


> +U_BOOT_DRIVER(airoha_pinctrl) = {

airoha_en7523_pinctrl

> +	.name = "airoha-en7523-pinctrl",
> +	.id = UCLASS_PINCTRL,
> +	.of_match = of_match_ptr(airoha_pinctrl_of_match),
> +	.probe = airoha_pinctrl_probe,
> +	.bind = airoha_pinctrl_bind,
> +	.priv_auto = sizeof(struct airoha_pinctrl),
> +	.ops = &airoha_pinctrl_ops,
> +};



More information about the U-Boot mailing list