Lines Matching refs:data

25 	struct afbr_s50_platform_data *data;  in S2PI_GetStatus()  local
28 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_GetStatus()
33 return atomic_get(&data->s2pi.rtio.state); in S2PI_GetStatus()
54 struct afbr_s50_platform_data *data = (struct afbr_s50_platform_data *)arg; in S2PI_complete_callback() local
68 if (atomic_cas(&data->s2pi.rtio.state, STATUS_BUSY, STATUS_IDLE)) { in S2PI_complete_callback()
70 } else if (atomic_cas(&data->s2pi.rtio.state, ERROR_ABORTED, STATUS_IDLE)) { in S2PI_complete_callback()
80 if (data->s2pi.rtio.callback.handler) { in S2PI_complete_callback()
81 (void)data->s2pi.rtio.callback.handler(status, data->s2pi.rtio.callback.data); in S2PI_complete_callback()
92 struct afbr_s50_platform_data *data; in S2PI_TransferFrame() local
95 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_TransferFrame()
100 CHECKIF(atomic_get(&data->s2pi.mode) == STATUS_S2PI_GPIO_MODE) { in S2PI_TransferFrame()
106 if (!atomic_cas(&data->s2pi.rtio.state, STATUS_IDLE, STATUS_BUSY)) { in S2PI_TransferFrame()
111 data->s2pi.rtio.callback.handler = callback; in S2PI_TransferFrame()
112 data->s2pi.rtio.callback.data = callbackData; in S2PI_TransferFrame()
114 struct rtio *ctx = data->s2pi.rtio.ctx; in S2PI_TransferFrame()
115 struct rtio_iodev *iodev = data->s2pi.rtio.iodev; in S2PI_TransferFrame()
135 rtio_sqe_prep_callback_no_cqe(cb_sqe, S2PI_complete_callback, data, NULL); in S2PI_TransferFrame()
144 struct afbr_s50_platform_data *data; in S2PI_Abort() local
147 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_Abort()
152 (void)atomic_set(&data->s2pi.rtio.state, ERROR_ABORTED); in S2PI_Abort()
154 S2PI_complete_callback(data->s2pi.rtio.ctx, NULL, data); in S2PI_Abort()
163 struct afbr_s50_platform_data *data; in S2PI_SetIrqCallback() local
166 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_SetIrqCallback()
171 data->s2pi.irq.handler = callback; in S2PI_SetIrqCallback()
172 data->s2pi.irq.data = callbackData; in S2PI_SetIrqCallback()
174 if (data->s2pi.irq.handler) { in S2PI_SetIrqCallback()
175 err = gpio_pin_interrupt_configure_dt(data->s2pi.gpio.irq, GPIO_INT_EDGE_TO_ACTIVE); in S2PI_SetIrqCallback()
181 err = gpio_pin_interrupt_configure_dt(data->s2pi.gpio.irq, GPIO_INT_DISABLE); in S2PI_SetIrqCallback()
193 struct afbr_s50_platform_data *data; in S2PI_ReadIrqPin() local
196 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_ReadIrqPin()
202 const struct gpio_dt_spec *irq = data->s2pi.gpio.irq; in S2PI_ReadIrqPin()
216 struct afbr_s50_platform_data *data; in S2PI_CycleCsPin() local
219 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_CycleCsPin()
225 const struct gpio_dt_spec *cs = data->s2pi.gpio.spi.cs; in S2PI_CycleCsPin()
244 struct afbr_s50_platform_data *data; in S2PI_CaptureGpioControl() local
247 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_CaptureGpioControl()
253 err = pinctrl_apply_state(data->s2pi.pincfg, PINCTRL_STATE_PRIV_START); in S2PI_CaptureGpioControl()
259 err = gpio_pin_configure_dt(data->s2pi.gpio.spi.miso, GPIO_INPUT | GPIO_PULL_UP); in S2PI_CaptureGpioControl()
260 err |= gpio_pin_configure_dt(data->s2pi.gpio.spi.mosi, GPIO_OUTPUT); in S2PI_CaptureGpioControl()
261 err |= gpio_pin_configure_dt(data->s2pi.gpio.spi.clk, GPIO_OUTPUT); in S2PI_CaptureGpioControl()
267 (void)atomic_set(&data->s2pi.mode, STATUS_S2PI_GPIO_MODE); in S2PI_CaptureGpioControl()
274 struct afbr_s50_platform_data *data; in S2PI_ReleaseGpioControl() local
277 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_ReleaseGpioControl()
283 (void)gpio_pin_configure_dt(data->s2pi.gpio.spi.miso, GPIO_DISCONNECTED); in S2PI_ReleaseGpioControl()
284 (void)gpio_pin_configure_dt(data->s2pi.gpio.spi.mosi, GPIO_DISCONNECTED); in S2PI_ReleaseGpioControl()
285 (void)gpio_pin_configure_dt(data->s2pi.gpio.spi.clk, GPIO_DISCONNECTED); in S2PI_ReleaseGpioControl()
287 err = pinctrl_apply_state(data->s2pi.pincfg, PINCTRL_STATE_DEFAULT); in S2PI_ReleaseGpioControl()
293 (void)atomic_set(&data->s2pi.mode, STATUS_IDLE); in S2PI_ReleaseGpioControl()
300 struct afbr_s50_platform_data *data; in S2PI_WriteGpioPin() local
304 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_WriteGpioPin()
310 CHECKIF(!(atomic_get(&data->s2pi.mode) == STATUS_S2PI_GPIO_MODE)) { in S2PI_WriteGpioPin()
317 gpio_pin = data->s2pi.gpio.spi.cs; in S2PI_WriteGpioPin()
320 gpio_pin = data->s2pi.gpio.spi.clk; in S2PI_WriteGpioPin()
323 gpio_pin = data->s2pi.gpio.spi.mosi; in S2PI_WriteGpioPin()
326 gpio_pin = data->s2pi.gpio.spi.miso; in S2PI_WriteGpioPin()
349 struct afbr_s50_platform_data *data; in S2PI_ReadGpioPin() local
354 err = afbr_s50_platform_get_by_id(slave, &data); in S2PI_ReadGpioPin()
360 CHECKIF(!(atomic_get(&data->s2pi.mode) == STATUS_S2PI_GPIO_MODE)) { in S2PI_ReadGpioPin()
367 gpio_pin = data->s2pi.gpio.spi.cs; in S2PI_ReadGpioPin()
370 gpio_pin = data->s2pi.gpio.spi.clk; in S2PI_ReadGpioPin()
373 gpio_pin = data->s2pi.gpio.spi.mosi; in S2PI_ReadGpioPin()
376 gpio_pin = data->s2pi.gpio.spi.miso; in S2PI_ReadGpioPin()
395 struct afbr_s50_platform_data *data = CONTAINER_OF(cb, in s2pi_irq_gpio_callback() local
399 if (data->s2pi.irq.handler) { in s2pi_irq_gpio_callback()
400 data->s2pi.irq.handler(data->s2pi.irq.data); in s2pi_irq_gpio_callback()
404 static int s2pi_init(struct afbr_s50_platform_data *data) in s2pi_init() argument
408 (void)atomic_set(&data->s2pi.rtio.state, STATUS_IDLE); in s2pi_init()
409 (void)atomic_set(&data->s2pi.mode, STATUS_IDLE); in s2pi_init()
411 CHECKIF(!data->s2pi.gpio.irq || !data->s2pi.gpio.spi.cs) { in s2pi_init()
416 if (!gpio_is_ready_dt(data->s2pi.gpio.irq)) { in s2pi_init()
421 err = gpio_pin_configure_dt(data->s2pi.gpio.irq, GPIO_INPUT); in s2pi_init()
427 gpio_init_callback(&data->s2pi.irq.cb, s2pi_irq_gpio_callback, in s2pi_init()
428 BIT(data->s2pi.gpio.irq->pin)); in s2pi_init()
430 err = gpio_add_callback(data->s2pi.gpio.irq->port, &data->s2pi.irq.cb); in s2pi_init()