Home
last modified time | relevance | path

Searched full:lpc (Results 1 – 25 of 380) sorted by relevance

12345678910>>...16

/kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/
Daspeed-lpc.txt2 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
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
27 as LPC firmware hub cycles, configuration of the LPC-to-AHB mapping, UART
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/mfd/
Daspeed-lpc.yaml5 $id: http://devicetree.org/schemas/mfd/aspeed-lpc.yaml#
8 title: Aspeed Low Pin Count (LPC) Bus Controller
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
26 * An LPC Host Interface Controller manages functions exposed to the host such
27 as LPC firmware hub cycles, configuration of the LPC-to-AHB mapping, UART
34 Additionally the state of the LPC controller influences the pinmux
42 - aspeed,ast2400-lpc-v2
43 - aspeed,ast2500-lpc-v2
[all …]
/kernel/linux/linux-6.6/drivers/phy/
Dphy-lpc18xx-usb-otg.c29 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_init() local
33 ret = clk_set_rate(lpc->clk, 480000000); in lpc18xx_usb_otg_phy_init()
37 return clk_prepare(lpc->clk); in lpc18xx_usb_otg_phy_init()
42 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_exit() local
44 clk_unprepare(lpc->clk); in lpc18xx_usb_otg_phy_exit()
51 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_power_on() local
54 ret = clk_enable(lpc->clk); in lpc18xx_usb_otg_phy_power_on()
59 ret = regmap_update_bits(lpc->reg, LPC18XX_CREG_CREG0, in lpc18xx_usb_otg_phy_power_on()
62 clk_disable(lpc->clk); in lpc18xx_usb_otg_phy_power_on()
71 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_power_off() local
[all …]
/kernel/linux/linux-5.10/drivers/phy/
Dphy-lpc18xx-usb-otg.c29 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_init() local
33 ret = clk_set_rate(lpc->clk, 480000000); in lpc18xx_usb_otg_phy_init()
37 return clk_prepare(lpc->clk); in lpc18xx_usb_otg_phy_init()
42 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_exit() local
44 clk_unprepare(lpc->clk); in lpc18xx_usb_otg_phy_exit()
51 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_power_on() local
54 ret = clk_enable(lpc->clk); in lpc18xx_usb_otg_phy_power_on()
59 ret = regmap_update_bits(lpc->reg, LPC18XX_CREG_CREG0, in lpc18xx_usb_otg_phy_power_on()
62 clk_disable(lpc->clk); in lpc18xx_usb_otg_phy_power_on()
71 struct lpc18xx_usb_otg_phy *lpc = phy_get_drvdata(phy); in lpc18xx_usb_otg_phy_power_off() local
[all …]
/kernel/linux/linux-5.10/drivers/clocksource/
Dclksrc_st_lpc.c3 * Clocksource using the Low Power Timer found in the Low Power Controller (LPC)
18 #include <dt-bindings/mfd/st-lpc.h>
55 "clksrc-st-lpc", rate, 300, 32, in st_clksrc_init()
58 pr_err("clksrc-st-lpc: Failed to register clocksource\n"); in st_clksrc_init()
71 pr_err("clksrc-st-lpc: Failed to get LPC clock\n"); in st_clksrc_setup_clk()
76 pr_err("clksrc-st-lpc: Failed to enable LPC clock\n"); in st_clksrc_setup_clk()
81 pr_err("clksrc-st-lpc: Failed to get LPC clock rate\n"); in st_clksrc_setup_clk()
96 ret = of_property_read_u32(np, "st,lpc-mode", &mode); in st_clksrc_of_register()
98 pr_err("clksrc-st-lpc: An LPC mode must be provided\n"); in st_clksrc_of_register()
102 /* LPC can either run as a Clocksource or in RTC or WDT mode */ in st_clksrc_of_register()
[all …]
/kernel/linux/linux-6.6/drivers/clocksource/
Dclksrc_st_lpc.c3 * Clocksource using the Low Power Timer found in the Low Power Controller (LPC)
18 #include <dt-bindings/mfd/st-lpc.h>
55 "clksrc-st-lpc", rate, 300, 32, in st_clksrc_init()
58 pr_err("clksrc-st-lpc: Failed to register clocksource\n"); in st_clksrc_init()
71 pr_err("clksrc-st-lpc: Failed to get LPC clock\n"); in st_clksrc_setup_clk()
76 pr_err("clksrc-st-lpc: Failed to enable LPC clock\n"); in st_clksrc_setup_clk()
81 pr_err("clksrc-st-lpc: Failed to get LPC clock rate\n"); in st_clksrc_setup_clk()
96 ret = of_property_read_u32(np, "st,lpc-mode", &mode); in st_clksrc_of_register()
98 pr_err("clksrc-st-lpc: An LPC mode must be provided\n"); in st_clksrc_of_register()
102 /* LPC can either run as a Clocksource or in RTC or WDT mode */ in st_clksrc_of_register()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/watchdog/
Dst_lpc_wdt.txt1 STMicroelectronics Low Power Controller (LPC) - Watchdog
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
7 [See: ../rtc/rtc-st-lpc.txt for RTC options]
8 [See: ../timer/st,stih407-lpc for Clocksource options]
12 - compatible : Should be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
33 lpc@fde05000 {
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/watchdog/
Dst_lpc_wdt.txt1 STMicroelectronics Low Power Controller (LPC) - Watchdog
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
7 [See: ../rtc/rtc-st-lpc.txt for RTC options]
8 [See: ../timer/st,stih407-lpc for Clocksource options]
12 - compatible : Should be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
33 lpc@fde05000 {
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/rtc/
Drtc-st-lpc.txt1 STMicroelectronics Low Power Controller (LPC) - RTC
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
8 [See: ../timer/st,stih407-lpc for Clocksource options]
12 - compatible : Must be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
23 lpc@fde05000 {
24 compatible = "st,stih407-lpc";
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/rtc/
Drtc-st-lpc.txt1 STMicroelectronics Low Power Controller (LPC) - RTC
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
8 [See: ../timer/st,stih407-lpc for Clocksource options]
12 - compatible : Must be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
23 lpc@fde05000 {
24 compatible = "st,stih407-lpc";
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/timer/
Dst,stih407-lpc1 STMicroelectronics Low Power Controller (LPC) - Clocksource
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
8 [See: ../rtc/rtc-st-lpc.txt for RTC options]
12 - compatible : Must be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
23 lpc@fde05000 {
24 compatible = "st,stih407-lpc";
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/timer/
Dst,stih407-lpc1 STMicroelectronics Low Power Controller (LPC) - Clocksource
4 LPC currently supports Watchdog OR Real Time Clock OR Clocksource
8 [See: ../rtc/rtc-st-lpc.txt for RTC options]
12 - compatible : Must be: "st,stih407-lpc"
13 - reg : LPC registers base address + size
14 - interrupts : LPC interrupt line number and associated flags
15 - clocks : Clock used by LPC device (See: ../clock/clock-bindings.txt)
16 - st,lpc-mode : The LPC can run either one of three modes:
23 lpc@fde05000 {
24 compatible = "st,stih407-lpc";
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/ipmi/
Daspeed,ast2400-kcs-bmc.yaml14 interfaces on the LPC bus for in-band IPMI communication with their host.
43 aspeed,lpc-io-reg:
48 The host CPU LPC IO data and status addresses for the device. For most
52 aspeed,lpc-interrupts:
57 A 2-cell property expressing the LPC SerIRQ number and the interrupt
67 description: The LPC channel number in the controller
95 - aspeed,lpc-io-reg
103 aspeed,lpc-io-reg = <0xca2>;
104 aspeed,lpc-interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
/kernel/linux/linux-5.10/drivers/soc/aspeed/
DKconfig10 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.
/kernel/linux/linux-6.6/drivers/soc/aspeed/
Daspeed-lpc-ctrl.c17 #include <linux/aspeed-lpc-ctrl.h>
19 #define DEVICE_NAME "aspeed-lpc-ctrl"
110 * The bottom half of HICR7 is the MSB of the HOST LPC in aspeed_lpc_ctrl_ioctl()
167 * addr (host lpc address) is safe regardless of values. This in aspeed_lpc_ctrl_ioctl()
169 * side of the LPC bus. This cannot impact the hosts own in aspeed_lpc_ctrl_ioctl()
170 * memory space by surprise as LPC specific accessors are in aspeed_lpc_ctrl_ioctl()
205 * Enable LPC FHW cycles. This is required for the host to in aspeed_lpc_ctrl_ioctl()
285 if (!of_device_is_compatible(np, "aspeed,ast2400-lpc-v2") && in aspeed_lpc_ctrl_probe()
286 !of_device_is_compatible(np, "aspeed,ast2500-lpc-v2") && in aspeed_lpc_ctrl_probe()
287 !of_device_is_compatible(np, "aspeed,ast2600-lpc-v2")) { in aspeed_lpc_ctrl_probe()
[all …]
DKconfig8 tristate "ASPEED LPC firmware cycle control"
13 Control LPC firmware cycle mappings through ioctl()s. The driver
15 host LPC read/write region can be buffered.
18 tristate "ASPEED LPC snoop support"
23 Provides a driver to control the LPC snoop interface which
25 the host to an arbitrary LPC I/O port.
/kernel/linux/linux-6.6/drivers/bus/
Dhisi_lpc.c22 #define DRV_NAME "hisi-lpc"
50 #define LPC_REG_OP_LEN 0x10 /* LPC cycles count per start */
58 /* The minimal nanosecond interval for each query on LPC cycle status */
66 * for extra 256 lpc clocks, so (256 + 13) * 30ns = 8 us. The maximum burst
92 * hisi_lpc_target_in - trigger a series of LPC cycles for read operation
93 * @lpcdev: pointer to hisi lpc device
94 * @para: some parameters used to control the lpc I/O operations
95 * @addr: the lpc I/O target port address
145 * hisi_lpc_target_out - trigger a series of LPC cycles for write operation
146 * @lpcdev: pointer to hisi lpc device
[all …]
/kernel/linux/linux-6.6/drivers/watchdog/
Dst_lpc_wdt.c3 * ST's LPC Watchdog
23 #include <dt-bindings/mfd/st-lpc.h>
29 /* LPC as WDT */
58 .compatible = "st,stih407-lpc",
129 .identity = "ST LPC WDT",
162 ret = of_property_read_u32(np, "st,lpc-mode", &mode); in st_wdog_probe()
164 dev_err(dev, "An LPC mode must be provided\n"); in st_wdog_probe()
168 /* LPC can either run as a Clocksource or in RTC or WDT mode */ in st_wdog_probe()
236 dev_info(dev, "LPC Watchdog driver registered, reset type is %s", in st_wdog_probe()
291 .name = "st-lpc-wdt",
[all …]
/kernel/linux/linux-5.10/drivers/bus/
Dhisi_lpc.c22 #define DRV_NAME "hisi-lpc"
50 #define LPC_REG_OP_LEN 0x10 /* LPC cycles count per start */
58 /* The minimal nanosecond interval for each query on LPC cycle status */
66 * for extra 256 lpc clocks, so (256 + 13) * 30ns = 8 us. The maximum burst
92 * hisi_lpc_target_in - trigger a series of LPC cycles for read operation
93 * @lpcdev: pointer to hisi lpc device
94 * @para: some parameters used to control the lpc I/O operations
95 * @addr: the lpc I/O target port address
145 * hisi_lpc_target_out - trigger a series of LPC cycles for write operation
146 * @lpcdev: pointer to hisi lpc device
[all …]
/kernel/linux/linux-5.10/drivers/watchdog/
Dst_lpc_wdt.c3 * ST's LPC Watchdog
23 #include <dt-bindings/mfd/st-lpc.h>
29 /* LPC as WDT */
58 .compatible = "st,stih407-lpc",
129 .identity = "ST LPC WDT",
162 ret = of_property_read_u32(np, "st,lpc-mode", &mode); in st_wdog_probe()
164 dev_err(dev, "An LPC mode must be provided\n"); in st_wdog_probe()
168 /* LPC can either run as a Clocksource or in RTC or WDT mode */ in st_wdog_probe()
236 dev_info(dev, "LPC Watchdog driver registered, reset type is %s", in st_wdog_probe()
296 .name = "st-lpc-wdt",
[all …]
/kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/
Dopal-lpc.c3 * PowerNV LPC bus handling.
187 struct lpc_debugfs_entry *lpc = filp->private_data; in lpc_debug_read() local
204 if (lpc->lpc_type == OPAL_LPC_FW) { in lpc_debug_read()
210 rc = opal_lpc_read(opal_lpc_chip_id, lpc->lpc_type, pos, in lpc_debug_read()
224 * respective positions (ie, LPC position). in lpc_debug_read()
229 * IE. If the LPC transaction has bytes B0, B1, B2 and B3 in that in lpc_debug_read()
278 struct lpc_debugfs_entry *lpc = filp->private_data; in lpc_debug_write() local
295 if (lpc->lpc_type == OPAL_LPC_FW) { in lpc_debug_write()
334 rc = opal_lpc_write(opal_lpc_chip_id, lpc->lpc_type, pos, in lpc_debug_write()
374 root = debugfs_create_dir("lpc", powerpc_debugfs_root); in opal_lpc_init_debugfs()
[all …]
/kernel/linux/linux-6.6/arch/powerpc/platforms/powernv/
Dopal-lpc.c3 * PowerNV LPC bus handling.
187 struct lpc_debugfs_entry *lpc = filp->private_data; in lpc_debug_read() local
204 if (lpc->lpc_type == OPAL_LPC_FW) { in lpc_debug_read()
210 rc = opal_lpc_read(opal_lpc_chip_id, lpc->lpc_type, pos, in lpc_debug_read()
224 * respective positions (ie, LPC position). in lpc_debug_read()
229 * IE. If the LPC transaction has bytes B0, B1, B2 and B3 in that in lpc_debug_read()
278 struct lpc_debugfs_entry *lpc = filp->private_data; in lpc_debug_write() local
295 if (lpc->lpc_type == OPAL_LPC_FW) { in lpc_debug_write()
334 rc = opal_lpc_write(opal_lpc_chip_id, lpc->lpc_type, pos, in lpc_debug_write()
374 root = debugfs_create_dir("lpc", arch_debugfs_dir); in opal_lpc_init_debugfs()
[all …]
/kernel/linux/linux-5.10/include/linux/
Ddtlk.h21 (that is, all but LPC) */
43 /* LPC speak commands */
49 /* LPC Port Status Flags (valid only after one of the LPC
52 indicates the LPC synthesizer is
55 indicates that the hardware LPC
60 indicates that the LPC data buffer
/kernel/linux/linux-6.6/include/linux/
Ddtlk.h21 (that is, all but LPC) */
43 /* LPC speak commands */
49 /* LPC Port Status Flags (valid only after one of the LPC
52 indicates the LPC synthesizer is
55 indicates that the hardware LPC
60 indicates that the LPC data buffer
/kernel/linux/linux-6.6/Documentation/arch/loongarch/
Dirq-chip-model.rst11 PCH-PIC (Main Interrupt Controller in LS7A chipset), PCH-LPC (LPC Interrupt Controller
15 controllers (in CPU), while PCH-PIC/PCH-LPC/PCH-MSI are controllers out of CPU (i.e.,
24 interrupts go to PCH-PIC/PCH-LPC/PCH-MSI and gathered by HTVECINTC, and then go
48 | PCH-LPC | | Devices | | Devices |
61 interrupts go to PCH-PIC/PCH-LPC/PCH-MSI and gathered by EIOINTC, and then go to
80 | PCH-LPC | | Devices | | Devices |
127 PCH-LPC::
159 - PCH-LPC is "LPC Interrupts" described in Section 24.3 of

12345678910>>...16