Lines Matching refs:ctx

29 	lws_bb_spi_t *ctx = (lws_bb_spi_t *)octx;
33 if (ctx->flags & (1 << n))
34 ctx->gpio->mode(ctx->ncs[n], LWSGGPIO_FL_WRITE);
35 if (ctx->flags & (1 << (n + 4)))
36 ctx->gpio->mode(ctx->ncmd[n], LWSGGPIO_FL_WRITE);
39 ctx->gpio->mode(ctx->clk, LWSGGPIO_FL_WRITE |
42 ctx->gpio->mode(ctx->mosi, LWSGGPIO_FL_WRITE | LWSGGPIO_FL_START_LOW);
43 ctx->gpio->mode(ctx->miso, LWSGGPIO_FL_READ | LWSGGPIO_FL_PULLUP);
51 lws_bb_spi_write(lws_bb_spi_t *ctx, const uint8_t *buf, size_t len)
53 uint8_t u, inv = !!(ctx->bb_ops.bus_mode & LWSSPIMODE_CPOL);
61 ctx->gpio->set(ctx->clk, inv);
62 ctx->gpio->set(ctx->mosi, !!(u & 0x80));
63 ctx->gpio->set(ctx->clk, !inv);
64 ctx->gpio->set(ctx->clk, inv);
65 ctx->gpio->set(ctx->mosi, !!(u & 0x40));
66 ctx->gpio->set(ctx->clk, !inv);
71 ctx->gpio->set(ctx->clk, 0 ^ inv);
75 lws_bb_spi_read(lws_bb_spi_t *ctx, uint8_t *buf, size_t len)
78 uint8_t inv = !!(ctx->bb_ops.bus_mode & LWSSPIMODE_CPOL);
84 ctx->gpio->set(ctx->clk, inv);
85 u = (u << 1) | !!ctx->gpio->read(ctx->miso);
86 ctx->gpio->set(ctx->mosi, !!(u & 0x80));
87 ctx->gpio->set(ctx->clk, !inv);
92 ctx->gpio->set(ctx->clk, 0 ^ inv);
98 lws_bb_spi_t *ctx = (lws_bb_spi_t *)octx;
102 ctx->gpio->set(ctx->clk, 0 ^ !!(octx->bus_mode & LWSSPIMODE_CPOL));
104 ctx->gpio->set(ctx->ncs[desc->channel], 0);
107 ctx->gpio->set(ctx->ncmd[desc->channel], 0);
108 lws_bb_spi_write(ctx, src, desc->count_cmd);
109 ctx->gpio->set(ctx->ncmd[desc->channel], 1);
115 lws_bb_spi_write(ctx, desc->data, desc->count_write);
118 lws_bb_spi_read(ctx, desc->dest, desc->count_read);
121 ctx->gpio->set(ctx->ncs[desc->channel], 1);
124 ctx->gpio->set(ctx->clk, 0 ^ !!(octx->bus_mode & LWSSPIMODE_CPOL));