/Linux-v6.1/drivers/net/ethernet/freescale/fs_enet/ |
D | mii-bitbang.c | 60 struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl); in mdio_dir() local 63 bb_set(bitbang->dir, bitbang->mdio_msk); in mdio_dir() 65 bb_clr(bitbang->dir, bitbang->mdio_msk); in mdio_dir() 68 in_be32(bitbang->dir); in mdio_dir() 73 struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl); in mdio_read() local 74 return bb_read(bitbang->dat, bitbang->mdio_msk); in mdio_read() 79 struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl); in mdio() local 82 bb_set(bitbang->dat, bitbang->mdio_msk); in mdio() 84 bb_clr(bitbang->dat, bitbang->mdio_msk); in mdio() 87 in_be32(bitbang->dat); in mdio() [all …]
|
D | Makefile | 13 obj-$(CONFIG_FS_ENET_MDIO_FCC) += mii-bitbang.o
|
/Linux-v6.1/drivers/net/mdio/ |
D | mdio-gpio.c | 36 struct mdio_gpio_info *bitbang) in mdio_gpio_get_data() argument 38 bitbang->mdc = devm_gpiod_get_index(dev, NULL, MDIO_GPIO_MDC, in mdio_gpio_get_data() 40 if (IS_ERR(bitbang->mdc)) in mdio_gpio_get_data() 41 return PTR_ERR(bitbang->mdc); in mdio_gpio_get_data() 43 bitbang->mdio = devm_gpiod_get_index(dev, NULL, MDIO_GPIO_MDIO, in mdio_gpio_get_data() 45 if (IS_ERR(bitbang->mdio)) in mdio_gpio_get_data() 46 return PTR_ERR(bitbang->mdio); in mdio_gpio_get_data() 48 bitbang->mdo = devm_gpiod_get_index_optional(dev, NULL, MDIO_GPIO_MDO, in mdio_gpio_get_data() 50 return PTR_ERR_OR_ZERO(bitbang->mdo); in mdio_gpio_get_data() 55 struct mdio_gpio_info *bitbang = in mdio_dir() local [all …]
|
D | Makefile | 11 obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o
|
/Linux-v6.1/drivers/spi/ |
D | spi-bitbang.c | 186 struct spi_bitbang *bitbang; in spi_bitbang_setup() local 190 bitbang = spi_master_get_devdata(spi->master); in spi_bitbang_setup() 201 cs->txrx_word = bitbang->txrx_word[spi->mode & (SPI_CPOL|SPI_CPHA)]; in spi_bitbang_setup() 207 if (bitbang->setup_transfer) { in spi_bitbang_setup() 208 retval = bitbang->setup_transfer(spi, NULL); in spi_bitbang_setup() 237 struct spi_bitbang *bitbang; in spi_bitbang_bufs() local 239 bitbang = spi_master_get_devdata(spi->master); in spi_bitbang_bufs() 240 if (bitbang->set_line_direction) { in spi_bitbang_bufs() 243 err = bitbang->set_line_direction(spi, !!(t->tx_buf)); in spi_bitbang_bufs() 273 struct spi_bitbang *bitbang; in spi_bitbang_prepare_hardware() local [all …]
|
D | spi-sh-sci.c | 25 struct spi_bitbang bitbang; member 139 sp->bitbang.master = master; in sh_sci_spi_probe() 140 sp->bitbang.master->bus_num = sp->info->bus_num; in sh_sci_spi_probe() 141 sp->bitbang.master->num_chipselect = sp->info->num_chipselect; in sh_sci_spi_probe() 142 sp->bitbang.chipselect = sh_sci_spi_chipselect; in sh_sci_spi_probe() 144 sp->bitbang.txrx_word[SPI_MODE_0] = sh_sci_spi_txrx_mode0; in sh_sci_spi_probe() 145 sp->bitbang.txrx_word[SPI_MODE_1] = sh_sci_spi_txrx_mode1; in sh_sci_spi_probe() 146 sp->bitbang.txrx_word[SPI_MODE_2] = sh_sci_spi_txrx_mode2; in sh_sci_spi_probe() 147 sp->bitbang.txrx_word[SPI_MODE_3] = sh_sci_spi_txrx_mode3; in sh_sci_spi_probe() 162 ret = spi_bitbang_start(&sp->bitbang); in sh_sci_spi_probe() [all …]
|
D | spi-lm70llp.c | 71 struct spi_bitbang bitbang; member 215 pp->bitbang.master = master; in spi_lm70llp_attach() 216 pp->bitbang.chipselect = lm70_chipselect; in spi_lm70llp_attach() 217 pp->bitbang.txrx_word[SPI_MODE_0] = lm70_txrx; in spi_lm70llp_attach() 218 pp->bitbang.flags = SPI_3WIRE; in spi_lm70llp_attach() 242 status = spi_bitbang_start(&pp->bitbang); in spi_lm70llp_attach() 267 pp->spidev_lm70 = spi_new_device(pp->bitbang.master, &pp->info); in spi_lm70llp_attach() 282 spi_bitbang_stop(&pp->bitbang); in spi_lm70llp_attach() 304 spi_bitbang_stop(&pp->bitbang); in spi_lm70llp_detach() 312 spi_master_put(pp->bitbang.master); in spi_lm70llp_detach()
|
D | spi-butterfly.c | 51 struct spi_bitbang bitbang; member 208 pp->bitbang.master = master; in butterfly_attach() 209 pp->bitbang.chipselect = butterfly_chipselect; in butterfly_attach() 210 pp->bitbang.txrx_word[SPI_MODE_0] = butterfly_txrx_word_mode0; in butterfly_attach() 252 status = spi_bitbang_start(&pp->bitbang); in butterfly_attach() 266 pp->dataflash = spi_new_device(pp->bitbang.master, &pp->info[0]); in butterfly_attach() 283 spi_master_put(pp->bitbang.master); in butterfly_attach() 302 spi_bitbang_stop(&pp->bitbang); in butterfly_detach() 311 spi_master_put(pp->bitbang.master); in butterfly_detach()
|
D | spi-ath79.c | 41 struct spi_bitbang bitbang; member 192 sp->bitbang.master = master; in ath79_spi_probe() 193 sp->bitbang.chipselect = ath79_spi_chipselect; in ath79_spi_probe() 194 sp->bitbang.txrx_word[SPI_MODE_0] = ath79_spi_txrx_mode0; in ath79_spi_probe() 195 sp->bitbang.flags = SPI_CS_HIGH; in ath79_spi_probe() 224 ret = spi_bitbang_start(&sp->bitbang); in ath79_spi_probe() 235 spi_master_put(sp->bitbang.master); in ath79_spi_probe() 244 spi_bitbang_stop(&sp->bitbang); in ath79_spi_remove() 247 spi_master_put(sp->bitbang.master); in ath79_spi_remove()
|
D | spi-xtensa-xtfpga.c | 25 struct spi_bitbang bitbang; member 96 xspi->bitbang.master = master; in xtfpga_spi_probe() 97 xspi->bitbang.chipselect = xtfpga_spi_chipselect; in xtfpga_spi_probe() 98 xspi->bitbang.txrx_word[SPI_MODE_0] = xtfpga_spi_txrx_word; in xtfpga_spi_probe() 110 ret = spi_bitbang_start(&xspi->bitbang); in xtfpga_spi_probe() 125 spi_bitbang_stop(&xspi->bitbang); in xtfpga_spi_remove()
|
D | spi-s3c24xx.c | 51 struct spi_bitbang bitbang; member 184 mutex_lock(&hw->bitbang.lock); in s3c24xx_spi_setup() 185 if (!hw->bitbang.busy) { in s3c24xx_spi_setup() 186 hw->bitbang.chipselect(spi, BITBANG_CS_INACTIVE); in s3c24xx_spi_setup() 189 mutex_unlock(&hw->bitbang.lock); in s3c24xx_spi_setup() 490 hw->bitbang.master = hw->master; in s3c24xx_spi_probe() 491 hw->bitbang.setup_transfer = s3c24xx_spi_setupxfer; in s3c24xx_spi_probe() 492 hw->bitbang.chipselect = s3c24xx_spi_chipsel; in s3c24xx_spi_probe() 493 hw->bitbang.txrx_bufs = s3c24xx_spi_txrx; in s3c24xx_spi_probe() 497 dev_dbg(hw->dev, "bitbang at %p\n", &hw->bitbang); in s3c24xx_spi_probe() [all …]
|
D | spi-oc-tiny.c | 38 struct spi_bitbang bitbang; member 197 hw->bitbang.master->dev.of_node = pdev->dev.of_node; in tiny_spi_of_probe() 232 hw->bitbang.master = master; in tiny_spi_probe() 233 hw->bitbang.setup_transfer = tiny_spi_setup_transfer; in tiny_spi_probe() 234 hw->bitbang.txrx_bufs = tiny_spi_txrx_bufs; in tiny_spi_probe() 262 err = spi_bitbang_start(&hw->bitbang); in tiny_spi_probe() 277 struct spi_master *master = hw->bitbang.master; in tiny_spi_remove() 279 spi_bitbang_stop(&hw->bitbang); in tiny_spi_remove()
|
D | spi-omap-uwire.c | 89 struct spi_bitbang bitbang; member 451 spi_master_put(uwire->bitbang.master); in uwire_off() 501 uwire->bitbang.master = master; in uwire_probe() 502 uwire->bitbang.chipselect = uwire_chipselect; in uwire_probe() 503 uwire->bitbang.setup_transfer = uwire_setup_transfer; in uwire_probe() 504 uwire->bitbang.txrx_bufs = uwire_txrx; in uwire_probe() 506 status = spi_bitbang_start(&uwire->bitbang); in uwire_probe() 519 spi_bitbang_stop(&uwire->bitbang); in uwire_remove()
|
D | spi-ppc4xx.c | 112 struct spi_bitbang bitbang; member 206 mutex_lock(&hw->bitbang.lock); in spi_ppc4xx_setupxfer() 207 if (!hw->bitbang.busy) { in spi_ppc4xx_setupxfer() 208 hw->bitbang.chipselect(spi, BITBANG_CS_INACTIVE); in spi_ppc4xx_setupxfer() 211 mutex_unlock(&hw->bitbang.lock); in spi_ppc4xx_setupxfer() 364 bbp = &hw->bitbang; in spi_ppc4xx_of_probe() 472 spi_bitbang_stop(&hw->bitbang); in spi_ppc4xx_of_remove()
|
D | spi-xilinx.c | 81 struct spi_bitbang bitbang; member 434 xspi->bitbang.master = master; in xilinx_spi_probe() 435 xspi->bitbang.chipselect = xilinx_spi_chipselect; in xilinx_spi_probe() 436 xspi->bitbang.setup_transfer = xilinx_spi_setup_transfer; in xilinx_spi_probe() 437 xspi->bitbang.txrx_bufs = xilinx_spi_txrx_bufs; in xilinx_spi_probe() 485 ret = spi_bitbang_start(&xspi->bitbang); in xilinx_spi_probe() 508 spi_bitbang_stop(&xspi->bitbang); in xilinx_spi_remove() 515 spi_master_put(xspi->bitbang.master); in xilinx_spi_remove()
|
D | spi-davinci.c | 106 struct spi_bitbang bitbang; member 463 struct device *sdev = dspi->bitbang.master->dev.parent; in davinci_spi_check_error() 746 struct device *sdev = dspi->bitbang.master->dev.parent; in davinci_spi_request_dma() 926 dspi->bitbang.master = master; in davinci_spi_probe() 947 dspi->bitbang.chipselect = davinci_spi_chipselect; in davinci_spi_probe() 948 dspi->bitbang.setup_transfer = davinci_spi_setup_transfer; in davinci_spi_probe() 952 dspi->bitbang.flags = SPI_NO_CS | SPI_LSB_FIRST | SPI_LOOP | SPI_CS_WORD; in davinci_spi_probe() 954 dspi->bitbang.flags |= SPI_READY; in davinci_spi_probe() 956 dspi->bitbang.txrx_bufs = davinci_spi_bufs; in davinci_spi_probe() 991 ret = spi_bitbang_start(&dspi->bitbang); in davinci_spi_probe() [all …]
|
D | spi-gpio.c | 34 struct spi_bitbang bitbang; member 82 spi_gpio = container_of(bang, struct spi_gpio, bitbang); in spi_to_spi_gpio() 420 bb = &spi_gpio->bitbang; in spi_gpio_probe() 444 status = spi_bitbang_init(&spi_gpio->bitbang); in spi_gpio_probe()
|
D | spi-au1550.c | 41 struct spi_bitbang bitbang; member 803 hw->bitbang.master = hw->master; in au1550_spi_probe() 804 hw->bitbang.setup_transfer = au1550_spi_setupxfer; in au1550_spi_probe() 805 hw->bitbang.chipselect = au1550_spi_chipsel; in au1550_spi_probe() 806 hw->bitbang.txrx_bufs = au1550_spi_txrx_bufs; in au1550_spi_probe() 884 err = spi_bitbang_start(&hw->bitbang); in au1550_spi_probe() 933 spi_bitbang_stop(&hw->bitbang); in au1550_spi_remove()
|
/Linux-v6.1/Documentation/devicetree/bindings/soc/fsl/cpm_qe/ |
D | network.txt | 27 fsl,cpm2-mdio-bitbang (reg is port C registers) 29 Properties for fsl,cpm2-mdio-bitbang: 35 compatible = "fsl,mpc8272ads-mdio-bitbang", 36 "fsl,mpc8272-mdio-bitbang", 37 "fsl,cpm2-mdio-bitbang";
|
/Linux-v6.1/arch/powerpc/boot/dts/ |
D | pq2fads.dts | 197 compatible = "fsl,pq2fads-mdio-bitbang", 198 "fsl,mpc8280-mdio-bitbang", 199 "fsl,cpm2-mdio-bitbang";
|
D | mpc8272ads.dts | 181 compatible = "fsl,mpc8272ads-mdio-bitbang", 182 "fsl,mpc8272-mdio-bitbang", 183 "fsl,cpm2-mdio-bitbang";
|
D | ep8248e.dts | 66 compatible = "fsl,ep8248e-mdio-bitbang";
|
/Linux-v6.1/drivers/net/ethernet/renesas/ |
D | sh_eth.c | 1180 struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl); in sh_mdio_ctrl() local 1183 if (bitbang->set_gate) in sh_mdio_ctrl() 1184 bitbang->set_gate(bitbang->addr); in sh_mdio_ctrl() 1186 pir = ioread32(bitbang->addr); in sh_mdio_ctrl() 1191 iowrite32(pir, bitbang->addr); in sh_mdio_ctrl() 1209 struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl); in sh_get_mdio() local 1211 if (bitbang->set_gate) in sh_get_mdio() 1212 bitbang->set_gate(bitbang->addr); in sh_get_mdio() 1214 return (ioread32(bitbang->addr) & PIR_MDI) != 0; in sh_get_mdio() 3074 struct bb_info *bitbang; in sh_mdio_init() local [all …]
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | imx6q-prtwd2.dts | 32 /* PRTWD2 rev 1 bitbang I2C for Ethernet Switch */
|
/Linux-v6.1/Documentation/driver-api/gpio/ |
D | drivers-on-gpio.rst | 49 (two wires, SDA and SCL lines) by hammering (bitbang) two GPIO lines. It will 55 GPIO hammering (bitbang). It will appear as any other SPI bus on the system
|