| /linux/Documentation/devicetree/bindings/memory-controllers/ |
| H A D | mediatek,smi-common.yaml | 5 $id: http://devicetree.org/schemas/memory-controllers/mediatek,smi-common.yaml# 8 title: SMI (Smart Multimedia Interface) Common 16 MediaTek SMI have two generations of HW architecture, here is the list 21 There's slight differences between the two SMI, for generation 2, the 23 for generation 1, the register is at smi ao base(smi always on register 24 base). Besides that, the smi async clock should be prepared and enabled for 25 SMI generation 1 to transform the smi clock into emi clock domain, but that is 26 not needed for SMI generation 2. 32 - mediatek,mt2701-smi-common 33 - mediatek,mt2712-smi-common [all …]
|
| H A D | mediatek,smi-larb.yaml | 5 $id: http://devicetree.org/schemas/memory-controllers/mediatek,smi-larb.yaml# 8 title: SMI (Smart Multimedia Interface) Local Arbiter 20 - mediatek,mt2701-smi-larb 21 - mediatek,mt2712-smi-larb 22 - mediatek,mt6779-smi-larb 23 - mediatek,mt6795-smi-larb 24 - mediatek,mt6893-smi-larb 25 - mediatek,mt8167-smi-larb 26 - mediatek,mt8173-smi-larb 27 - mediatek,mt8183-smi-larb [all …]
|
| /linux/drivers/platform/x86/ |
| H A D | serial-multi-instantiate.c | 44 struct smi { struct 89 static void smi_devs_unregister(struct smi *smi) in smi_devs_unregister() argument 92 while (smi->i2c_num--) in smi_devs_unregister() 93 i2c_unregister_device(smi->i2c_devs[smi->i2c_num]); in smi_devs_unregister() 97 while (smi->spi_num--) in smi_devs_unregister() 98 spi_unregister_device(smi->spi_devs[smi->spi_num]); in smi_devs_unregister() 105 * @smi: Internal struct for Serial multi instantiate driver 110 static int smi_spi_probe(struct platform_device *pdev, struct smi *smi, in smi_spi_probe() argument 128 smi->spi_devs = devm_kcalloc(dev, count, sizeof(*smi->spi_devs), GFP_KERNEL); in smi_spi_probe() 129 if (!smi->spi_devs) in smi_spi_probe() [all …]
|
| /linux/drivers/watchdog/ |
| H A D | iTCO_vendor_support.c | 47 "0 (none), 1=SuperMicro Pent3, 911=Broken SMI BIOS"); 62 * BIOS setup -> Power -> TCO Logic SMI Enable -> Within5Minutes 63 * This setting enables SMI to clear the watchdog expired flag. 64 * If BIOS or CPU fail which may cause SMI hang, then system will 66 * application has to take over the control from SMI. 81 /* Bit 13: TCO_EN -> 0 = Disables TCO logic generating an SMI# */ in supermicro_old_pre_start() 83 val32 &= 0xffffdfff; /* Turn off SMI clearing watchdog */ in supermicro_old_pre_start() 91 /* Bit 13: TCO_EN -> 1 = Enables the TCO logic to generate SMI# */ in supermicro_old_pre_stop() 93 val32 |= 0x00002000; /* Turn on SMI clearing watchdog */ in supermicro_old_pre_stop() 103 * the SMI handler clear's the TIMEOUT bit in the TC01_STS register [all …]
|
| /linux/Documentation/userspace-api/ |
| H A D | dcdbas.rst | 28 management information via a system management interrupt (SMI). The SMI data 30 buffer is required for the SMI. The driver maintains the memory required for 31 the SMI and provides a way for the application to generate the SMI. 41 a SMI using this driver: 45 3) Write "1" to smi_request to generate a calling interface SMI or 46 "2" to generate a raw SMI. 57 a driver perform a SMI after the OS has finished shutting down. 71 2) Write type of SMI that driver needs to perform to host_control_smi_type. 74 (Driver will perform host control SMI when it is notified that the OS 78 Host Control SMI Type [all …]
|
| /linux/drivers/memory/ |
| H A D | mtk-smi.c | 19 #include <soc/mediatek/smi.h> 23 /* SMI COMMON */ 39 /* SMI LARB */ 104 MTK_SMI_GEN2, /* gen2 smi common */ 105 MTK_SMI_GEN2_SUB_COMM, /* gen2 smi sub common */ 108 /* larbs: Require apb/smi clocks while gals is optional. */ 109 static const char * const mtk_smi_larb_clks[] = {"apb", "smi", "gals"}; 114 * common: Require these four clocks in has_gals case. Otherwise, only apb/smi are required. 115 * sub common: Require apb/smi/gals0 clocks in has_gals case. Otherwise, only apb/smi are required. 117 static const char * const mtk_smi_common_clks[] = {"apb", "smi", "gals0", "gals1"}; [all …]
|
| /linux/arch/arm/boot/dts/mediatek/ |
| H A D | mt7623n.dtsi | 60 compatible = "mediatek,mt7623-smi-larb", 61 "mediatek,mt2701-smi-larb"; 63 mediatek,smi = <&smi_common>; 67 clock-names = "apb", "smi"; 72 compatible = "mediatek,mt7623-smi-larb", 73 "mediatek,mt2701-smi-larb"; 75 mediatek,smi = <&smi_common>; 79 clock-names = "apb", "smi"; 84 compatible = "mediatek,mt7623-smi-larb", 85 "mediatek,mt2701-smi-larb"; [all …]
|
| /linux/drivers/char/ipmi/ |
| H A D | ipmi_si_sm.h | 28 /* Results of SMI events. */ 44 /* Handlers for the SMI state machine. */ 56 unsigned int (*init_data)(struct si_sm_data *smi, 65 int (*start_transaction)(struct si_sm_data *smi, 73 int (*get_result)(struct si_sm_data *smi, 84 enum si_sm_result (*event)(struct si_sm_data *smi, long time); 87 * Attempt to detect an SMI. Returns 0 on success or nonzero 90 int (*detect)(struct si_sm_data *smi); 93 void (*cleanup)(struct si_sm_data *smi); 95 /* Return the size of the SMI structure in bytes. */
|
| /linux/Documentation/devicetree/bindings/mtd/ |
| H A D | spear_smi.txt | 1 * SPEAr SMI 4 - compatible : "st,spear600-smi" 9 - clock-rate : Functional clock rate of SMI in Hz 12 - st,smi-fast-mode : Flash supports read in fast mode 16 smi: flash@fc000000 { 17 compatible = "st,spear600-smi"; 26 st,smi-fast-mode;
|
| /linux/arch/arm64/boot/dts/mediatek/ |
| H A D | mt8167.dtsi | 133 smi_common: smi@14017000 { 134 compatible = "mediatek,mt8167-smi-common"; 138 clock-names = "apb", "smi"; 143 compatible = "mediatek,mt8167-smi-larb"; 145 mediatek,smi = <&smi_common>; 148 clock-names = "apb", "smi"; 153 compatible = "mediatek,mt8167-smi-larb"; 155 mediatek,smi = <&smi_common>; 158 clock-names = "apb", "smi"; 163 compatible = "mediatek,mt8167-smi-larb"; [all …]
|
| H A D | mt8195.dtsi | 2176 smi_sub_common_vpp0_vpp1_2x1: smi@14010000 { 2177 compatible = "mediatek,mt8195-smi-sub-common"; 2182 clock-names = "apb", "smi", "gals0"; 2183 mediatek,smi = <&smi_common_vpp>; 2187 smi_sub_common_vdec_vpp0_2x1: smi@14011000 { 2188 compatible = "mediatek,mt8195-smi-sub-common"; 2193 clock-names = "apb", "smi", "gals0"; 2194 mediatek,smi = <&smi_common_vpp>; 2198 smi_common_vpp: smi@14012000 { 2199 compatible = "mediatek,mt8195-smi-common-vpp"; [all …]
|
| H A D | mt2712e.dtsi | 1001 compatible = "mediatek,mt2712-smi-larb"; 1003 mediatek,smi = <&smi_common0>; 1008 clock-names = "apb", "smi"; 1011 smi_common0: smi@14022000 { 1012 compatible = "mediatek,mt2712-smi-common"; 1017 clock-names = "apb", "smi"; 1021 compatible = "mediatek,mt2712-smi-larb"; 1023 mediatek,smi = <&smi_common1>; 1028 clock-names = "apb", "smi"; 1032 compatible = "mediatek,mt2712-smi-larb"; [all …]
|
| H A D | mt8192.dtsi | 1473 smi_common: smi@14002000 { 1474 compatible = "mediatek,mt8192-smi-common"; 1480 clock-names = "apb", "smi", "gals0", "gals1"; 1485 compatible = "mediatek,mt8192-smi-larb"; 1488 mediatek,smi = <&smi_common>; 1490 clock-names = "apb", "smi"; 1495 compatible = "mediatek,mt8192-smi-larb"; 1498 mediatek,smi = <&smi_common>; 1500 clock-names = "apb", "smi"; 1671 compatible = "mediatek,mt8192-smi-larb"; [all …]
|
| H A D | mt8365.dtsi | 399 mediatek,smi = <&smi_common>; 405 mediatek,smi = <&smi_common>; 411 mediatek,smi = <&smi_common>; 429 mediatek,smi = <&smi_common>; 830 smi_common: smi@14002000 { 831 compatible = "mediatek,mt8365-smi-common"; 837 clock-names = "apb", "smi", "gals0", "gals1"; 842 compatible = "mediatek,mt8365-smi-larb", 843 "mediatek,mt8186-smi-larb"; 845 mediatek,smi = <&smi_common>; [all …]
|
| /linux/drivers/net/dsa/mv88e6xxx/ |
| H A D | smi.c | 3 * Marvell 88E6xxx System Management Interface (SMI) support 11 #include "smi.h" 13 /* The switch ADDR[4:1] configuration pins define the chip SMI device address 14 * (ADDR[0] is always zero, thus only even SMI addresses can be strapped). 17 * is the only device connected to the SMI master. In this mode it responds to 18 * all 32 possible SMI addresses, and thus maps directly the internal devices. 21 * multiple devices to share the SMI interface. In this mode it responds to only 22 * 2 registers, used to indirectly access the internal SMI devices. 25 * configuration, and the device responds to 16 of the 32 SMI 26 * addresses, allowing two to coexist on the same SMI interface. [all …]
|
| /linux/drivers/mtd/devices/ |
| H A D | spear_smi.c | 2 * SMI (Serial Memory Controller) device driver for Serial NOR Flash on 5 * interface has been replaced by SMI. 40 /* SMI clock rate */ 50 /* registers of smi */ 51 #define SMI_CR1 0x0 /* SMI control register 1 */ 52 #define SMI_CR2 0x4 /* SMI control register 2 */ 53 #define SMI_SR 0x8 /* SMI status register */ 54 #define SMI_TR 0xC /* SMI transmit register */ 55 #define SMI_RR 0x10 /* SMI receive register */ 157 * struct spear_smi - Structure for SMI Device [all …]
|
| /linux/Documentation/devicetree/bindings/iommu/ |
| H A D | mediatek,iommu.yaml | 33 SMI Common(Smart Multimedia Interface Common) 42 SMI larb0 SMI larb1 ... SoCs have several SMI local arbiter(larb). 52 As above, The Multimedia HW will go through SMI and M4U while it 53 access EMI. SMI is a bridge between m4u and the Multimedia HW. It contain 54 smi local arbiter and smi common. It will control whether the Multimedia 56 directly with EMI. And also SMI help control the power domain and clocks for 65 smi-common and m4u, and additional GALS module between smi-larb and 66 smi-common. GALS can been seen as a "asynchronous fifo" which could help 125 Refer to bindings/memory-controllers/mediatek,smi-larb.yaml. It must sort
|
| /linux/drivers/platform/x86/dell/ |
| H A D | dcdbas.c | 90 * smi_data_buf_free: free SMI data buffer 101 * smi_data_buf_realloc: grow SMI data buffer if needed 155 /* make sure SMI data buffer is at least buf_size */ in smi_data_buf_size_store() 264 /* generate SMI */ in raise_smi() 265 /* inb to force posted write through and make SMI happen now */ in raise_smi() 280 * dcdbas_smi_request: generate SMI request 294 /* SMI requires CPU 0 */ in dcdbas_smi_request() 307 * 0: zero SMI data buffer 308 * 1: generate calling interface SMI 309 * 2: generate raw SMI [all …]
|
| /linux/drivers/mmc/host/ |
| H A D | cavium.c | 301 struct sg_mapping_iter *smi = &host->smi; in do_read() local 310 if (smi->consumed >= smi->length) { in do_read() 311 if (!sg_miter_next(smi)) in do_read() 313 smi->consumed = 0; in do_read() 321 while (smi->consumed < smi->length && shift >= 0) { in do_read() 322 ((u8 *)smi->addr)[smi->consumed] = (dat >> shift) & 0xff; in do_read() 324 smi->consumed++; in do_read() 329 sg_miter_stop(smi); in do_read() 709 sg_miter_start(&host->smi, mrq->data->sg, mrq->data->sg_len, in do_read_request() 716 struct sg_mapping_iter *smi = &host->smi; in do_write_request() local [all …]
|
| /linux/drivers/firmware/google/ |
| H A D | gsmi.c | 8 * EFI SMI interface for Google platforms 52 /* SMI return codes */ 84 /* SMI buffers must be in 32bit physical address space */ 97 u16 smi_cmd; /* SMI command port */ 130 * Some platforms don't have explicit SMI handshake 131 * and need to wait for SMI to complete. 200 * DX : SMI command port in gsmi_exec() 209 * a delay between writing the SMI trigger register and in gsmi_exec() 225 * hundred-ish usecs to ensure the SMI has triggered. in gsmi_exec() 253 /* check return code from SMI handler */ in gsmi_exec() [all …]
|
| /linux/drivers/net/ethernet/marvell/ |
| H A D | mvmdio.c | 7 * ports, but they in fact share the same SMI interface to access 64 * SMI Timeout measurements: 76 * but also reflects SMI completion), use that to wait for 77 * SMI access completion instead of polling the SMI busy bit. 92 /* Wait for the SMI unit to be ready for another operation 117 dev_err(bus->parent, "Timeout: SMI busy for too long\n"); in orion_mdio_wait_ready() 152 dev_err(bus->parent, "SMI bus read not valid\n"); in orion_mdio_smi_read() 296 dev_err(&pdev->dev, "No SMI register address given\n"); in orion_mdio_probe() 324 dev_err(&pdev->dev, "Unable to remap SMI register\n"); in orion_mdio_probe()
|
| /linux/arch/arm/mach-omap2/ |
| H A D | sleep34xx.S | 98 smc #1 @ call SMI monitor (smi #1) 419 smc #1 @ call SMI monitor (smi #1) 430 smc #1 @ call SMI monitor (smi #1) 445 smc #1 @ call SMI monitor (smi #1) 453 /* Execute smi to invalidate L2 cache */ 455 smc #0 @ Call SMI monitor (smieq) 461 smc #0 @ Call SMI monitor (smieq) 466 smc #0 @ Call SMI monitor (smieq)
|
| /linux/tools/power/cpupower/debug/i386/ |
| H A D | intel_gsic.c | 48 printf("non-default command value. If speedstep-smi " in main() 55 printf("non-default command port. If speedstep-smi " in main() 68 "GSIC call, but the newer\nspeedstep-smi driver may " in main() 70 "the speedstep-smi driver:\n"); in main()
|
| /linux/Documentation/devicetree/bindings/display/ |
| H A D | sm501fb.txt | 7 - compatible : should be "smi,sm501". 11 - interrupts : SMI interrupt to the cpu should be described here. 26 compatible = "smi,sm501";
|
| /linux/drivers/net/dsa/realtek/ |
| H A D | realtek-smi.c | 2 /* Realtek Simple Management Interface (SMI) driver 5 * The SMI protocol piggy-backs the MDIO MDC and MDIO signals levels 19 * RTL8370 - Also uses SMI 42 #include "realtek-smi.h" 320 * realtek_smi_probe() - Probe a platform device for an SMI-connected switch 325 * values specific for SMI-connected devices. Finally, it calls a common 367 * realtek_smi_remove() - Remove the driver of a SMI-connected switch 390 * realtek_smi_shutdown() - Shutdown the driver of a SMI-connected switch
|