| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/ |
| D | aspeed-lpc.txt | 2 Device tree bindings for the Aspeed Low Pin Count (LPC) Bus Controller 5 The LPC bus is a means to bridge a host CPU to a number of low-bandwidth 7 primary use case of the Aspeed LPC controller is as a slave on the bus 11 The LPC controller is represented as a multi-function device to account for the 14 "basically compatible with the [LPC registers from the] popular BMC controller 17 here labeled the "host" portion of the controller, includes, but is not limited 22 * An LPC Host Controller: Manages LPC functions such as host vs slave mode, the 23 physical properties of some LPC pins, configuration of serial IRQs, and 24 APB-to-LPC bridging amonst other functions. 26 * An LPC Host Interface Controller: Manages functions exposed to the host such [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/mfd/ |
| D | aspeed-lpc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/mfd/aspeed-lpc.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Aspeed Low Pin Count (LPC) Bus Controller 11 - Andrew Jeffery <andrew@aj.id.au> 12 - Chia-Wei Wang <chiawei_wang@aspeedtech.com> 15 The LPC bus is a means to bridge a host CPU to a number of low-bandwidth 17 primary use case of the Aspeed LPC controller is as a slave on the bus 21 The LPC controller is represented as a multi-function device to account for the [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/ipmi/ |
| D | aspeed-kcs-bmc.txt | 3 The Aspeed SOCs (AST2400 and AST2500) are commonly used as BMCs 5 used to perform in-band IPMI communication with their host. 9 - compatible : should be one of 10 "aspeed,ast2400-kcs-bmc" 11 "aspeed,ast2500-kcs-bmc" 12 - interrupts : interrupt generated by the controller 13 - kcs_chan : The LPC channel number in the controller 14 - kcs_addr : The host CPU IO map address 18 - compatible : should be one of 19 "aspeed,ast2400-kcs-bmc-v2" [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/ipmi/ |
| D | aspeed,ast2400-kcs-bmc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Andrew Jeffery <andrew@aj.id.au> 13 The Aspeed BMC SoCs typically use the Keyboard-Controller-Style (KCS) 14 interfaces on the LPC bus for in-band IPMI communication with their host. 19 - description: Channel ID derived from reg 22 - aspeed,ast2400-kcs-bmc-v2 23 - aspeed,ast2500-kcs-bmc-v2 [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/pinctrl/ |
| D | aspeed,ast2500-pinctrl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-or-later 3 --- 4 $id: http://devicetree.org/schemas/pinctrl/aspeed,ast2500-pinctrl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: ASPEED AST2500 Pin Controller 10 - Andrew Jeffery <andrew@aj.id.au> 16 - compatible: Should be one of the following: 17 "aspeed,ast2500-scu", "syscon", "simple-mfd" 18 "aspeed,g5-scu", "syscon", "simple-mfd" 25 const: aspeed,ast2500-pinctrl [all …]
|
| /kernel/linux/linux-5.10/drivers/soc/aspeed/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 10 tristate "Aspeed ast2400/2500 HOST LPC to BMC bridge control" 12 Control Aspeed ast2400/2500 HOST LPC to BMC mappings through 14 region where the host LPC read/write region can be buffered. 17 tristate "Aspeed ast2500 HOST LPC snoop support" 20 Provides a driver to control the LPC snoop interface which 22 the host to an arbitrary LPC I/O port. 26 tristate "Aspeed ast2400/2500 HOST P2A VGA MMIO to BMC bridge control" 28 Control Aspeed ast2400/2500 HOST P2A VGA MMIO to BMC mappings through 30 a pre-defined region.
|
| D | aspeed-lpc-snoop.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Provides a simple driver to control the ASPEED LPC snoop interface which 7 * the host to an arbitrary LPC I/O port. 9 * Typically used by the BMC to "watch" host boot progress via port 27 #define DEVICE_NAME "aspeed-lpc-snoop" 56 /* The ast2400 has bits 14 and 15 as reserved, whereas the ast2500 77 return container_of(file->private_data, in snoop_file_to_chan() 89 if (kfifo_is_empty(&chan->fifo)) { in snoop_file_read() 90 if (file->f_flags & O_NONBLOCK) in snoop_file_read() 91 return -EAGAIN; in snoop_file_read() [all …]
|
| D | aspeed-lpc-ctrl.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 16 #include <linux/aspeed-lpc-ctrl.h> 18 #define DEVICE_NAME "aspeed-lpc-ctrl" 39 return container_of(file->private_data, struct aspeed_lpc_ctrl, in file_aspeed_lpc_ctrl() 46 unsigned long vsize = vma->vm_end - vma->vm_start; in aspeed_lpc_ctrl_mmap() 47 pgprot_t prot = vma->vm_page_prot; in aspeed_lpc_ctrl_mmap() 49 if (vma->vm_pgoff + vma_pages(vma) > lpc_ctrl->mem_size >> PAGE_SHIFT) in aspeed_lpc_ctrl_mmap() 50 return -EINVAL; in aspeed_lpc_ctrl_mmap() 55 if (remap_pfn_range(vma, vma->vm_start, in aspeed_lpc_ctrl_mmap() 56 (lpc_ctrl->mem_base >> PAGE_SHIFT) + vma->vm_pgoff, in aspeed_lpc_ctrl_mmap() [all …]
|
| /kernel/linux/linux-6.6/drivers/soc/aspeed/ |
| D | aspeed-lpc-ctrl.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 17 #include <linux/aspeed-lpc-ctrl.h> 19 #define DEVICE_NAME "aspeed-lpc-ctrl" 45 return container_of(file->private_data, struct aspeed_lpc_ctrl, in file_aspeed_lpc_ctrl() 52 unsigned long vsize = vma->vm_end - vma->vm_start; in aspeed_lpc_ctrl_mmap() 53 pgprot_t prot = vma->vm_page_prot; in aspeed_lpc_ctrl_mmap() 55 if (vma->vm_pgoff + vma_pages(vma) > lpc_ctrl->mem_size >> PAGE_SHIFT) in aspeed_lpc_ctrl_mmap() 56 return -EINVAL; in aspeed_lpc_ctrl_mmap() 61 if (remap_pfn_range(vma, vma->vm_start, in aspeed_lpc_ctrl_mmap() 62 (lpc_ctrl->mem_base >> PAGE_SHIFT) + vma->vm_pgoff, in aspeed_lpc_ctrl_mmap() [all …]
|
| D | aspeed-lpc-snoop.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Provides a simple driver to control the ASPEED LPC snoop interface which 7 * the host to an arbitrary LPC I/O port. 9 * Typically used by the BMC to "watch" host boot progress via port 26 #define DEVICE_NAME "aspeed-lpc-snoop" 54 /* The ast2400 has bits 14 and 15 as reserved, whereas the ast2500 76 return container_of(file->private_data, in snoop_file_to_chan() 88 if (kfifo_is_empty(&chan->fifo)) { in snoop_file_read() 89 if (file->f_flags & O_NONBLOCK) in snoop_file_read() 90 return -EAGAIN; in snoop_file_read() [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | aspeed-g5.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 2 #include <dt-bindings/clock/aspeed-clock.h> 3 #include <dt-bindings/interrupt-controller/aspeed-scu-ic.h> 7 compatible = "aspeed,ast2500"; 8 #address-cells = <1>; 9 #size-cells = <1>; 10 interrupt-parent = <&vic>; 36 #address-cells = <1>; 37 #size-cells = <0>; 40 compatible = "arm,arm1176jzf-s"; [all …]
|
| D | aspeed-g6.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/interrupt-controller/aspeed-scu-ic.h> 6 #include <dt-bindings/clock/ast2600-clock.h> 11 #address-cells = <1>; 12 #size-cells = <1>; 13 interrupt-parent = <&gic>; 43 #address-cells = <1>; 44 #size-cells = <0>; 45 enable-method = "aspeed,ast2600-smp"; [all …]
|
| D | aspeed-bmc-amd-ethanolx.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 6 #include "aspeed-g5.dtsi" 7 #include <dt-bindings/gpio/aspeed-gpio.h> 11 compatible = "amd,ethanolx-bmc", "aspeed,ast2500"; 21 stdout-path = &uart5; 25 compatible = "gpio-leds"; 35 iio-hwmon { 36 compatible = "iio-hwmon"; 37 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, <&adc 4>; [all …]
|
| D | aspeed-bmc-facebook-tiogapass.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 4 /dts-v1/; 6 #include "aspeed-g5.dtsi" 7 #include <dt-bindings/gpio/aspeed-gpio.h> 8 #include <dt-bindings/i2c/i2c.h> 12 compatible = "facebook,tiogapass-bmc", "aspeed,ast2500"; 39 stdout-path = &uart5; 47 iio-hwmon { 48 compatible = "iio-hwmon"; 49 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/aspeed/ |
| D | uart-routing.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 5 --- 6 $id: http://devicetree.org/schemas/soc/aspeed/uart-routing.yaml# 7 $schema: http://devicetree.org/meta-schemas/core.yaml# 12 - Oskar Senft <osk@google.com> 13 - Chia-Wei Wang <chiawei_wang@aspeedtech.com> 17 the built-in UARTS and physical serial I/O ports. 20 This can be used to enable Host <-> BMC communication via UARTs, e.g. to 21 allow access to the Host's serial console. 30 - enum: [all …]
|
| /kernel/linux/linux-5.10/drivers/char/ipmi/ |
| D | kcs_bmc_aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2015-2018, Intel Corporation. 6 #define pr_fmt(fmt) "aspeed-kcs-bmc: " fmt 26 #define DEVICE_NAME "ast-kcs-bmc" 30 /* mapped to lpc-bmc@0 IO space */ 56 /* mapped to lpc-host@80 IO space */ 76 rc = regmap_read(priv->map, reg, &val); in aspeed_kcs_inb() 87 rc = regmap_write(priv->map, reg, data); in aspeed_kcs_outb() 109 switch (kcs_bmc->channel) { in aspeed_kcs_set_address() 111 regmap_update_bits(priv->map, LPC_HICR4, in aspeed_kcs_set_address() [all …]
|
| /kernel/linux/linux-5.10/drivers/mtd/spi-nor/controllers/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 8 in the Aspeed AST2500/AST2400 SoCs when attached to SPI NOR chips, 10 the host firmware. The implementation only supports SPI NOR. 24 Enable support for the NXP LPC SPI Flash Interface controller. 47 will be called intel-spi-pci. 64 will be called intel-spi-platform.
|
| /kernel/linux/linux-6.6/drivers/char/ipmi/ |
| D | kcs_bmc_aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2015-2018, Intel Corporation. 6 #define pr_fmt(fmt) "aspeed-kcs-bmc: " fmt 27 #define DEVICE_NAME "ast-kcs-bmc" 34 * LPCyE Enable LPC channel y 35 * IBFIEy Input Buffer Full IRQ Enable for LPC channel y 36 * IRQxEy Assert SerIRQ x for LPC channel y (Deprecated, use IDyIRQX, IRQXEy) 37 * IDyIRQX Use the specified 4-bit SerIRQ for LPC channel y 38 * SELyIRQX SerIRQ polarity for LPC channel y (low: 0, high: 1) 39 * IRQXEy Assert the SerIRQ specified in IDyIRQX for LPC channel y [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/aspeed/ |
| D | aspeed-bmc-amd-ethanolx.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 6 #include "aspeed-g5.dtsi" 7 #include <dt-bindings/gpio/aspeed-gpio.h> 8 #include <dt-bindings/interrupt-controller/irq.h> 12 compatible = "amd,ethanolx-bmc", "aspeed,ast2500"; 18 reserved-memory { 19 #address-cells = <1>; 20 #size-cells = <1>; 26 compatible = "shared-dma-pool"; [all …]
|
| D | aspeed-bmc-amd-daytonax.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "aspeed-g5.dtsi" 5 #include <dt-bindings/gpio/aspeed-gpio.h> 6 #include <dt-bindings/interrupt-controller/irq.h> 10 compatible = "amd,daytonax-bmc", "aspeed,ast2500"; 16 reserved-memory { 17 #address-cells = <1>; 18 #size-cells = <1>; 24 compatible = "shared-dma-pool"; [all …]
|
| D | aspeed-bmc-facebook-tiogapass.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 4 /dts-v1/; 6 #include "aspeed-g5.dtsi" 7 #include <dt-bindings/gpio/aspeed-gpio.h> 8 #include <dt-bindings/i2c/i2c.h> 12 compatible = "facebook,tiogapass-bmc", "aspeed,ast2500"; 39 stdout-path = &uart5; 47 iio-hwmon { 48 compatible = "iio-hwmon"; 49 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, [all …]
|
| /kernel/linux/linux-5.10/drivers/clk/ |
| D | clk-aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 #define pr_fmt(fmt) "clk-aspeed: " fmt 13 #include <dt-bindings/clock/aspeed-clock.h> 15 #include "clk-aspeed.h" 49 [ASPEED_CLK_GATE_ECLK] = { 0, 6, "eclk-gate", "eclk", 0 }, /* Video Engine */ 50 [ASPEED_CLK_GATE_GCLK] = { 1, 7, "gclk-gate", NULL, 0 }, /* 2D engine */ 51 [ASPEED_CLK_GATE_MCLK] = { 2, -1, "mclk-gate", "mpll", CLK_IS_CRITICAL }, /* SDRAM */ 52 [ASPEED_CLK_GATE_VCLK] = { 3, -1, "vclk-gate", NULL, 0 }, /* Video Capture */ 53 [ASPEED_CLK_GATE_BCLK] = { 4, 8, "bclk-gate", "bclk", CLK_IS_CRITICAL }, /* PCIe/PCI */ 54 [ASPEED_CLK_GATE_DCLK] = { 5, -1, "dclk-gate", NULL, CLK_IS_CRITICAL }, /* DAC */ [all …]
|
| /kernel/linux/linux-6.6/drivers/clk/ |
| D | clk-aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 #define pr_fmt(fmt) "clk-aspeed: " fmt 13 #include <dt-bindings/clock/aspeed-clock.h> 15 #include "clk-aspeed.h" 49 [ASPEED_CLK_GATE_ECLK] = { 0, 6, "eclk-gate", "eclk", 0 }, /* Video Engine */ 50 [ASPEED_CLK_GATE_GCLK] = { 1, 7, "gclk-gate", NULL, 0 }, /* 2D engine */ 51 [ASPEED_CLK_GATE_MCLK] = { 2, -1, "mclk-gate", "mpll", CLK_IS_CRITICAL }, /* SDRAM */ 52 [ASPEED_CLK_GATE_VCLK] = { 3, -1, "vclk-gate", NULL, 0 }, /* Video Capture */ 53 [ASPEED_CLK_GATE_BCLK] = { 4, 8, "bclk-gate", "bclk", CLK_IS_CRITICAL }, /* PCIe/PCI */ 54 [ASPEED_CLK_GATE_DCLK] = { 5, -1, "dclk-gate", NULL, CLK_IS_CRITICAL }, /* DAC */ [all …]
|
| /kernel/linux/linux-6.6/drivers/tty/serial/8250/ |
| D | 8250_aspeed_vuart.c | 1 // SPDX-License-Identifier: GPL-2.0+ 53 * controller) and one is on the host CPU side. 55 * It allows the BMC to provide to the host a "UART" that pipes into 61 * at what IO port and interrupt number the host side will appear 62 * to the host on the Host <-> BMC LPC bus. It could be different on a 68 return readb(vuart->port->port.membase + reg); in aspeed_vuart_readb() 73 writeb(val, vuart->port->port.membase + reg); in aspeed_vuart_writeb() 91 return -EINVAL; in aspeed_vuart_set_lpc_address() 135 return -EINVAL; in aspeed_vuart_set_sirq() 251 struct aspeed_vuart *vuart = uart_8250_port->port.private_data; in aspeed_vuart_startup() [all …]
|
| /kernel/linux/linux-5.10/drivers/tty/serial/8250/ |
| D | 8250_aspeed_vuart.c | 1 // SPDX-License-Identifier: GPL-2.0+ 50 * controller) and one is on the host CPU side. 52 * It allows the BMC to provide to the host a "UART" that pipes into 58 * at what IO port and interrupt number the host side will appear 59 * to the host on the Host <-> BMC LPC bus. It could be different on a 69 addr = (readb(vuart->regs + ASPEED_VUART_ADDRH) << 8) | in lpc_address_show() 70 (readb(vuart->regs + ASPEED_VUART_ADDRL)); in lpc_address_show() 72 return snprintf(buf, PAGE_SIZE - 1, "0x%x\n", addr); in lpc_address_show() 87 writeb(val >> 8, vuart->regs + ASPEED_VUART_ADDRH); in lpc_address_store() 88 writeb(val >> 0, vuart->regs + ASPEED_VUART_ADDRL); in lpc_address_store() [all …]
|