/Linux-v6.1/drivers/mux/ |
D | mmio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * MMIO register bitfield-controlled multiplexer driver 12 #include <linux/mux/driver.h> 18 static int mux_mmio_set(struct mux_control *mux, int state) in mux_mmio_set() argument 20 struct regmap_field **fields = mux_chip_priv(mux->chip); in mux_mmio_set() 22 return regmap_field_write(fields[mux_control_get_index(mux)], state); in mux_mmio_set() 30 { .compatible = "mmio-mux", }, 31 { .compatible = "reg-mux", }, 38 struct device *dev = &pdev->dev; in mux_mmio_probe() 39 struct device_node *np = dev->of_node; in mux_mmio_probe() [all …]
|
D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 6 mux-core-objs := core.o 7 mux-adg792a-objs := adg792a.o 8 mux-adgs1408-objs := adgs1408.o 9 mux-gpio-objs := gpio.o 10 mux-mmio-objs := mmio.o 12 obj-$(CONFIG_MULTIPLEXER) += mux-core.o 13 obj-$(CONFIG_MUX_ADG792A) += mux-adg792a.o 14 obj-$(CONFIG_MUX_ADGS1408) += mux-adgs1408.o 15 obj-$(CONFIG_MUX_GPIO) += mux-gpio.o [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 22 be called mux-adg792a. 32 be called mux-adgs1408. 35 tristate "GPIO-controlled Multiplexer" 38 GPIO-controlled Multiplexer controller. 46 be called mux-gpio. 49 tristate "MMIO/Regmap register bitfield-controlled Multiplexer" 52 MMIO/Regmap register bitfield-controlled Multiplexer controller. 59 be called mux-mmio.
|
/Linux-v6.1/Documentation/devicetree/bindings/mux/ |
D | reg-mux.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/mux/reg-mux.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Generic register bitfield-based multiplexer controller bindings 10 - Peter Rosin <peda@axentia.se> 19 - reg-mux # parent device of mux controller is not syscon device 20 - mmio-mux # parent device of mux controller is syscon device 24 '#mux-control-cells': 27 mux-reg-masks: [all …]
|
/Linux-v6.1/drivers/net/wwan/iosm/ |
D | iosm_ipc_imem.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 20 return chnl->ctype == IPC_CTYPE_WWAN && in ipc_imem_check_wwan_ips() 21 chnl->if_id == IPC_MEM_MUX_IP_CH_IF_ID; in ipc_imem_check_wwan_ips() 32 ipc_imem->device_sleep = state; in ipc_imem_msg_send_device_sleep() 34 return ipc_protocol_tq_msg_send(ipc_imem->ipc_protocol, in ipc_imem_msg_send_device_sleep() 42 if (pipe->nr_of_queued_entries >= pipe->max_nr_of_queued_entries) in ipc_imem_dl_skb_alloc() 45 return ipc_protocol_dl_td_prepare(ipc_imem->ipc_protocol, pipe); in ipc_imem_dl_skb_alloc() 59 struct ipc_pipe *pipe = &ipc_imem->channels[i].dl_pipe; in ipc_imem_tq_td_alloc_timer() 61 if (!pipe->is_open || pipe->nr_of_queued_entries > 0) in ipc_imem_tq_td_alloc_timer() [all …]
|
D | iosm_ipc_imem_ops.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 18 dev_dbg(ipc_imem->dev, "%s if id: %d", in ipc_imem_sys_wwan_open() 19 ipc_imem_phase_get_string(ipc_imem->phase), if_id); in ipc_imem_sys_wwan_open() 23 dev_err(ipc_imem->dev, "net:%d : refused phase %s", if_id, in ipc_imem_sys_wwan_open() 24 ipc_imem_phase_get_string(ipc_imem->phase)); in ipc_imem_sys_wwan_open() 25 return -EIO; in ipc_imem_sys_wwan_open() 28 return ipc_mux_open_session(ipc_imem->mux, if_id); in ipc_imem_sys_wwan_open() 35 if (ipc_imem->mux && if_id >= IP_MUX_SESSION_START && in ipc_imem_sys_wwan_close() 37 ipc_mux_close_session(ipc_imem->mux, if_id); in ipc_imem_sys_wwan_close() [all …]
|
D | iosm_ipc_mmio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 29 IPC_MEM_DEVICE_IPC_INVALID = -1 52 /* mmio scratchpad info */ 68 * struct iosm_mmio - MMIO region mapped to the doorbell scratchpad. 69 * @base: Base address of MMIO region 75 * @mux_protocol: mux protocol 94 * ipc_mmio_init - Allocate mmio instance data 95 * @mmio_addr: Mapped AP base address of the MMIO area. 98 * Returns: address of mmio instance data or NULL if fails. [all …]
|
D | iosm_ipc_imem.h | 1 /* SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 70 #define IMEM_IRQ_DONT_CARE (-1) 88 * Modem crash notification configuration. If this value is non-zero then 91 * will use out-of-band method to notify about it's Crash. 100 #define IPC_CB(skb) ((struct ipc_skb_cb *)((skb)->cb)) 155 * enum ipc_ctype - Enum defining supported channel type needed for control 186 * struct ipc_pipe - Structure for Pipe. 234 * struct ipc_mem_channel - Structure for Channel. 264 * enum ipc_phase - Different AP and CP phases. [all …]
|
/Linux-v6.1/drivers/pinctrl/freescale/ |
D | pinctrl-imx.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 14 #include <linux/pinctrl/pinconf-generic.h> 23 * struct imx_pin_mmio - MMIO pin configurations 24 * @mux_mode: the mux mode for this pin. 38 * struct imx_pin_scu - SCU pin configurations 39 * @mux: the mux mode for this pin. 48 * struct imx_pin - describes a single i.MX pin 50 * @conf: config type of this pin, either mmio or scu 55 struct imx_pin_mmio mmio; member 61 * struct imx_pin_reg - describe a pin reg map [all …]
|
D | pinctrl-imx.c | 1 // SPDX-License-Identifier: GPL-2.0+ 28 #include "pinctrl-imx.h" 41 for (i = 0; i < pctldev->num_groups; i++) { in imx_pinctrl_find_group_by_name() 43 if (grp && !strcmp(grp->name, name)) in imx_pinctrl_find_group_by_name() 53 seq_printf(s, "%s", dev_name(pctldev->dev)); in imx_pin_dbg_show() 61 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_dt_node_to_map() 73 grp = imx_pinctrl_find_group_by_name(pctldev, np->name); in imx_dt_node_to_map() 75 dev_err(ipctl->dev, "unable to find group for node %pOFn\n", np); in imx_dt_node_to_map() 76 return -EINVAL; in imx_dt_node_to_map() 79 if (info->flags & IMX_USE_SCU) { in imx_dt_node_to_map() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/net/ |
D | mdio-mux-multiplexer.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/net/mdio-mux-multiplexer.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Andrew Lunn <andrew@lunn.ch> 13 This is a special case of MDIO mux when MDIO mux is defined as a consumer 14 of a mux producer device. The mux producer can be of any type like mmio mux 15 producer, gpio mux producer or generic register based mux producer. 19 - $ref: /schemas/net/mdio-mux.yaml# 23 const: mdio-mux-multiplexer [all …]
|
/Linux-v6.1/drivers/ata/ |
D | ahci_xgene.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AppliedMicro X-Gene SoC SATA Host Controller Driver 22 #define DRV_NAME "xgene-ahci" 27 /* MUX CSR */ 88 void __iomem *csr_mux; /* MUX CSR address of IP */ 93 dev_dbg(ctx->dev, "Release memory from shutdown\n"); in xgene_ahci_init_memram() 94 writel(0x0, ctx->csr_diag + CFG_MEM_RAM_SHUTDOWN); in xgene_ahci_init_memram() 95 readl(ctx->csr_diag + CFG_MEM_RAM_SHUTDOWN); /* Force a barrier */ in xgene_ahci_init_memram() 97 if (readl(ctx->csr_diag + BLOCK_MEM_RDY) != 0xFFFFFFFF) { in xgene_ahci_init_memram() 98 dev_err(ctx->dev, "failed to release memory from shutdown\n"); in xgene_ahci_init_memram() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/arm/npcm/ |
D | nuvoton,gcr.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jonathan Neuschäfer <j.neuschaefer@gmx.net> 11 - Tomer Maimon <tmaimon77@gmail.com> 21 - enum: 22 - nuvoton,wpcm450-gcr 23 - nuvoton,npcm750-gcr 24 - nuvoton,npcm845-gcr 25 - const: syscon [all …]
|
/Linux-v6.1/drivers/mfd/ |
D | stm32-lptimer.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STM32 Low-Power Timer parent driver. 6 * Inspired by Benjamin Gaignard's stm32-timers driver 9 #include <linux/mfd/stm32-lptimer.h> 30 * Low-Power Timer supports it. in stm32_lptimer_detect_encoder() 32 ret = regmap_update_bits(ddata->regmap, STM32_LPTIM_CFGR, in stm32_lptimer_detect_encoder() 37 ret = regmap_read(ddata->regmap, STM32_LPTIM_CFGR, &val); in stm32_lptimer_detect_encoder() 41 ret = regmap_update_bits(ddata->regmap, STM32_LPTIM_CFGR, in stm32_lptimer_detect_encoder() 46 ddata->has_encoder = !!(val & STM32_LPTIM_ENC); in stm32_lptimer_detect_encoder() 53 struct device *dev = &pdev->dev; in stm32_lptimer_probe() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/mfd/ |
D | ti,j721e-system-controller.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 # Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ 4 --- 5 $id: http://devicetree.org/schemas/mfd/ti,j721e-system-controller.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 14 represent as any specific type of device. The typical use-case is 15 for some other node's driver, or platform-specific code, to acquire 22 - Kishon Vijay Abraham I <kishon@ti.com> 23 - Roger Quadros <rogerq@kernel.org> 28 - enum: [all …]
|
/Linux-v6.1/drivers/spi/ |
D | spi-dw-bt1.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 // Baikal-T1 DW APB SPI and System Boot SPI driver 17 #include <linux/mux/consumer.h> 24 #include <linux/spi/spi-mem.h> 27 #include "spi-dw.h" 35 struct mux_control *mux; member 52 struct dw_spi_bt1 *dwsbt1 = to_dw_spi_bt1(desc->mem->spi->controller); in dw_spi_bt1_dirmap_create() 54 if (!dwsbt1->map || in dw_spi_bt1_dirmap_create() 55 !dwsbt1->dws.mem_ops.supports_op(desc->mem, &desc->info.op_tmpl)) in dw_spi_bt1_dirmap_create() 56 return -EOPNOTSUPP; in dw_spi_bt1_dirmap_create() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/mtd/ |
D | ti,am654-hbmc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mtd/ti,am654-hbmc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Vignesh Raghavendra <vigneshr@ti.com> 14 const: ti,am654-hbmc 19 power-domains: true 20 '#address-cells': true 21 '#size-cells': true 24 mux-controls: [all …]
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | zynq-zc702.dts | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2011 - 2014 Xilinx 6 /dts-v1/; 7 #include "zynq-7000.dtsi" 11 compatible = "xlnx,zynq-zc702", "xlnx,zynq-7000"; 27 stdout-path = "serial0:115200n8"; 30 gpio-keys { 31 compatible = "gpio-keys"; 33 switch-14 { 37 wakeup-source; [all …]
|
D | nuvoton-npcm730-gbs.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 5 #include "nuvoton-npcm730.dtsi" 6 #include <dt-bindings/gpio/gpio.h> 10 compatible = "quanta,gbs-bmc","nuvoton,npcm730"; 71 stdout-path = &serial0; 78 gpio-keys { 79 compatible = "gpio-keys"; 80 sas-cable0 { 81 label = "sas-cable0"; [all …]
|
D | mmp2.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <dt-bindings/clock/marvell,mmp2.h> 8 #include <dt-bindings/power/marvell,mmp2.h> 9 #include <dt-bindings/clock/marvell,mmp2-audio.h> 12 #address-cells = <1>; 13 #size-cells = <1>; 25 #address-cells = <1>; 26 #size-cells = <1>; 27 compatible = "simple-bus"; 28 interrupt-parent = <&intc>; [all …]
|
/Linux-v6.1/arch/arm64/boot/dts/ti/ |
D | k3-j7200-mcu-wakeup.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/ 9 dmsc: system-controller@44083000 { 10 compatible = "ti,k2g-sci"; 11 ti,host-id = <12>; 13 mbox-names = "rx", "tx"; 18 reg-names = "debug_messages"; 21 k3_pds: power-controller { 22 compatible = "ti,sci-pm-domain"; 23 #power-domain-cells = <2>; [all …]
|
/Linux-v6.1/arch/arm/mach-vt8500/ |
D | vt8500.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * arch/arm/mach-vt8500/vt8500.c 12 #include <asm/mach-types.h> 40 /* SoC MMIO registers */ 70 fb = of_find_compatible_node(NULL, NULL, "via,vt8500-fb"); in vt8500_init() 72 np = of_find_compatible_node(NULL, NULL, "via,vt8500-gpio"); in vt8500_init() 92 pr_err("%s: Could not remap GPIO mux\n", __func__); in vt8500_init() 99 fb = of_find_compatible_node(NULL, NULL, "wm,wm8505-fb"); in vt8500_init() 101 np = of_find_compatible_node(NULL, NULL, "wm,wm8505-gpio"); in vt8500_init() 104 "wm,wm8650-gpio"); in vt8500_init() [all …]
|
/Linux-v6.1/drivers/tty/serial/ |
D | dz.c | 1 // SPDX-License-Identifier: GPL-2.0 12 * [31-AUG-98] triemer 14 * removed base_addr code - moving address assignment to setup.c 16 * [13-NOV-98] triemer fixed code to receive characters 18 * [09-JAN-99] triemer minor fix for schedule - due to removal of timeout 19 * field from "current" - somewhere between 2.1.121 and 2.1.131 21 * [27-JUN-2001] Arnaldo Carvalho de Melo <acme@conectiva.com.br> - cleanups 24 * [07-SEP-99] Bugfixes 26 * [06-Jan-2002] Russell King <rmk@arm.linux.org.uk> 71 struct dz_mux *mux; member [all …]
|
/Linux-v6.1/drivers/media/pci/dt3155/ |
D | dt3155.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Copyright (C) 2006-2010 by Marin Mitov * 15 #include <media/v4l2-device.h> 16 #include <media/v4l2-dev.h> 17 #include <media/videobuf2-v4l2.h> 150 * struct dt3155_priv - private data structure 157 * @mux: mutex to protect the instance 166 * @regs: local copy of mmio base register 176 struct mutex mux; member
|
D | dt3155.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2006-2010 by Marin Mitov * 14 #include <media/v4l2-dev.h> 15 #include <media/v4l2-ioctl.h> 16 #include <media/v4l2-common.h> 17 #include <media/videobuf2-dma-contig.h> 24 * read_i2c_reg - reads an internal i2c register 26 * @addr: dt3155 mmio base address 43 return -EIO; /* error: NEW_CYCLE not cleared */ in read_i2c_reg() 48 return -EIO; /* error: DIRECT_ABORT set */ in read_i2c_reg() [all …]
|