Resguardo inicial

This commit is contained in:
lastdragon
2026-09-06 12:53:21 -06:00
parent 662efe3c2a
commit ad2088d178
94853 changed files with 43200404 additions and 0 deletions
@@ -0,0 +1,66 @@
# SPDX-License-Identifier: GPL-2.0-only
config PINCTRL_WPCM450
tristate "Pinctrl and GPIO driver for Nuvoton WPCM450"
depends on (ARCH_WPCM450 || COMPILE_TEST) && OF
select PINMUX
select PINCONF
select GENERIC_PINCONF
select GENERIC_PINCTRL_GROUPS
select GPIOLIB
select GPIO_GENERIC
select GPIOLIB_IRQCHIP
select MFD_SYSCON
help
Say Y or M here to enable pin controller and GPIO support for
the Nuvoton WPCM450 SoC. This is strongly recommended when
building a kernel that will run on this chip.
If this driver is compiled as a module, it will be named
pinctrl-wpcm450.
config PINCTRL_NPCM7XX
bool "Pinctrl and GPIO driver for Nuvoton NPCM7XX"
depends on (ARCH_NPCM7XX || COMPILE_TEST) && OF
select PINMUX
select PINCONF
select GENERIC_PINCONF
select GPIOLIB
select GPIO_GENERIC
select GPIOLIB_IRQCHIP
help
Say Y here to enable pin controller and GPIO support
for Nuvoton NPCM750/730/715/705 SoCs.
config PINCTRL_NPCM8XX
tristate "Pinctrl and GPIO driver for Nuvoton NPCM8XX"
depends on (ARCH_NPCM || COMPILE_TEST) && OF
select PINMUX
select PINCONF
select GENERIC_PINCONF
select GPIOLIB
select GPIO_GENERIC
select GPIOLIB_IRQCHIP
help
Say Y or M here to enable pin controller and GPIO support for
the Nuvoton NPCM8XX SoC. This is strongly recommended when
building a kernel that will run on this chip.
config PINCTRL_MA35
bool
depends on (ARCH_MA35 || COMPILE_TEST) && OF
select GENERIC_PINCTRL_GROUPS
select GENERIC_PINMUX_FUNCTIONS
select GENERIC_PINCONF
select GPIOLIB
select GPIO_GENERIC
select GPIOLIB_IRQCHIP
select MFD_SYSCON
config PINCTRL_MA35D1
bool "Pinctrl and GPIO driver for Nuvoton MA35D1"
depends on (ARCH_MA35 || COMPILE_TEST) && OF
select PINCTRL_MA35
help
Say Y here to enable pin controller and GPIO support
for Nuvoton MA35D1 SoC.
@@ -0,0 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
# Nuvoton pinctrl support
obj-$(CONFIG_PINCTRL_WPCM450) += pinctrl-wpcm450.o
obj-$(CONFIG_PINCTRL_NPCM7XX) += pinctrl-npcm7xx.o
obj-$(CONFIG_PINCTRL_NPCM8XX) += pinctrl-npcm8xx.o
obj-$(CONFIG_PINCTRL_MA35) += pinctrl-ma35.o
obj-$(CONFIG_PINCTRL_MA35D1) += pinctrl-ma35d1.o
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,52 @@
/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (C) 2024 Nuvoton Technology Corp.
*
* Author: Shan-Chun Hung <schung@nuvoton.com>
* * Jacky Huang <ychuang3@nuvoton.com>
*/
#ifndef __PINCTRL_MA35_H
#define __PINCTRL_MA35_H
#include <linux/pinctrl/pinconf-generic.h>
#include <linux/pinctrl/pinmux.h>
#include <linux/platform_device.h>
struct ma35_mux_desc {
const char *name;
u32 muxval;
};
struct ma35_pin_data {
u32 offset;
u32 shift;
struct ma35_mux_desc *muxes;
};
struct ma35_pinctrl_soc_info {
const struct pinctrl_pin_desc *pins;
unsigned int npins;
int (*get_pin_num)(int offset, int shift);
};
#define MA35_PIN(num, n, o, s, ...) { \
.number = num, \
.name = #n, \
.drv_data = &(struct ma35_pin_data) { \
.offset = o, \
.shift = s, \
.muxes = (struct ma35_mux_desc[]) { \
__VA_ARGS__, { } }, \
}, \
}
#define MA35_MUX(_val, _name) { \
.name = _name, \
.muxval = _val, \
}
int ma35_pinctrl_probe(struct platform_device *pdev, const struct ma35_pinctrl_soc_info *info);
int ma35_pinctrl_suspend(struct device *dev);
int ma35_pinctrl_resume(struct device *dev);
#endif /* __PINCTRL_MA35_H */
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff