/linux/drivers/mailbox/ |
H A D | mailbox-xgene-slimpro.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * APM X-Gene SLIMpro MailBox Driver 18 #define MBOX_CON_NAME "slimpro-mbox" 35 * X-Gene SlimPRO mailbox channel information 52 * X-Gene SlimPRO Mailbox controller data 54 * X-Gene SlimPRO Mailbox controller has 8 communication channels. 70 writel(msg[1], mb_chan->reg + REG_DB_DOUT0); in mb_chan_send_msg() 71 writel(msg[2], mb_chan->reg + REG_DB_DOUT1); in mb_chan_send_msg() 72 writel(msg[0], mb_chan->reg + REG_DB_OUT); in mb_chan_send_msg() 77 mb_chan->rx_msg[1] = readl(mb_chan->reg + REG_DB_DIN0); in mb_chan_recv_msg() [all …]
|
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 6 on-chip processors through queued messages and interrupt driven 37 will be discovered and possibly managed at probe-time. 54 processer can write data in a channel, and set co-responding register 101 running on the Cortex-M3 rWTM secure processor of the Armada 37xx 118 This driver provides support for inter-processor communication 207 module will be called mailbox-mpfs. 212 tristate "Microchip Inter-processor Communication (IPC) SBI driver" 217 Inter-process communication (IPC) controller. 220 module will be called mailbox-mchp-ipc-sbi. [all …]
|
/linux/drivers/pci/controller/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 52 system-on-chips, like the Apple M1. This is required for the USB 53 type-A ports, Ethernet, Wi-Fi, and Bluetooth. 111 bool "Cavium Thunder PCIe controller to off-chip devices" 119 bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon" 124 Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. 154 in the Intel IXP4xx XScale-based network processor SoC. 191 is used on 32-bit Marvell ARM SoCs: Dove, Kirkwood, Armada 370, 192 Armada XP, Armada 375, Armada 38x and Armada 39x. 213 multi-function devices. [all …]
|
H A D | pci-xgene-msi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * APM X-Gene MSI Driver 16 #include <linux/irqchip/irq-msi-lib.h> 49 * X-Gene v1 has 16 frames of MSI termination registers MSInIRx, where n is 50 * frame number (0..15), x is index of registers in each frame (0..7). Each 94 return readl_relaxed(msi->msi_regs + MSI_IR0 + in xgene_msi_ir_read() 102 return readl_relaxed(msi->msi_regs + MSI_INT0 + in xgene_msi_int_read() 110 * that XGene-1 has 8 CPUs, each CPU gets two frames assigned to it 118 * - hwirq[7]::cpu[2:0] is the target frame number (n in MSInIRx) 119 * - hwirq[6:4] is the register index in any given frame (x in MSInIRx) [all …]
|
/linux/Documentation/admin-guide/perf/ |
H A D | xgene-pmu.rst | 2 APM X-Gene SoC Performance Monitoring Unit (PMU) 5 X-Gene SoC PMU consists of various independent system device PMUs such as 12 ----------------- 14 The xgene-pmu driver registers several perf PMU drivers. Each of the perf 21 can be used with perf tool. For example, "l3c0/bank-fifo-full/" is an 32 each PMU, please refer to APM X-Gene User Manual. 39 / # perf list | grep -e l3c -e iob -e mcb -e mc 40 l3c0/ackq-full/ [Kernel PMU event] 42 mcb1/mcb-csw-stall/ [Kernel PMU event] 44 / # perf stat -a -e l3c0/read-miss/,mcb1/csw-write-request/ sleep 1 [all …]
|
/linux/drivers/net/ethernet/apm/xgene/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "APM X-Gene SoC Ethernet Driver" 9 This is the Ethernet driver for the on-chip ethernet interface on the 10 APM X-Gene SoC.
|
/linux/Documentation/devicetree/bindings/hwmon/ |
H A D | apm-xgene-hwmon.txt | 1 APM X-Gene hwmon driver 3 APM X-Gene SOC sensors are accessed over the "SLIMpro" mailbox. 6 - compatible : should be "apm,xgene-slimpro-hwmon" 7 - mboxes : use the label reference for the mailbox as the first parameter. 12 compatible = "apm,xgene-slimpro-hwmon";
|
/linux/drivers/net/ethernet/apm/xgene-v2/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "APM X-Gene SoC Ethernet-v2 Driver" 6 This is the Ethernet driver for the on-chip ethernet interface 8 APM X-Gene SoCs. 11 be called xgene-enet-v2.
|
H A D | mdio.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Applied Micro X-Gene SoC Ethernet v2 Driver 14 struct xge_pdata *pdata = bus->priv; in xge_mdio_write() 26 } while ((done & MII_MGMT_BUSY) && wait--); in xge_mdio_write() 29 dev_err(&bus->dev, "MII_MGMT write failed\n"); in xge_mdio_write() 30 return -ETIMEDOUT; in xge_mdio_write() 38 struct xge_pdata *pdata = bus->priv; in xge_mdio_read() 50 } while ((done & MII_MGMT_BUSY) && wait--); in xge_mdio_read() 53 dev_err(&bus->dev, "MII_MGMT read failed\n"); in xge_mdio_read() 54 return -ETIMEDOUT; in xge_mdio_read() [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Makefile for APM X-Gene Ethernet v2 driver 6 xgene-enet-v2-objs := main.o mac.o enet.o ring.o mdio.o ethtool.o 7 obj-$(CONFIG_NET_XGENE_V2) += xgene-enet-v2.o
|
/linux/Documentation/devicetree/bindings/rtc/ |
H A D | xgene-rtc.txt | 1 * APM X-Gene Real Time Clock 3 RTC controller for the APM X-Gene Real Time Clock 6 - compatible : Should be "apm,xgene-rtc" 7 - reg: physical base address of the controller and length of memory mapped 9 - interrupts: IRQ line for the RTC. 10 - #clock-cells: Should be 1. 11 - clocks: Reference to the clock entry. 16 compatible = "fixed-clock"; 17 #clock-cells = <1>; 18 clock-frequency = <100000000>; [all …]
|
/linux/Documentation/hwmon/ |
H A D | xgene-hwmon.rst | 1 Kernel driver xgene-hwmon 6 * APM X-Gene SoC 9 ----------- 12 APM X-Gene SoC using the mailbox communication interface. 19 - SoC on-die temperature in milli-degree C 20 - Alarm when high/over temperature occurs 23 - CPU power in uW 24 - IO power in uW 26 sysfs-Interface 27 --------------- [all …]
|
/linux/Documentation/devicetree/bindings/rng/ |
H A D | apm,x-gene-rng.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/rng/apm,x-gene-rng.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: APM X-Gene SoC Random Number Generator 10 - Khuong Dinh <khuong@os.amperecomputing.com> 14 const: apm,xgene-rng 26 - compatible 27 - clocks 28 - interrupts [all …]
|
/linux/Documentation/devicetree/bindings/dma/ |
H A D | apm-xgene-dma.txt | 1 Applied Micro X-Gene SoC DMA nodes 3 DMA nodes are defined to describe on-chip DMA interfaces in 4 APM X-Gene SoC. 7 - compatible: Should be "apm,xgene-dma". 8 - device_type: set to "dma". 9 - reg: Address and length of the register set for the device. 11 1st - DMA control and status register address space. 12 2nd - Descriptor ring control and status register address space. 13 3rd - Descriptor ring command register address space. 14 4th - Soc efuse register address space. [all …]
|
/linux/include/linux/ |
H A D | pci-ecam.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 * Memory address shift values for the byte-level address that 21 * Section 7.2.2, Table 7-1, p. 677. 30 #define PCIE_ECAM_BUS(x) (((x) & PCIE_ECAM_BUS_MASK) << PCIE_ECAM_BUS_SHIFT) argument 31 #define PCIE_ECAM_DEVFN(x) (((x) & PCIE_ECAM_DEVFN_MASK) << PCIE_ECAM_DEVFN_SHIFT) argument 32 #define PCIE_ECAM_REG(x) ((x) & PCIE_ECAM_REG_MASK) argument 66 void __iomem *win; /* 64-bit single mapping */ 67 void __iomem **winp; /* 32-bit per-bus mapping */ 78 /* map_bus when ->sysdata is an instance of pci_config_window */ 85 extern const struct pci_ecam_ops pci_32b_ops; /* 32-bit accesses only */ [all …]
|
/linux/drivers/gpio/ |
H A D | gpio-xgene-sb.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AppliedMicro X-Gene SoC GPIO-Standby Driver 25 #include "gpiolib-acpi.h" 30 #define GPIO_MASK(x) (1U << ((x) % 32)) argument 42 * struct xgene_gpio_sb - GPIO-Standby private data structure. 43 * @gc: memory-mapped GPIO controllers. 59 #define HWIRQ_TO_GPIO(priv, hwirq) ((hwirq) + (priv)->irq_start) 60 #define GPIO_TO_HWIRQ(priv, gpio) ((gpio) - (priv)->irq_start) 67 data = gc->read_reg(reg); in xgene_gpio_set_bit() 72 gc->write_reg(reg, data); in xgene_gpio_set_bit() [all …]
|
/linux/drivers/power/reset/ |
H A D | xgene-reboot.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AppliedMicro X-Gene SoC Reboot Driver 9 * This driver provides system reboot functionality for APM X-Gene SoC. 11 * implements GPIO shutdown, use the gpio-poweroff.c driver. 31 struct xgene_reboot_context *ctx = data->cb_data; in xgene_restart_handler() 34 writel(ctx->mask, ctx->csr); in xgene_restart_handler() 38 dev_emerg(ctx->dev, "Unable to restart system\n"); in xgene_restart_handler() 46 struct device *dev = &pdev->dev; in xgene_reboot_probe() 51 return -ENOMEM; in xgene_reboot_probe() 53 ctx->csr = devm_platform_ioremap_resource(pdev, 0); in xgene_reboot_probe() [all …]
|
/linux/drivers/phy/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 23 Generic MIPI D-PHY support. 25 Provides a number of helpers a core functions for MIPI D-PHY 51 Enable support for the USB high-speed SNPS eUSB2 phy on select 55 tristate "APM X-Gene 15Gbps PHY support" 59 This option enables support for APM X-Gene SoC multi-purpose PHY. 70 interface to interact with USB GEN-II and USB 3.x PHY that is part 84 tristate "Airoha PCIe-PHY Driver" 94 tristate "NXP PTN3222 1-port eUSB2 to USB2 redriver" 99 Enable this to support NXP PTN3222 1-port eUSB2 to USB2 Redriver.
|
/linux/Documentation/devicetree/bindings/gpio/ |
H A D | apm,xgene-gpio-sb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/apm,xgene-gpio-sb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: APM X-Gene Standby GPIO controller 10 - Khuong Dinh <khuong@os.amperecomputing.com> 16 +-----------------+ 17 | X-Gene standby | 18 | GPIO controller +------ GPIO_0 19 +------------+ | | ... [all …]
|
/linux/Documentation/devicetree/bindings/net/ |
H A D | apm-xgene-enet.txt | 1 APM X-Gene SoC Ethernet nodes 3 Ethernet nodes are defined to describe on-chip ethernet interfaces in 4 APM X-Gene SoC. 7 - compatible: Should state binding information from the following list, 8 - "apm,xgene-enet": RGMII based 1G interface 9 - "apm,xgene1-sgenet": SGMII based 1G interface 10 - "apm,xgene1-xgenet": XFI based 10G interface 11 - reg: Address and length of the register set for the device. It contains the 12 information of registers in the same order as described by reg-names 13 - reg-names: Should contain the register set names [all …]
|
/linux/Documentation/devicetree/bindings/perf/ |
H A D | apm-xgene-pmu.txt | 1 * APM X-Gene SoC PMU bindings 3 This is APM X-Gene SoC PMU (Performance Monitoring Unit) module. 6 L3C - L3 cache controller 7 IOB - IO bridge 8 MCB - Memory controller bridge 9 MC - Memory controller 14 - compatible : Shall be "apm,xgene-pmu" for revision 1 or 15 "apm,xgene-pmu-v2" for revision 2. 16 - regmap-csw : Regmap of the CPU switch fabric (CSW) resource. 17 - regmap-mcba : Regmap of the MCB-A (memory bridge) resource. [all …]
|
/linux/drivers/char/hw_random/ |
H A D | xgene-rng.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * APM X-Gene SoC RNG Driver 94 disable_irq(ctx->irq); in xgene_rng_expired_timer() 95 ctx->failure_cnt = 0; in xgene_rng_expired_timer() 96 timer_delete(&ctx->failure_timer); in xgene_rng_expired_timer() 97 enable_irq(ctx->irq); in xgene_rng_expired_timer() 102 ctx->failure_timer.expires = jiffies + 120 * HZ; in xgene_rng_start_timer() 103 add_timer(&ctx->failure_timer); in xgene_rng_start_timer() 111 writel(fro_val, ctx->csr_base + RNG_FRODETUNE); in xgene_rng_init_fro() 112 writel(0x00000000, ctx->csr_base + RNG_ALARMMASK); in xgene_rng_init_fro() [all …]
|
/linux/drivers/acpi/ |
H A D | pci_mcfg.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/pci-acpi.h> 14 #include <linux/pci-ecam.h> 37 ((end) - (start) + 1), \ 104 /* SoC pass2.x */ 109 /* SoC pass1.x */ 110 THUNDER_PEM_QUIRK(2, 0), /* off-chip devices */ 111 THUNDER_PEM_QUIRK(2, 1), /* off-chip devices */ 136 /* X-Gene SoC with v1 PCIe controller */ 147 /* X-Gene SoC with v2.1 PCIe controller */ [all …]
|
/linux/drivers/i2c/busses/ |
H A D | i2c-xgene-slimpro.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * X-Gene SLIMpro I2C Driver 9 * This driver provides support for X-Gene SLIMpro I2C device access 10 * using the APM X-Gene SLIMpro mailbox driver. 14 #include <linux/dma-mapping.h> 62 * dev - Controller number (0-based) 63 * chip - I2C chip address 64 * op - SLIMPRO_IIC_READ or SLIMPRO_IIC_WRITE 65 * proto - SLIMPRO_IIC_SMB_PROTOCOL or SLIMPRO_IIC_I2C_PROTOCOL 66 * addrlen - Length of the address field [all …]
|
/linux/drivers/net/ethernet/apm/ |
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Makefile for APM X-GENE Ethernet driver. 6 obj-$(CONFIG_NET_XGENE) += xgene/ 7 obj-$(CONFIG_NET_XGENE_V2) += xgene-v2/
|