openwrt/target/linux/bcm63xx/patches-4.14/379-MIPS-BCM63XX-provide-a-gpio-lookup-for-the-pcmcia-re.patch
Adrian Schmutzler e7bfda2c24 brcm63xx: rename target to bcm63xx
This change makes the names of Broadcom targets consistent by using
the common notation based on SoC/CPU ID (which is used internally
anyway), bcmXXXX instead of brcmXXXX.
This is even used for target TITLE in make menuconfig already,
only the short target name used brcm so far.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-02-14 14:10:51 +01:00

60 lines
1.5 KiB
Diff

From 1647cccc871bf43876c3df9852869680880d054c Mon Sep 17 00:00:00 2001
From: Jonas Gorski <jogo@openwrt.org>
Date: Wed, 25 Mar 2015 13:52:02 +0100
Subject: [PATCH 1/2] MIPS: BCM63XX: provide a gpio lookup for the pcmcia
ready gpio
To prepare for a time when gpiobases don't need to be fixed anymore.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
---
arch/mips/bcm63xx/dev-pcmcia.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
--- a/arch/mips/bcm63xx/dev-pcmcia.c
+++ b/arch/mips/bcm63xx/dev-pcmcia.c
@@ -10,6 +10,7 @@
#include <linux/kernel.h>
#include <asm/bootinfo.h>
#include <linux/platform_device.h>
+#include <linux/gpio/machine.h>
#include <bcm63xx_cs.h>
#include <bcm63xx_cpu.h>
#include <bcm63xx_dev_pcmcia.h>
@@ -101,6 +102,14 @@ static const struct {
},
};
+static struct gpiod_lookup_table pcmcia_gpios_table = {
+ .dev_id = "bcm63xx_pcmcia.0",
+ .table = {
+ GPIO_LOOKUP("bcm63xx-gpio.0", 0, "ready", GPIO_ACTIVE_HIGH),
+ { },
+ },
+};
+
int __init bcm63xx_pcmcia_register(void)
{
int ret, i;
@@ -112,16 +121,20 @@ int __init bcm63xx_pcmcia_register(void)
switch (bcm63xx_get_cpu_id()) {
case BCM6348_CPU_ID:
pd.ready_gpio = 22;
+ pcmcia_gpios_table.table[0].chip_hwnum = 22;
break;
case BCM6358_CPU_ID:
pd.ready_gpio = 18;
+ pcmcia_gpios_table.table[0].chip_hwnum = 18;
break;
default:
return -ENODEV;
}
+ gpiod_add_lookup_table(&pcmcia_gpios_table);
+
pcmcia_resources[0].start = bcm63xx_regset_address(RSET_PCMCIA);
pcmcia_resources[0].end = pcmcia_resources[0].start +
RSET_PCMCIA_SIZE - 1;