/linux/drivers/usb/musb/ |
H A D | mediatek.c | 55 static int mtk_musb_clks_get(struct mtk_glue *glue) in mtk_musb_clks_get() argument 57 struct device *dev = glue->dev; in mtk_musb_clks_get() 59 glue->clks[0].id = "main"; in mtk_musb_clks_get() 60 glue->clks[1].id = "mcu"; in mtk_musb_clks_get() 61 glue->clks[2].id = "univpll"; in mtk_musb_clks_get() 63 return devm_clk_bulk_get(dev, MTK_MUSB_CLKS_NUM, glue->clks); in mtk_musb_clks_get() 66 static int mtk_otg_switch_set(struct mtk_glue *glue, enum usb_role role) in mtk_otg_switch_set() argument 68 struct musb *musb = glue->musb; in mtk_otg_switch_set() 72 if (role == glue->role) in mtk_otg_switch_set() 78 glue->phy_mode = PHY_MODE_USB_HOST; in mtk_otg_switch_set() [all …]
|
H A D | sunxi.c | 3 * Allwinner sun4i MUSB Glue Layer 99 struct sunxi_glue *glue = container_of(work, struct sunxi_glue, work); in sunxi_musb_work() local 102 if (!test_bit(SUNXI_MUSB_FL_ENABLED, &glue->flags)) in sunxi_musb_work() 105 if (test_and_clear_bit(SUNXI_MUSB_FL_HOSTMODE_PEND, &glue->flags)) { in sunxi_musb_work() 106 struct musb *musb = glue->musb; in sunxi_musb_work() 113 if (test_bit(SUNXI_MUSB_FL_HOSTMODE, &glue->flags)) { in sunxi_musb_work() 114 set_bit(SUNXI_MUSB_FL_VBUS_ON, &glue->flags); in sunxi_musb_work() 119 clear_bit(SUNXI_MUSB_FL_VBUS_ON, &glue->flags); in sunxi_musb_work() 129 vbus_on = test_bit(SUNXI_MUSB_FL_VBUS_ON, &glue->flags); in sunxi_musb_work() 130 phy_on = test_bit(SUNXI_MUSB_FL_PHY_ON, &glue->flags); in sunxi_musb_work() [all …]
|
H A D | musb_dsps.c | 3 * Texas Instruments DSPS platforms "glue layer" 7 * Based on the am35x "glue layer" code. 99 * DSPS glue structure. 133 static void dsps_mod_timer(struct dsps_glue *glue, int wait_ms) in dsps_mod_timer() argument 135 struct musb *musb = platform_get_drvdata(glue->musb); in dsps_mod_timer() 139 wait = msecs_to_jiffies(glue->wrp->poll_timeout); in dsps_mod_timer() 149 static void dsps_mod_timer_optional(struct dsps_glue *glue) in dsps_mod_timer_optional() argument 151 if (glue->vbus_irq) in dsps_mod_timer_optional() 154 dsps_mod_timer(glue, -1); in dsps_mod_timer_optional() 170 struct dsps_glue *glue = dev_get_drvdata(dev->parent); in dsps_musb_enable() local [all …]
|
H A D | omap2430.c | 66 struct omap2430_glue *glue = _glue; in omap2430_musb_mailbox() local 68 if (!glue) { in omap2430_musb_mailbox() 72 glue->status = status; in omap2430_musb_mailbox() 74 if (!glue_to_musb(glue)) { in omap2430_musb_mailbox() 79 schedule_work(&glue->omap_musb_mailbox_work); in omap2430_musb_mailbox() 91 static void omap_musb_set_mailbox(struct omap2430_glue *glue) in omap_musb_set_mailbox() argument 93 struct musb *musb = glue_to_musb(glue); in omap_musb_set_mailbox() 102 switch (glue->status) { in omap_musb_set_mailbox() 125 omap_control_usb_set_mode(glue->control_otghs, in omap_musb_set_mailbox() 138 omap_control_usb_set_mode(glue->control_otghs, USB_MODE_DEVICE); in omap_musb_set_mailbox() [all …]
|
H A D | da8xx.c | 3 * Texas Instruments DA8xx/OMAP-L1x "glue layer" 7 * Based on the DaVinci "glue layer" code. 335 struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent); in da8xx_musb_set_mode() local 352 return phy_set_mode(glue->phy, phy_mode); in da8xx_musb_set_mode() 357 struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent); in da8xx_musb_init() local 364 ret = clk_prepare_enable(glue->clk); in da8xx_musb_init() 366 dev_err(glue->dev, "failed to enable clock\n"); in da8xx_musb_init() 389 ret = phy_init(glue->phy); in da8xx_musb_init() 391 dev_err(glue->dev, "Failed to init phy.\n"); in da8xx_musb_init() 395 ret = phy_power_on(glue->phy); in da8xx_musb_init() [all …]
|
H A D | jz4740.c | 3 * Ingenic JZ4740 "glue layer" 82 struct jz4740_glue *glue = usb_role_switch_get_drvdata(sw); in jz4740_musb_role_switch_set() local 83 struct usb_phy *phy = glue->musb->xceiv; in jz4740_musb_role_switch_set() 106 struct jz4740_glue *glue = dev_get_drvdata(dev); in jz4740_musb_init() local 109 .driver_data = glue, in jz4740_musb_init() 114 glue->musb = musb; in jz4740_musb_init() 152 glue->role_sw = usb_role_switch_register(dev, &role_sw_desc); in jz4740_musb_init() 153 if (IS_ERR(glue->role_sw)) { in jz4740_musb_init() 155 err = PTR_ERR(glue->role_sw); in jz4740_musb_init() 180 struct jz4740_glue *glue = dev_get_drvdata(musb->controller->parent); in jz4740_musb_exit() local [all …]
|
H A D | ux500.c | 222 struct ux500_glue *glue; in ux500_probe() local 239 glue = devm_kzalloc(&pdev->dev, sizeof(*glue), GFP_KERNEL); in ux500_probe() 240 if (!glue) in ux500_probe() 267 glue->dev = &pdev->dev; in ux500_probe() 268 glue->musb = musb; in ux500_probe() 269 glue->clk = clk; in ux500_probe() 274 platform_set_drvdata(pdev, glue); in ux500_probe() 308 struct ux500_glue *glue = platform_get_drvdata(pdev); in ux500_remove() local 310 platform_device_unregister(glue->musb); in ux500_remove() 311 clk_disable_unprepare(glue->clk); in ux500_remove() [all …]
|
H A D | mpfs.c | 3 * PolarFire SoC (MPFS) MUSB Glue Layer 258 struct mpfs_glue *glue; in mpfs_probe() local 264 glue = devm_kzalloc(dev, sizeof(*glue), GFP_KERNEL); in mpfs_probe() 265 if (!glue) in mpfs_probe() 292 glue->dev = dev; in mpfs_probe() 293 glue->musb = musb_pdev; in mpfs_probe() 294 glue->clk = clk; in mpfs_probe() 313 glue->phy = usb_phy_generic_register(); in mpfs_probe() 314 if (IS_ERR(glue->phy)) { in mpfs_probe() 316 PTR_ERR(glue->phy)); in mpfs_probe() [all …]
|
/linux/arch/arm64/crypto/ |
H A D | Makefile | 9 sha1-ce-y := sha1-ce-glue.o sha1-ce-core.o 12 sha2-ce-y := sha2-ce-glue.o sha2-ce-core.o 15 sha512-ce-y := sha512-ce-glue.o sha512-ce-core.o 18 sha3-ce-y := sha3-ce-glue.o sha3-ce-core.o 21 sm3-neon-y := sm3-neon-glue.o sm3-neon-core.o 24 sm3-ce-y := sm3-ce-glue.o sm3-ce-core.o 27 sm4-ce-cipher-y := sm4-ce-cipher-glue.o sm4-ce-cipher-core.o 30 sm4-ce-y := sm4-ce-glue.o sm4-ce-core.o 33 sm4-ce-ccm-y := sm4-ce-ccm-glue.o sm4-ce-ccm-core.o 36 sm4-ce-gcm-y := sm4-ce-gcm-glue.o sm4-ce-gcm-core.o [all …]
|
/linux/drivers/net/wireless/ti/wlcore/ |
H A D | spi.c | 91 struct wl12xx_spi_glue *glue = dev_get_drvdata(child->parent); in wl12xx_spi_reset() local 112 spi_sync(to_spi_device(glue->dev), &m); in wl12xx_spi_reset() 119 struct wl12xx_spi_glue *glue = dev_get_drvdata(child->parent); in wl12xx_spi_init() local 122 struct spi_device *spi = to_spi_device(glue->dev); in wl12xx_spi_init() 167 spi_sync(to_spi_device(glue->dev), &m); in wl12xx_spi_init() 186 spi_sync(to_spi_device(glue->dev), &m); in wl12xx_spi_init() 197 struct wl12xx_spi_glue *glue = dev_get_drvdata(child->parent); in wl12xx_spi_read_busy() local 219 spi_sync(to_spi_device(glue->dev), &m); in wl12xx_spi_read_busy() 233 struct wl12xx_spi_glue *glue = dev_get_drvdata(child->parent); in wl12xx_spi_raw_read() local 270 spi_sync(to_spi_device(glue->dev), &m); in wl12xx_spi_raw_read() [all …]
|
H A D | sdio.c | 44 struct wl12xx_sdio_glue *glue = dev_get_drvdata(child->parent); in wl1271_sdio_set_block_size() local 45 struct sdio_func *func = dev_to_sdio_func(glue->dev); in wl1271_sdio_set_block_size() 56 struct wl12xx_sdio_glue *glue = dev_get_drvdata(child->parent); in wl12xx_sdio_raw_read() local 57 struct sdio_func *func = dev_to_sdio_func(glue->dev); in wl12xx_sdio_raw_read() 94 struct wl12xx_sdio_glue *glue = dev_get_drvdata(child->parent); in wl12xx_sdio_raw_write() local 95 struct sdio_func *func = dev_to_sdio_func(glue->dev); in wl12xx_sdio_raw_write() 128 static int wl12xx_sdio_power_on(struct wl12xx_sdio_glue *glue) in wl12xx_sdio_power_on() argument 131 struct sdio_func *func = dev_to_sdio_func(glue->dev); in wl12xx_sdio_power_on() 136 dev_err(glue->dev, "%s: failed to get_sync(%d)\n", in wl12xx_sdio_power_on() 155 static int wl12xx_sdio_power_off(struct wl12xx_sdio_glue *glue) in wl12xx_sdio_power_off() argument [all …]
|
/linux/Documentation/devicetree/bindings/soc/socionext/ |
H A D | socionext,uniphier-soc-glue.yaml | 4 $id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue.yaml# 7 title: Socionext UniPhier SoC-glue logic 13 SoC-glue logic implemented on Socionext UniPhier SoCs is a collection of 20 - socionext,uniphier-ld4-soc-glue 21 - socionext,uniphier-pro4-soc-glue 22 - socionext,uniphier-pro5-soc-glue 23 - socionext,uniphier-pxs2-soc-glue 24 - socionext,uniphier-sld8-soc-glue 25 - socionext,uniphier-ld11-soc-glue 26 - socionext,uniphier-ld20-soc-glue [all …]
|
H A D | socionext,uniphier-soc-glue-debug.yaml | 4 $id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue-debug.yaml# 7 title: Socionext UniPhier SoC-glue logic debug part 13 SoC-glue logic debug part implemented on Socionext UniPhier SoCs is 21 - socionext,uniphier-ld4-soc-glue-debug 22 - socionext,uniphier-pro4-soc-glue-debug 23 - socionext,uniphier-pro5-soc-glue-debug 24 - socionext,uniphier-pxs2-soc-glue-debug 25 - socionext,uniphier-sld8-soc-glue-debug 26 - socionext,uniphier-ld11-soc-glue-debug 27 - socionext,uniphier-ld20-soc-glue-debug [all …]
|
H A D | socionext,uniphier-dwc3-glue.yaml | 4 $id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-dwc3-glue.yaml# 7 title: Socionext UniPhier SoC DWC3 USB3.0 glue layer 13 DWC3 USB3.0 glue layer implemented on Socionext UniPhier SoCs is 21 - socionext,uniphier-pro4-dwc3-glue 22 - socionext,uniphier-pro5-dwc3-glue 23 - socionext,uniphier-pxs2-dwc3-glue 24 - socionext,uniphier-ld20-dwc3-glue 25 - socionext,uniphier-pxs3-dwc3-glue 26 - socionext,uniphier-nx1-dwc3-glue 42 $ref: /schemas/reset/socionext,uniphier-glue-reset.yaml# [all …]
|
H A D | socionext,uniphier-ahci-glue.yaml | 4 $id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-ahci-glue.yaml# 7 title: Socionext UniPhier SoC AHCI glue layer 13 AHCI glue layer implemented on Socionext UniPhier SoCs is a sideband 20 - socionext,uniphier-pro4-ahci-glue 21 - socionext,uniphier-pxs2-ahci-glue 22 - socionext,uniphier-pxs3-ahci-glue 38 $ref: /schemas/reset/socionext,uniphier-glue-reset.yaml# 52 compatible = "socionext,uniphier-pxs3-ahci-glue", "simple-mfd";
|
/linux/arch/arm/crypto/ |
H A D | Makefile | 26 aes-arm-y := aes-cipher-core.o aes-cipher-glue.o 27 aes-arm-bs-y := aes-neonbs-core.o aes-neonbs-glue.o 32 sha512-arm-neon-$(CONFIG_KERNEL_MODE_NEON) := sha512-neon-glue.o 33 sha512-arm-y := sha512-core.o sha512-glue.o $(sha512-arm-neon-y) 34 libblake2s-arm-y:= blake2s-core.o blake2s-glue.o 35 blake2b-neon-y := blake2b-neon-core.o blake2b-neon-glue.o 36 sha1-arm-ce-y := sha1-ce-core.o sha1-ce-glue.o 37 sha2-arm-ce-y := sha2-ce-core.o sha2-ce-glue.o 38 aes-arm-ce-y := aes-ce-core.o aes-ce-glue.o 39 ghash-arm-ce-y := ghash-ce-core.o ghash-ce-glue.o [all …]
|
/linux/lib/ |
H A D | cpu_rmap.c | 223 /* Glue between IRQ affinity notifiers and CPU rmaps */ 239 struct irq_glue *glue; in free_irq_cpu_rmap() local 246 glue = rmap->obj[index]; in free_irq_cpu_rmap() 247 if (glue) in free_irq_cpu_rmap() 248 irq_set_affinity_notifier(glue->notify.irq, NULL); in free_irq_cpu_rmap() 265 struct irq_glue *glue = in irq_cpu_rmap_notify() local 269 rc = cpu_rmap_update(glue->rmap, glue->index, mask); in irq_cpu_rmap_notify() 280 struct irq_glue *glue = in irq_cpu_rmap_release() local 283 glue->rmap->obj[glue->index] = NULL; in irq_cpu_rmap_release() 284 cpu_rmap_put(glue->rmap); in irq_cpu_rmap_release() [all …]
|
/linux/drivers/gpu/drm/i2c/ |
H A D | tda9950.c | 66 struct tda9950_glue *glue; member 262 if (priv->glue && priv->glue->open) in tda9950_glue_open() 263 ret = priv->glue->open(priv->glue->data); in tda9950_glue_open() 274 if (priv->glue && priv->glue->release) in tda9950_glue_release() 275 priv->glue->release(priv->glue->data); in tda9950_glue_release() 348 struct tda9950_glue *glue = data; in tda9950_devm_glue_exit() local 350 if (glue && glue->exit) in tda9950_devm_glue_exit() 351 glue->exit(glue->data); in tda9950_devm_glue_exit() 354 static int tda9950_devm_glue_init(struct device *dev, struct tda9950_glue *glue) in tda9950_devm_glue_init() argument 358 if (glue && glue->init) { in tda9950_devm_glue_init() [all …]
|
/linux/drivers/mtd/nand/raw/brcmnand/ |
H A D | Kconfig | 13 tristate "Broadcom BCM63xx NAND controller glue" 16 Enables the BRCMNAND glue driver to register the NAND controller 25 The glue driver will take care of performing the low-level I/O 29 tristate "Broadcom BCMBCA NAND controller glue" 32 Enables the BRCMNAND glue driver to register the NAND controller 36 tristate "Broadcom STB Nand controller glue" 39 Enables the BRCMNAND glue driver to register the NAND controller 43 tristate "Broadcom iProc NAND controller glue" 46 Enables the BRCMNAND controller glue driver to register the NAND
|
/linux/drivers/net/ethernet/stmicro/stmmac/ |
H A D | Kconfig | 67 This selects the Anarion SoC glue layer support for the stmmac driver. 77 This selects Ingenic SoCs glue layer support for the stmmac 89 This selects the IPQ806x SoC glue layer support for the stmmac 120 This selects the Amlogic Meson SoC glue layer support for 131 This selects the Qualcomm ETHQOS glue layer support for the 142 This selects the Rockchip RK3288 SoC glue layer support for 153 This selects the Renesas RZ/N1 SoC glue layer support for 168 This selects the Altera SOCFPGA SoC glue layer support 180 This selects the StarFive platform specific glue layer support 192 This selects STi SoC glue layer support for the stmmac [all …]
|
/linux/Documentation/driver-api/usb/ |
H A D | writing_musb_glue_layer.rst | 2 Writing a MUSB Glue Layer 21 As a self-taught exercise I have written an MUSB glue layer for the 22 Ingenic JZ4740 SoC, modelled after the many MUSB glue layers in the 25 basics of the ``jz4740.c`` glue layer, explaining the different pieces and 26 what needs to be done in order to write your own device glue layer. 61 | aka "Glue Layer" | 68 As outlined above, the glue layer is actually the platform specific code 72 subsystem, the MUSB glue layer needs first to register itself with the 74 about which device the glue layer supports and which functions to call 80 a :c:type:`platform_driver` structure defined in the glue layer as:: [all …]
|
/linux/drivers/usb/dwc2/ |
H A D | pci.c | 44 struct dwc2_pci_glue *glue = pci_get_drvdata(pci); in dwc2_pci_remove() local 46 platform_device_unregister(glue->dwc2); in dwc2_pci_remove() 47 usb_phy_generic_unregister(glue->phy); in dwc2_pci_remove() 59 struct dwc2_pci_glue *glue; in dwc2_pci_probe() local 102 glue = devm_kzalloc(dev, sizeof(*glue), GFP_KERNEL); in dwc2_pci_probe() 103 if (!glue) { in dwc2_pci_probe() 114 glue->phy = phy; in dwc2_pci_probe() 115 glue->dwc2 = dwc2; in dwc2_pci_probe() 116 pci_set_drvdata(pci, glue); in dwc2_pci_probe() 134 MODULE_DESCRIPTION("DESIGNWARE HS OTG PCI Bus Glue");
|
/linux/arch/riscv/crypto/ |
H A D | Makefile | 4 aes-riscv64-y := aes-riscv64-glue.o aes-riscv64-zvkned.o \ 8 chacha-riscv64-y := chacha-riscv64-glue.o chacha-riscv64-zvkb.o 11 ghash-riscv64-y := ghash-riscv64-glue.o ghash-riscv64-zvkg.o 14 sha256-riscv64-y := sha256-riscv64-glue.o sha256-riscv64-zvknha_or_zvknhb-zvkb.o 17 sha512-riscv64-y := sha512-riscv64-glue.o sha512-riscv64-zvknhb-zvkb.o 20 sm3-riscv64-y := sm3-riscv64-glue.o sm3-riscv64-zvksh-zvkb.o 23 sm4-riscv64-y := sm4-riscv64-glue.o sm4-riscv64-zvksed-zvkb.o
|
/linux/drivers/usb/chipidea/ |
H A D | Kconfig | 37 tristate "Enable PCI glue driver" if EXPERT 43 tristate "Enable MSM hsusb glue driver" if EXPERT 47 tristate "Enable NPCM hsusb glue driver" if EXPERT 51 tristate "Enable i.MX USB glue driver" if EXPERT 56 tristate "Enable generic USB2 glue driver" if EXPERT 60 tristate "Enable Tegra USB glue driver" if EXPERT
|
/linux/Documentation/devicetree/bindings/usb/ |
H A D | dwc3-st.txt | 1 ST DWC3 glue logic 4 This driver controls the glue logic used to configure the dwc3 core on 9 - reg : glue logic base address and USB syscfg ctrl register offset 10 - reg-names : should be "reg-glue" and "syscfg-reg" 12 encompasses the glue registers 32 The dwc3 core should be added as subnode to ST DWC3 glue as shown in the 47 reg-names = "reg-glue", "syscfg-reg";
|