mirror of
https://github.com/torvalds/linux.git
synced 2026-06-03 12:03:54 +02:00
gpio: tegra186: Use generic macro for port definitions
Introduce a generic macro TEGRA_GPIO_PORT to define SoC specific ports macros. This simplifies the code and avoids unnecessary duplication. Suggested-by: Jon Hunter <jonathanh@nvidia.com> Signed-off-by: Kartik Rajput <kkartik@nvidia.com> Reviewed-by: Jon Hunter <jonathanh@nvidia.com> Acked-by: Thierry Reding <treding@nvidia.com> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
This commit is contained in:
parent
9f0fa1801f
commit
f75db6f7f9
|
|
@ -1002,14 +1002,17 @@ static int tegra186_gpio_probe(struct platform_device *pdev)
|
|||
return devm_gpiochip_add_data(&pdev->dev, &gpio->gpio, gpio);
|
||||
}
|
||||
|
||||
#define TEGRA186_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA186_MAIN_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
#define TEGRA_GPIO_PORT(_prefix, _name, _bank, _port, _pins) \
|
||||
[_prefix##_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
|
||||
#define TEGRA186_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA186_MAIN, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra186_main_ports[] = {
|
||||
TEGRA186_MAIN_GPIO_PORT( A, 2, 0, 7),
|
||||
TEGRA186_MAIN_GPIO_PORT( B, 3, 0, 7),
|
||||
|
|
@ -1045,13 +1048,8 @@ static const struct tegra_gpio_soc tegra186_main_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA186_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA186_AON_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA186_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA186_AON, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra186_aon_ports[] = {
|
||||
TEGRA186_AON_GPIO_PORT( S, 0, 1, 5),
|
||||
|
|
@ -1073,13 +1071,8 @@ static const struct tegra_gpio_soc tegra186_aon_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA194_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA194_MAIN_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA194_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA194_MAIN, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra194_main_ports[] = {
|
||||
TEGRA194_MAIN_GPIO_PORT( A, 1, 2, 8),
|
||||
|
|
@ -1129,13 +1122,8 @@ static const struct tegra_gpio_soc tegra194_main_soc = {
|
|||
.has_vm_support = true,
|
||||
};
|
||||
|
||||
#define TEGRA194_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA194_AON_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA194_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA194_AON, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra194_aon_ports[] = {
|
||||
TEGRA194_AON_GPIO_PORT(AA, 0, 3, 8),
|
||||
|
|
@ -1155,13 +1143,8 @@ static const struct tegra_gpio_soc tegra194_aon_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA234_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA234_MAIN_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA234_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA234_MAIN, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra234_main_ports[] = {
|
||||
TEGRA234_MAIN_GPIO_PORT( A, 0, 0, 8),
|
||||
|
|
@ -1200,13 +1183,8 @@ static const struct tegra_gpio_soc tegra234_main_soc = {
|
|||
.has_vm_support = true,
|
||||
};
|
||||
|
||||
#define TEGRA234_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA234_AON_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA234_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA234_AON, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra234_aon_ports[] = {
|
||||
TEGRA234_AON_GPIO_PORT(AA, 0, 4, 8),
|
||||
|
|
@ -1227,13 +1205,8 @@ static const struct tegra_gpio_soc tegra234_aon_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA241_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA241_MAIN_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA241_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA241_MAIN, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra241_main_ports[] = {
|
||||
TEGRA241_MAIN_GPIO_PORT(A, 0, 0, 8),
|
||||
|
|
@ -1258,13 +1231,8 @@ static const struct tegra_gpio_soc tegra241_main_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA241_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA241_AON_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA241_AON_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA241_AON, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra241_aon_ports[] = {
|
||||
TEGRA241_AON_GPIO_PORT(AA, 0, 0, 8),
|
||||
|
|
@ -1280,13 +1248,8 @@ static const struct tegra_gpio_soc tegra241_aon_soc = {
|
|||
.has_vm_support = false,
|
||||
};
|
||||
|
||||
#define TEGRA256_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
[TEGRA256_MAIN_GPIO_PORT_##_name] = { \
|
||||
.name = #_name, \
|
||||
.bank = _bank, \
|
||||
.port = _port, \
|
||||
.pins = _pins, \
|
||||
}
|
||||
#define TEGRA256_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
|
||||
TEGRA_GPIO_PORT(TEGRA256_MAIN, _name, _bank, _port, _pins)
|
||||
|
||||
static const struct tegra_gpio_port tegra256_main_ports[] = {
|
||||
TEGRA256_MAIN_GPIO_PORT(A, 0, 0, 8),
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user