Lines Matching +full:gpio +full:- +full:mosi

10  * SPDX-License-Identifier:	GPL-2.0+
19 #include <asm/gpio.h>
26 struct gpio_desc mosi; member
44 dm_gpio_set_value(&plat->sclk, bit); in soft_spi_scl()
54 dm_gpio_set_value(&plat->mosi, bit); in soft_spi_sda()
64 dm_gpio_set_value(&plat->cs, 0); in soft_spi_cs_activate()
65 dm_gpio_set_value(&plat->sclk, 0); in soft_spi_cs_activate()
66 dm_gpio_set_value(&plat->cs, 1); in soft_spi_cs_activate()
76 dm_gpio_set_value(&plat->cs, 0); in soft_spi_cs_deactivate()
96 /*-----------------------------------------------------------------------
99 * This writes "bitlen" bits out the SPI MOSI port and simultaneously clocks
118 int cpha = priv->mode & SPI_CPHA; in soft_spi_xfer()
122 dev->parent->name, dev->name, *(uint *)txd, *(uint *)rxd, in soft_spi_xfer()
146 if ((plat->flags & SPI_MASTER_NO_TX) == 0) in soft_spi_xfer()
148 udelay(plat->spi_delay_us); in soft_spi_xfer()
154 if ((plat->flags & SPI_MASTER_NO_RX) == 0) in soft_spi_xfer()
155 tmpdin |= dm_gpio_get_value(&plat->miso); in soft_spi_xfer()
157 udelay(plat->spi_delay_us); in soft_spi_xfer()
163 * bits over to left-justify them. Then store the last byte in soft_spi_xfer()
168 tmpdin <<= 8 - (bitlen % 8); in soft_spi_xfer()
188 priv->mode = mode; in soft_spi_set_mode()
203 struct soft_spi_platdata *plat = dev->platdata; in soft_spi_ofdata_to_platdata()
205 plat->spi_delay_us = dev_read_u32_default(dev, "spi-delay-us", 0); in soft_spi_ofdata_to_platdata()
213 struct soft_spi_platdata *plat = dev->platdata; in soft_spi_probe()
218 cs_flags = (slave->mode & SPI_CS_HIGH) ? 0 : GPIOD_ACTIVE_LOW; in soft_spi_probe()
219 clk_flags = (slave->mode & SPI_CPOL) ? GPIOD_ACTIVE_LOW : 0; in soft_spi_probe()
225 if (gpio_request_by_name(dev, "cs-gpios", 0, &plat->cs, GPIOD_IS_OUT | cs_flags) || in soft_spi_probe()
226 (gpio_request_by_name(dev, "gpio-sck", 0, &plat->sclk, GPIOD_IS_OUT | clk_flags) && in soft_spi_probe()
227 gpio_request_by_name(dev, "sck-gpios", 0, &plat->sclk, GPIOD_IS_OUT | clk_flags))) in soft_spi_probe()
228 return -EINVAL; in soft_spi_probe()
230 ret = gpio_request_by_name(dev, "gpio-mosi", 0, &plat->mosi, in soft_spi_probe()
233 if (gpio_request_by_name(dev, "mosi-gpios", 0, &plat->mosi, in soft_spi_probe()
235 plat->flags |= SPI_MASTER_NO_TX; in soft_spi_probe()
238 ret = gpio_request_by_name(dev, "gpio-miso", 0, &plat->miso, in soft_spi_probe()
241 if (gpio_request_by_name(dev, "miso-gpios", 0, &plat->miso, in soft_spi_probe()
243 plat->flags |= SPI_MASTER_NO_RX; in soft_spi_probe()
246 if ((plat->flags & (SPI_MASTER_NO_RX | SPI_MASTER_NO_TX)) == in soft_spi_probe()
248 return -EINVAL; in soft_spi_probe()
254 { .compatible = "spi-gpio" },