Home
last modified time | relevance | path

Searched refs:spi (Results 1 – 25 of 1299) sorted by relevance

12345678910>>...52

/linux/drivers/spi/
H A Dspi-stm32.c285 int (*get_fifo_size)(struct stm32_spi *spi);
286 int (*get_bpw_mask)(struct stm32_spi *spi);
287 void (*disable)(struct stm32_spi *spi);
288 int (*config)(struct stm32_spi *spi);
289 void (*set_bpw)(struct stm32_spi *spi);
290 int (*set_mode)(struct stm32_spi *spi, unsigned int comm_type);
291 void (*set_data_idleness)(struct stm32_spi *spi, struct spi_transfer *xfer);
292 int (*set_number_of_data)(struct stm32_spi *spi, u32 length);
293 void (*write_tx)(struct stm32_spi *spi);
294 void (*read_rx)(struct stm32_spi *spi);
[all …]
H A Dspi-bitbang-txrx.h49 bitbang_txrx_be_cpha0(struct spi_device *spi, in bitbang_txrx_be_cpha0() argument
62 setmosi(spi, word & (1 << 31)); in bitbang_txrx_be_cpha0()
68 setsck(spi, !cpol); in bitbang_txrx_be_cpha0()
74 word |= getmiso(spi); in bitbang_txrx_be_cpha0()
75 setsck(spi, cpol); in bitbang_txrx_be_cpha0()
81 bitbang_txrx_be_cpha1(struct spi_device *spi, in bitbang_txrx_be_cpha1() argument
92 setsck(spi, !cpol); in bitbang_txrx_be_cpha1()
95 setmosi(spi, word & (1 << 31)); in bitbang_txrx_be_cpha1()
101 setsck(spi, cpol); in bitbang_txrx_be_cpha1()
107 word |= getmiso(spi); in bitbang_txrx_be_cpha1()
[all …]
/linux/drivers/net/wan/
H A Dslic_ds26522.c38 static void slic_write(struct spi_device *spi, u16 addr, in slic_write() argument
50 spi_write(spi, &temp[0], SLIC_THREE_LEN); in slic_write()
53 static u8 slic_read(struct spi_device *spi, u16 addr) in slic_read() argument
62 spi_write_then_read(spi, &temp[0], SLIC_TWO_LEN, &data, in slic_read()
69 static bool get_slic_product_code(struct spi_device *spi) in get_slic_product_code() argument
73 device_id = slic_read(spi, DS26522_IDR_ADDR); in get_slic_product_code()
80 static void ds26522_e1_spec_config(struct spi_device *spi) in ds26522_e1_spec_config() argument
83 slic_write(spi, DS26522_RMMR_ADDR, DS26522_RMMR_E1); in ds26522_e1_spec_config()
86 slic_write(spi, DS26522_TMMR_ADDR, DS26522_TMMR_E1); in ds26522_e1_spec_config()
89 slic_write(spi, DS26522_RMMR_ADDR, in ds26522_e1_spec_config()
[all …]
/linux/drivers/video/backlight/
H A Dili922x.c138 struct spi_device *spi; member
148 static int ili922x_read_status(struct spi_device *spi, u16 *rs) in ili922x_read_status() argument
161 CHECK_FREQ_REG(spi, &xfer); in ili922x_read_status()
175 ret = spi_sync(spi, &msg); in ili922x_read_status()
177 dev_dbg(&spi->dev, "Error sending SPI message 0x%x", ret); in ili922x_read_status()
191 static int ili922x_read(struct spi_device *spi, u8 reg, u16 *rx) in ili922x_read() argument
205 CHECK_FREQ_REG(spi, &xfer_regindex); in ili922x_read()
226 CHECK_FREQ_REG(spi, &xfer_regvalue); in ili922x_read()
229 ret = spi_sync(spi, &msg); in ili922x_read()
231 dev_dbg(&spi->dev, "Error sending SPI message 0x%x", ret); in ili922x_read()
[all …]
H A Dl4f00242t03.c24 struct spi_device *spi; member
46 static void l4f00242t03_lcd_init(struct spi_device *spi) in l4f00242t03_lcd_init() argument
48 struct l4f00242t03_priv *priv = spi_get_drvdata(spi); in l4f00242t03_lcd_init()
52 dev_dbg(&spi->dev, "initializing LCD\n"); in l4f00242t03_lcd_init()
56 dev_err(&spi->dev, "failed to set the IO regulator voltage.\n"); in l4f00242t03_lcd_init()
61 dev_err(&spi->dev, "failed to enable the IO regulator.\n"); in l4f00242t03_lcd_init()
67 dev_err(&spi->dev, "failed to set the core regulator voltage.\n"); in l4f00242t03_lcd_init()
73 dev_err(&spi->dev, "failed to enable the core regulator.\n"); in l4f00242t03_lcd_init()
82 spi_write(spi, (const u8 *)cmd, ARRAY_SIZE(cmd) * sizeof(u16)); in l4f00242t03_lcd_init()
85 static void l4f00242t03_lcd_powerdown(struct spi_device *spi) in l4f00242t03_lcd_powerdown() argument
[all …]
H A Dili9320.c29 struct ili9320_spi *spi = &ili->access.spi; in ili9320_write_spi() local
30 unsigned char *addr = spi->buffer_addr; in ili9320_write_spi()
31 unsigned char *data = spi->buffer_data; in ili9320_write_spi()
37 addr[0] = spi->id | ILI9320_SPI_INDEX | ILI9320_SPI_WRITE; in ili9320_write_spi()
43 data[0] = spi->id | ILI9320_SPI_DATA | ILI9320_SPI_WRITE; in ili9320_write_spi()
47 return spi_sync(spi->dev, &spi->message); in ili9320_write_spi()
171 struct ili9320_spi *spi = &ili->access.spi; in ili9320_setup_spi() local
174 spi->dev = dev; in ili9320_setup_spi()
181 spi->xfer[0].tx_buf = spi->buffer_addr; in ili9320_setup_spi()
182 spi->xfer[1].tx_buf = spi->buffer_data; in ili9320_setup_spi()
[all …]
/linux/drivers/misc/
H A Dgehc-achc.c59 static int ezport_start_programming(struct spi_device *spi, struct gpio_desc *reset) in ezport_start_programming() argument
68 spi_bus_lock(spi->controller); in ezport_start_programming()
73 ret = spi_sync_locked(spi, &msg); in ezport_start_programming()
85 ret = spi_sync_locked(spi, &msg); in ezport_start_programming()
88 spi_bus_unlock(spi->controller); in ezport_start_programming()
92 static void ezport_stop_programming(struct spi_device *spi, struct gpio_desc *reset) in ezport_stop_programming() argument
95 spi_bus_lock(spi->controller); in ezport_stop_programming()
97 spi_bus_unlock(spi->controller); in ezport_stop_programming()
100 static int ezport_get_status_register(struct spi_device *spi) in ezport_get_status_register() argument
104 ret = spi_w8r8(spi, EZPORT_CMD_RDSR); in ezport_get_status_register()
[all …]
H A Dlattice-ecp3-config.c67 struct spi_device *spi = (struct spi_device *)context; in firmware_load() local
68 struct fpga_data *data = spi_get_drvdata(spi); in firmware_load()
78 dev_err(&spi->dev, "Cannot load firmware, aborting\n"); in firmware_load()
83 dev_err(&spi->dev, "Error: Firmware size is 0!\n"); in firmware_load()
94 spi_write_then_read(spi, txbuf, 8, rxbuf, rx_len); in firmware_load()
96 dev_dbg(&spi->dev, "FPGA JTAG ID=%08x\n", jedec_id); in firmware_load()
103 dev_err(&spi->dev, in firmware_load()
109 dev_info(&spi->dev, "FPGA %s detected\n", ecp3_dev[i].name); in firmware_load()
112 spi_write_then_read(spi, txbuf, 8, rxbuf, rx_len); in firmware_load()
114 dev_dbg(&spi->dev, "FPGA Status=%08x\n", status); in firmware_load()
[all …]
/linux/drivers/media/dvb-frontends/cxd2880/
H A Dcxd2880_spi_device.c14 static int cxd2880_spi_device_write(struct cxd2880_spi *spi, in cxd2880_spi_device_write() argument
22 if (!spi || !spi->user || !data || size == 0) in cxd2880_spi_device_write()
25 spi_device = spi->user; in cxd2880_spi_device_write()
33 result = spi_sync(spi_device->spi, &msg); in cxd2880_spi_device_write()
41 static int cxd2880_spi_device_write_read(struct cxd2880_spi *spi, in cxd2880_spi_device_write_read() argument
50 if (!spi || !spi->user || !tx_data || in cxd2880_spi_device_write_read()
54 spi_device = spi->user; in cxd2880_spi_device_write_read()
56 result = spi_write_then_read(spi_device->spi, tx_data, in cxd2880_spi_device_write_read()
70 struct spi_device *spi = spi_device->spi; in cxd2880_spi_device_initialize() local
74 spi->mode = SPI_MODE_0; in cxd2880_spi_device_initialize()
[all …]
/linux/drivers/net/can/spi/
H A Dmcp251x.c230 struct spi_device *spi; member
263 static inline int mcp251x_is_##_model(struct spi_device *spi) \
265 struct mcp251x_priv *priv = spi_get_drvdata(spi); \
296 static int mcp251x_spi_trans(struct spi_device *spi, int len) in mcp251x_spi_trans() argument
298 struct mcp251x_priv *priv = spi_get_drvdata(spi); in mcp251x_spi_trans()
311 ret = spi_sync(spi, &m); in mcp251x_spi_trans()
313 dev_err(&spi->dev, "spi transfer failed: ret = %d\n", ret); in mcp251x_spi_trans()
317 static int mcp251x_spi_write(struct spi_device *spi, int len) in mcp251x_spi_write() argument
319 struct mcp251x_priv *priv = spi_get_drvdata(spi); in mcp251x_spi_write()
322 ret = spi_write(spi, priv->spi_tx_buf, len); in mcp251x_spi_write()
[all …]
H A Dhi311x.c147 struct spi_device *spi; member
200 static int hi3110_spi_trans(struct spi_device *spi, int len) in hi3110_spi_trans() argument
202 struct hi3110_priv *priv = spi_get_drvdata(spi); in hi3110_spi_trans()
215 ret = spi_sync(spi, &m); in hi3110_spi_trans()
218 dev_err(&spi->dev, "spi transfer failed: ret = %d\n", ret); in hi3110_spi_trans()
222 static int hi3110_cmd(struct spi_device *spi, u8 command) in hi3110_cmd() argument
224 struct hi3110_priv *priv = spi_get_drvdata(spi); in hi3110_cmd()
227 dev_dbg(&spi->dev, "hi3110_cmd: %02X\n", command); in hi3110_cmd()
229 return hi3110_spi_trans(spi, 1); in hi3110_cmd()
232 static u8 hi3110_read(struct spi_device *spi, u8 command) in hi3110_read() argument
[all …]
/linux/drivers/video/fbdev/omap2/omapfb/displays/
H A Dpanel-lgphilips-lb035q02.c43 struct spi_device *spi; member
54 static int lb035q02_write_reg(struct spi_device *spi, u8 reg, u16 val) in lb035q02_write_reg() argument
82 return spi_sync(spi, &msg); in lb035q02_write_reg()
85 static void init_lb035q02_panel(struct spi_device *spi) in init_lb035q02_panel() argument
88 lb035q02_write_reg(spi, 0x01, 0x6300); in init_lb035q02_panel()
89 lb035q02_write_reg(spi, 0x02, 0x0200); in init_lb035q02_panel()
90 lb035q02_write_reg(spi, 0x03, 0x0177); in init_lb035q02_panel()
91 lb035q02_write_reg(spi, 0x04, 0x04c7); in init_lb035q02_panel()
92 lb035q02_write_reg(spi, 0x05, 0xffc0); in init_lb035q02_panel()
93 lb035q02_write_reg(spi, 0x06, 0xe806); in init_lb035q02_panel()
[all …]
/linux/drivers/media/v4l2-core/
H A Dv4l2-spi.c13 struct spi_device *spi = v4l2_get_subdevdata(sd); in v4l2_spi_subdev_unregister() local
15 if (spi && !spi->dev.of_node && !spi->dev.fwnode) in v4l2_spi_subdev_unregister()
16 spi_unregister_device(spi); in v4l2_spi_subdev_unregister()
19 void v4l2_spi_subdev_init(struct v4l2_subdev *sd, struct spi_device *spi, in v4l2_spi_subdev_init() argument
25 sd->owner = spi->dev.driver->owner; in v4l2_spi_subdev_init()
26 sd->dev = &spi->dev; in v4l2_spi_subdev_init()
28 v4l2_set_subdevdata(sd, spi); in v4l2_spi_subdev_init()
29 spi_set_drvdata(spi, sd); in v4l2_spi_subdev_init()
32 spi->dev.driver->name, dev_name(&spi->dev)); in v4l2_spi_subdev_init()
41 struct spi_device *spi = NULL; in v4l2_spi_new_subdev() local
[all …]
/linux/drivers/rtc/
H A Drtc-ds1302.c39 struct spi_device *spi = dev_get_drvdata(dev); in ds1302_rtc_set_time() local
49 status = spi_write_then_read(spi, buf, 2, in ds1302_rtc_set_time()
68 return spi_write_then_read(spi, buf, sizeof(buf), in ds1302_rtc_set_time()
74 struct spi_device *spi = dev_get_drvdata(dev); in ds1302_rtc_get_time() local
82 status = spi_write_then_read(spi, &addr, sizeof(addr), in ds1302_rtc_get_time()
104 static int ds1302_probe(struct spi_device *spi) in ds1302_probe() argument
116 if (spi->bits_per_word && (spi->bits_per_word != 8)) { in ds1302_probe()
117 dev_err(&spi->dev, "bad word length\n"); in ds1302_probe()
119 } else if (spi->max_speed_hz > 2000000) { in ds1302_probe()
120 dev_err(&spi->dev, "speed is too high\n"); in ds1302_probe()
[all …]
H A Drtc-max6916.c34 struct spi_device *spi = to_spi_device(dev); in max6916_read_reg() local
38 return spi_write_then_read(spi, data, 1, data, 1); in max6916_read_reg()
44 struct spi_device *spi = to_spi_device(dev); in max6916_write_reg() local
50 return spi_write_then_read(spi, buf, 2, NULL, 0); in max6916_write_reg()
55 struct spi_device *spi = to_spi_device(dev); in max6916_read_time() local
61 err = spi_write_then_read(spi, buf, 1, buf, 8); in max6916_read_time()
79 struct spi_device *spi = to_spi_device(dev); in max6916_set_time() local
83 dev_err(&spi->dev, "Year must be between 2000 and 2099. It's %d.\n", in max6916_set_time()
99 return spi_write_then_read(spi, buf, 9, NULL, 0); in max6916_set_time()
107 static int max6916_probe(struct spi_device *spi) in max6916_probe() argument
[all …]
H A Drtc-ds1390.c56 struct spi_device *spi = to_spi_device(dev); in ds1390_set_reg() local
63 spi_write(spi, buf, 2); in ds1390_set_reg()
69 struct spi_device *spi = to_spi_device(dev); in ds1390_get_reg() local
79 status = spi_write_then_read(spi, chip->txrx_buf, 1, chip->txrx_buf, 1); in ds1390_get_reg()
88 static void ds1390_trickle_of_init(struct spi_device *spi) in ds1390_trickle_of_init() argument
93 if (of_property_read_u32(spi->dev.of_node, "trickle-resistor-ohms", in ds1390_trickle_of_init()
99 if (of_property_read_bool(spi->dev.of_node, "trickle-diode-disable")) in ds1390_trickle_of_init()
116 dev_warn(&spi->dev, in ds1390_trickle_of_init()
121 ds1390_set_reg(&spi->dev, DS1390_REG_TRICKLE, value); in ds1390_trickle_of_init()
129 struct spi_device *spi = to_spi_device(dev); in ds1390_read_time() local
[all …]
/linux/drivers/net/dsa/b53/
H A Db53_spi.c42 static inline int b53_spi_read_reg(struct spi_device *spi, u8 reg, u8 *val, in b53_spi_read_reg() argument
50 return spi_write_then_read(spi, txbuf, 2, val, len); in b53_spi_read_reg()
53 static inline int b53_spi_clear_status(struct spi_device *spi) in b53_spi_clear_status() argument
60 ret = b53_spi_read_reg(spi, B53_SPI_STATUS, &rxbuf, 1); in b53_spi_clear_status()
76 static inline int b53_spi_set_page(struct spi_device *spi, u8 page) in b53_spi_set_page() argument
84 return spi_write(spi, txbuf, sizeof(txbuf)); in b53_spi_set_page()
87 static inline int b53_prepare_reg_access(struct spi_device *spi, u8 page) in b53_prepare_reg_access() argument
89 int ret = b53_spi_clear_status(spi); in b53_prepare_reg_access()
94 return b53_spi_set_page(spi, page); in b53_prepare_reg_access()
97 static int b53_spi_prepare_reg_read(struct spi_device *spi, u8 reg) in b53_spi_prepare_reg_read() argument
[all …]
/linux/net/ipv6/
H A Dxfrm6_tunnel.c31 u32 spi; member
48 u32 spi; member
69 static inline unsigned int xfrm6_tunnel_spi_hash_byspi(u32 spi) in xfrm6_tunnel_spi_hash_byspi() argument
71 return spi % XFRM6_TUNNEL_SPI_BYSPI_HSIZE; in xfrm6_tunnel_spi_hash_byspi()
92 u32 spi; in xfrm6_tunnel_spi_lookup() local
96 spi = x6spi ? x6spi->spi : 0; in xfrm6_tunnel_spi_lookup()
98 return htonl(spi); in xfrm6_tunnel_spi_lookup()
102 static int __xfrm6_tunnel_spi_check(struct net *net, u32 spi) in __xfrm6_tunnel_spi_check() argument
106 int index = xfrm6_tunnel_spi_hash_byspi(spi); in __xfrm6_tunnel_spi_check()
111 if (x6spi->spi == spi) in __xfrm6_tunnel_spi_check()
[all …]
/linux/drivers/mtd/spi-nor/
H A DMakefile3 spi-nor-objs := core.o sfdp.o swp.o otp.o sysfs.o
4 spi-nor-objs += atmel.o
5 spi-nor-objs += eon.o
6 spi-nor-objs += esmt.o
7 spi-nor-objs += everspin.o
8 spi-nor-objs += gigadevice.o
9 spi-nor-objs += intel.o
10 spi-nor-objs += issi.o
11 spi-nor-objs += macronix.o
12 spi-nor-objs += micron-st.o
[all …]
/linux/drivers/mtd/devices/
H A Dmtd_dataflash.c93 struct spi_device *spi; member
112 MODULE_DEVICE_TABLE(spi, dataflash_spi_ids);
119 static inline int dataflash_status(struct spi_device *spi) in dataflash_status() argument
124 return spi_w8r8(spi, OP_READ_STATUS); in dataflash_status()
131 static int dataflash_waitready(struct spi_device *spi) in dataflash_waitready() argument
136 status = dataflash_status(spi); in dataflash_waitready()
138 dev_dbg(&spi->dev, "status %d?\n", status); in dataflash_waitready()
157 struct spi_device *spi = priv->spi; in dataflash_erase() local
164 dev_dbg(&spi->dev, "erase addr=0x%llx len 0x%llx\n", in dataflash_erase()
198 dev_dbg(&spi->dev, "ERASE %s: (%x) %x %x %x [%i]\n", in dataflash_erase()
[all …]
/linux/drivers/iio/chemical/
H A Dbme680_spi.c15 struct spi_device *spi; member
27 struct spi_device *spi = ctx->spi; in bme680_regmap_spi_select_page() local
40 ret = spi_write_then_read(spi, buf, 1, buf + 1, 1); in bme680_regmap_spi_select_page()
42 dev_err(&spi->dev, "failed to set page %u\n", page); in bme680_regmap_spi_select_page()
52 ret = spi_write(spi, buf, 2); in bme680_regmap_spi_select_page()
54 dev_err(&spi->dev, "failed to set page %u\n", page); in bme680_regmap_spi_select_page()
67 struct spi_device *spi = ctx->spi; in bme680_regmap_spi_write() local
83 return spi_write(spi, buf, 2); in bme680_regmap_spi_write()
90 struct spi_device *spi = ctx->spi; in bme680_regmap_spi_read() local
100 return spi_write_then_read(spi, &addr, 1, val, val_size); in bme680_regmap_spi_read()
[all …]
/linux/drivers/tty/serial/
H A Dsc16is7xx_spi.c17 static int sc16is7xx_spi_probe(struct spi_device *spi) in sc16is7xx_spi_probe() argument
26 spi->bits_per_word = 8; in sc16is7xx_spi_probe()
28 if ((spi->mode & SPI_MODE_X_MASK) != SPI_MODE_0) in sc16is7xx_spi_probe()
29 return dev_err_probe(&spi->dev, -EINVAL, "Unsupported SPI mode\n"); in sc16is7xx_spi_probe()
31 spi->mode = spi->mode ? : SPI_MODE_0; in sc16is7xx_spi_probe()
32 spi->max_speed_hz = spi->max_speed_hz ? : 4 * HZ_PER_MHZ; in sc16is7xx_spi_probe()
33 ret = spi_setup(spi); in sc16is7xx_spi_probe()
37 devtype = spi_get_device_match_data(spi); in sc16is7xx_spi_probe()
39 return dev_err_probe(&spi->dev, -ENODEV, "Failed to match device\n"); in sc16is7xx_spi_probe()
53 regmaps[i] = devm_regmap_init_spi(spi, &regcfg); in sc16is7xx_spi_probe()
[all …]
/linux/drivers/hwmon/
H A Dadt7310.c42 static int adt7310_spi_read_word(struct spi_device *spi, u8 reg) in adt7310_spi_read_word() argument
44 return spi_w8r16be(spi, AD7310_COMMAND(reg) | ADT7310_CMD_READ); in adt7310_spi_read_word()
47 static int adt7310_spi_write_word(struct spi_device *spi, u8 reg, u16 data) in adt7310_spi_write_word() argument
54 return spi_write(spi, buf, sizeof(buf)); in adt7310_spi_write_word()
57 static int adt7310_spi_read_byte(struct spi_device *spi, u8 reg) in adt7310_spi_read_byte() argument
59 return spi_w8r8(spi, AD7310_COMMAND(reg) | ADT7310_CMD_READ); in adt7310_spi_read_byte()
62 static int adt7310_spi_write_byte(struct spi_device *spi, u8 reg, u8 data) in adt7310_spi_write_byte() argument
69 return spi_write(spi, buf, sizeof(buf)); in adt7310_spi_write_byte()
85 struct spi_device *spi = context; in adt7310_reg_read() local
93 regval = adt7310_spi_read_word(spi, reg); in adt7310_reg_read()
[all …]
/linux/drivers/input/misc/
H A Dariel-pwrbutton.c36 struct spi_device *spi = priv->client; in ec_input_read() local
46 return spi_sync_transfer(spi, &t, 1); in ec_input_read()
52 struct spi_device *spi = priv->client; in ec_input_interrupt() local
59 dev_err(&spi->dev, "EC read failed: %d\n", error); in ec_input_interrupt()
64 dev_warn(&spi->dev, "No new data to read?\n"); in ec_input_interrupt()
71 dev_dbg(&spi->dev, "Ignoring message that's not kbd data\n"); in ec_input_interrupt()
86 dev_dbg(&spi->dev, "Unknown scan code: %02x\n", in ec_input_interrupt()
95 static int ariel_pwrbutton_probe(struct spi_device *spi) in ariel_pwrbutton_probe() argument
101 if (!spi->irq) { in ariel_pwrbutton_probe()
102 dev_err(&spi->dev, "Missing IRQ.\n"); in ariel_pwrbutton_probe()
[all …]
/linux/drivers/mfd/
H A Dmc13xxx-spi.c36 MODULE_DEVICE_TABLE(spi, mc13xxx_device_id);
66 struct spi_device *spi = to_spi_device(dev); in mc13xxx_spi_read() local
81 ret = spi_sync(spi, &m); in mc13xxx_spi_read()
91 struct spi_device *spi = to_spi_device(dev); in mc13xxx_spi_write() local
99 spi_write(spi, data, count); in mc13xxx_spi_write()
101 return spi_write(spi, data, count); in mc13xxx_spi_write()
124 static int mc13xxx_spi_probe(struct spi_device *spi) in mc13xxx_spi_probe() argument
129 mc13xxx = devm_kzalloc(&spi->dev, sizeof(*mc13xxx), GFP_KERNEL); in mc13xxx_spi_probe()
133 dev_set_drvdata(&spi->dev, mc13xxx); in mc13xxx_spi_probe()
135 spi->mode = SPI_MODE_0 | SPI_CS_HIGH; in mc13xxx_spi_probe()
[all …]

12345678910>>...52