Home
last modified time | relevance | path

Searched +full:bcm63xx +full:- +full:gpio (Results 1 – 25 of 35) sorted by relevance

12

/kernel/linux/linux-6.6/Documentation/devicetree/bindings/gpio/
Dbrcm,bcm63xx-gpio.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/gpio/brcm,bcm63xx-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM63xx GPIO controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Bindings for Broadcom's BCM63xx memory-mapped GPIO controllers.
16 These bindings can be used on any BCM63xx SoC. However, BCM6338 and BCM6345
19 BCM6338 have 8-bit data and dirout registers, where GPIO state can be read
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/mfd/
Dbrcm,bcm6358-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm6358-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM6358 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM6358 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
Dbrcm,bcm6318-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm6318-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM6318 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM6318 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
Dbrcm,bcm6328-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm6328-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM6328 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM6328 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
Dbrcm,bcm63268-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm63268-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM63268 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM63268 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
Dbrcm,bcm6362-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm6362-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM6362 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM6362 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
Dbrcm,bcm6368-gpio-sysctl.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mfd/brcm,bcm6368-gpio-sysctl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM6368 GPIO System Controller
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
14 Broadcom BCM6368 SoC GPIO system controller which provides a register map
15 for controlling the GPIO and pins of the SoC.
18 "#address-cells": true
[all …]
/kernel/linux/linux-6.6/drivers/pinctrl/bcm/
Dpinctrl-bcm63xx.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM63xx GPIO unit (pinctrl + GPIO)
9 #include <linux/gpio/regmap.h>
15 #include "pinctrl-bcm63xx.h"
22 static int bcm63xx_reg_mask_xlate(struct gpio_regmap *gpio, in bcm63xx_reg_mask_xlate() argument
29 *reg = base - stride * BCM63XX_BANK_SIZE; in bcm63xx_reg_mask_xlate()
36 { .compatible = "brcm,bcm6318-gpio", },
37 { .compatible = "brcm,bcm6328-gpio", },
38 { .compatible = "brcm,bcm6358-gpio", },
39 { .compatible = "brcm,bcm6362-gpio", },
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
4 obj-$(CONFIG_PINCTRL_BCM281XX) += pinctrl-bcm281xx.o
5 obj-$(CONFIG_PINCTRL_BCM2835) += pinctrl-bcm2835.o
6 obj-$(CONFIG_PINCTRL_BCM4908) += pinctrl-bcm4908.o
7 obj-$(CONFIG_PINCTRL_BCM63XX) += pinctrl-bcm63xx.o
8 obj-$(CONFIG_PINCTRL_BCM6318) += pinctrl-bcm6318.o
9 obj-$(CONFIG_PINCTRL_BCM6328) += pinctrl-bcm6328.o
10 obj-$(CONFIG_PINCTRL_BCM6358) += pinctrl-bcm6358.o
11 obj-$(CONFIG_PINCTRL_BCM6362) += pinctrl-bcm6362.o
12 obj-$(CONFIG_PINCTRL_BCM6368) += pinctrl-bcm6368.o
[all …]
Dpinctrl-bcm6358.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM6358 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
42 /* non-GPIO function muxes require the gpio direction to be set */
257 struct bcm6358_priv *priv = pc->driver_data; in bcm6358_pinctrl_set_mux()
259 unsigned int val = pg->mode_val; in bcm6358_pinctrl_set_mux()
263 for (pin = 0; pin < pg->grp.npins; pin++) in bcm6358_pinctrl_set_mux()
266 regmap_field_update_bits(priv->overlays, mask, val); in bcm6358_pinctrl_set_mux()
[all …]
Dpinctrl-bcm6328.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM6328 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
316 regmap_update_bits(pc->regs, BCM6328_MODE_REG, BIT(pin), in bcm6328_rmw_mux()
319 regmap_update_bits(pc->regs, bcm6328_mux_off(pin), in bcm6328_rmw_mux()
331 bcm6328_rmw_mux(pc, pg->pins[0], f->mode_val, f->mux_val); in bcm6328_pinctrl_set_mux()
379 { .compatible = "brcm,bcm6328-pinctrl", },
386 .name = "bcm6328-pinctrl",
Dpinctrl-bcm6318.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM6318 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
392 regmap_update_bits(pc->regs, BCM6318_MODE_REG, BIT(pin), in bcm6318_rmw_mux()
396 regmap_update_bits(pc->regs, in bcm6318_rmw_mux()
405 regmap_update_bits(pc->regs, bcm6318_pad_off(pin), in bcm6318_set_pad()
417 bcm6318_rmw_mux(pc, pg->pins[0], f->mode_val, f->mux_val); in bcm6318_pinctrl_set_mux()
430 /* GPIOs 0-12 use mux 0 as GPIO function */ in bcm6318_gpio_request_enable()
[all …]
Dpinctrl-bcm6362.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM6362 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
486 unsigned int basemode = (uintptr_t)desc->drv_data; in bcm6362_set_gpio()
490 regmap_update_bits(pc->regs, BCM6362_BASEMODE_REG, basemode, 0); in bcm6362_set_gpio()
493 /* base mode 0 => gpio 1 => mux function */ in bcm6362_set_gpio()
494 regmap_update_bits(pc->regs, BCM6362_MODE_REG, mask, 0); in bcm6362_set_gpio()
496 /* pins 0-23 might be muxed to led */ in bcm6362_set_gpio()
[all …]
Dpinctrl-bcm63268.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM63268 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
28 #define BCM63268_BASEMODE_NAND BIT(2) /* GPIOs 2-7, 24-31 */
29 #define BCM63268_BASEMODE_GPIO35 BIT(4) /* GPIO 35 */
510 unsigned int basemode = (unsigned long) desc->drv_data; in bcm63268_set_gpio()
514 regmap_update_bits(pc->regs, BCM63268_BASEMODE_REG, basemode, in bcm63268_set_gpio()
518 /* base mode: 0 => gpio, 1 => mux function */ in bcm63268_set_gpio()
[all …]
Dpinctrl-bcm6368.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Driver for BCM6368 GPIO unit (pinctrl + GPIO)
10 #include <linux/gpio/driver.h>
17 #include "../pinctrl-utils.h"
19 #include "pinctrl-bcm63xx.h"
382 struct bcm6368_priv *priv = pc->driver_data; in bcm6368_pinctrl_set_mux()
387 if (fun->basemode) { in bcm6368_pinctrl_set_mux()
390 for (i = 0; i < pg->npins; i++) { in bcm6368_pinctrl_set_mux()
391 pin = pg->pins[i]; in bcm6368_pinctrl_set_mux()
396 regmap_update_bits(pc->regs, BCM6368_MODE_REG, mask, 0); in bcm6368_pinctrl_set_mux()
[all …]
/kernel/linux/linux-5.10/arch/mips/pci/
Dpci-bcm63xx.c19 #include "pci-bcm63xx.h"
28 .name = "bcm63xx PCI memory space",
35 .name = "bcm63xx PCI IO space",
58 .name = "bcm63xx Cardbus memory space",
65 .name = "bcm63xx Cardbus IO space",
79 .name = "bcm63xx PCIe memory space",
86 .name = "bcm63xx PCIe IO space",
157 return -ENODEV; in bcm63xx_register_pcie()
226 return -ENOMEM; in bcm63xx_register_pci()
231 bcm_mpi_writel(~(BCM_PCI_MEM_SIZE - 1), MPI_L2PMEMRANGE1_REG); in bcm63xx_register_pci()
[all …]
/kernel/linux/linux-6.6/arch/mips/pci/
Dpci-bcm63xx.c19 #include "pci-bcm63xx.h"
28 .name = "bcm63xx PCI memory space",
35 .name = "bcm63xx PCI IO space",
58 .name = "bcm63xx Cardbus memory space",
65 .name = "bcm63xx Cardbus IO space",
79 .name = "bcm63xx PCIe memory space",
86 .name = "bcm63xx PCIe IO space",
157 return -ENODEV; in bcm63xx_register_pcie()
226 return -ENOMEM; in bcm63xx_register_pci()
231 bcm_mpi_writel(~(BCM_PCI_MEM_SIZE - 1), MPI_L2PMEMRANGE1_REG); in bcm63xx_register_pci()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/gpio/
Dbrcm,bcm6345-gpio.txt1 Bindings for the Broadcom's brcm,bcm6345-gpio memory-mapped GPIO controllers.
3 These bindings can be used on any BCM63xx SoC. However, BCM6338 and BCM6345
5 BCM6338 have 8-bit data and dirout registers, where GPIO state can be read
7 BCM6345 have 16-bit data and dirout registers, where GPIO state can be read
11 - compatible: should be "brcm,bcm6345-gpio"
12 - reg-names: must contain
13 "dat" - data register
14 "dirout" - direction (output) register
15 - reg: address + size pairs describing the GPIO register sets;
16 order must correspond with the order of entries in reg-names
[all …]
/kernel/linux/linux-5.10/drivers/spi/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
13 dynamic device discovery; some are even write-only or read-only.
17 chips, analog to digital (and d-to-a) converters, and more.
44 If your system has an master-capable SPI controller (which
56 by providing a high-level interface to send memory-like commands.
111 supports spi-mem interface.
152 tristate "Broadcom BCM63xx SPI controller"
153 depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST
155 Enable support for the SPI controller on the Broadcom BCM63xx SoCs.
158 tristate "Broadcom BCM63XX HS SPI controller driver"
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 ccflags-$(CONFIG_SPI_DEBUG) := -DDEBUG
8 # small core, mostly translating board-specific
10 obj-$(CONFIG_SPI_MASTER) += spi.o
11 obj-$(CONFIG_SPI_MEM) += spi-mem.o
12 obj-$(CONFIG_SPI_MUX) += spi-mux.o
13 obj-$(CONFIG_SPI_SPIDEV) += spidev.o
14 obj-$(CONFIG_SPI_LOOPBACK_TEST) += spi-loopback-test.o
17 obj-$(CONFIG_SPI_ALTERA) += spi-altera.o
18 obj-$(CONFIG_SPI_AR934X) += spi-ar934x.o
[all …]
/kernel/linux/linux-6.6/arch/mips/bcm63xx/
Dgpio.c7 * Copyright (C) 2008-2011 Florian Fainelli <florian@openwrt.org>
14 #include <linux/gpio/driver.h>
39 unsigned gpio, int val) in bcm63xx_gpio_set() argument
46 BUG_ON(gpio >= chip->ngpio); in bcm63xx_gpio_set()
48 if (gpio < 32) { in bcm63xx_gpio_set()
50 mask = 1 << gpio; in bcm63xx_gpio_set()
54 mask = 1 << (gpio - 32); in bcm63xx_gpio_set()
67 static int bcm63xx_gpio_get(struct gpio_chip *chip, unsigned gpio) in bcm63xx_gpio_get() argument
72 BUG_ON(gpio >= chip->ngpio); in bcm63xx_gpio_get()
74 if (gpio < 32) { in bcm63xx_gpio_get()
[all …]
/kernel/linux/linux-5.10/arch/mips/bcm63xx/
Dgpio.c7 * Copyright (C) 2008-2011 Florian Fainelli <florian@openwrt.org>
14 #include <linux/gpio/driver.h>
39 unsigned gpio, int val) in bcm63xx_gpio_set() argument
46 if (gpio >= chip->ngpio) in bcm63xx_gpio_set()
49 if (gpio < 32) { in bcm63xx_gpio_set()
51 mask = 1 << gpio; in bcm63xx_gpio_set()
55 mask = 1 << (gpio - 32); in bcm63xx_gpio_set()
68 static int bcm63xx_gpio_get(struct gpio_chip *chip, unsigned gpio) in bcm63xx_gpio_get() argument
73 if (gpio >= chip->ngpio) in bcm63xx_gpio_get()
76 if (gpio < 32) { in bcm63xx_gpio_get()
[all …]
/kernel/linux/linux-6.6/drivers/leds/blink/
DKconfig4 depends on ARCH_BCMBCA || ARCH_BCM_5301X || BCM63XX || COMPILE_TEST
13 If compiled as module it will be called leds-bcm63138.
20 This option enables support for LEDs connected to GPIO lines on
22 gateway-on-a-chip SoC to be shipped on mid and high end home
31 will be called leds-lgm-sso.
/kernel/linux/linux-6.6/drivers/spi/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
13 dynamic device discovery; some are even write-only or read-only.
17 chips, analog to digital (and d-to-a) converters, and more.
44 If your system has an master-capable SPI controller (which
56 by providing a high-level interface to send memory-like commands.
145 supports spi-mem interface.
186 tristate "Broadcom BCM63xx SPI controller"
187 depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST
189 Enable support for the SPI controller on the Broadcom BCM63xx SoCs.
192 tristate "Broadcom BCM63XX HS SPI controller driver"
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 ccflags-$(CONFIG_SPI_DEBUG) := -DDEBUG
8 # small core, mostly translating board-specific
10 obj-$(CONFIG_SPI_MASTER) += spi.o
11 obj-$(CONFIG_SPI_MEM) += spi-mem.o
12 obj-$(CONFIG_SPI_MUX) += spi-mux.o
13 obj-$(CONFIG_SPI_SPIDEV) += spidev.o
14 obj-$(CONFIG_SPI_LOOPBACK_TEST) += spi-loopback-test.o
17 obj-$(CONFIG_SPI_ALTERA) += spi-altera-platform.o
18 obj-$(CONFIG_SPI_ALTERA_CORE) += spi-altera-core.o
[all …]

12