Lines Matching refs:ctx
28 static int encx24j600_switch_bank(struct encx24j600_context *ctx, in encx24j600_switch_bank() argument
34 ret = spi_write(ctx->spi, &bank_opcode, 1); in encx24j600_switch_bank()
36 ctx->bank = bank; in encx24j600_switch_bank()
41 static int encx24j600_cmdn(struct encx24j600_context *ctx, u8 opcode, in encx24j600_cmdn() argument
51 return spi_sync(ctx->spi, &m); in encx24j600_cmdn()
56 struct encx24j600_context *ctx = context; in regmap_lock_mutex() local
57 mutex_lock(&ctx->mutex); in regmap_lock_mutex()
62 struct encx24j600_context *ctx = context; in regmap_unlock_mutex() local
63 mutex_unlock(&ctx->mutex); in regmap_unlock_mutex()
69 struct encx24j600_context *ctx = context; in regmap_encx24j600_sfr_read() local
79 if ((banked_reg < 0x16) && (ctx->bank != bank)) in regmap_encx24j600_sfr_read()
80 ret = encx24j600_switch_bank(ctx, bank); in regmap_encx24j600_sfr_read()
112 ret = spi_write_then_read(ctx->spi, tx_buf, i, val, len); in regmap_encx24j600_sfr_read()
117 static int regmap_encx24j600_sfr_update(struct encx24j600_context *ctx, in regmap_encx24j600_sfr_update() argument
132 if ((banked_reg < 0x16) && (ctx->bank != bank)) in regmap_encx24j600_sfr_update()
133 ret = encx24j600_switch_bank(ctx, bank); in regmap_encx24j600_sfr_update()
170 return spi_sync(ctx->spi, &m); in regmap_encx24j600_sfr_update()
176 struct encx24j600_context *ctx = context; in regmap_encx24j600_sfr_write() local
177 return regmap_encx24j600_sfr_update(ctx, reg, val, len, WCRU, WCRCODE); in regmap_encx24j600_sfr_write()
180 static int regmap_encx24j600_sfr_set_bits(struct encx24j600_context *ctx, in regmap_encx24j600_sfr_set_bits() argument
183 return regmap_encx24j600_sfr_update(ctx, reg, &val, 1, BFSU, BFSCODE); in regmap_encx24j600_sfr_set_bits()
186 static int regmap_encx24j600_sfr_clr_bits(struct encx24j600_context *ctx, in regmap_encx24j600_sfr_clr_bits() argument
189 return regmap_encx24j600_sfr_update(ctx, reg, &val, 1, BFCU, BFCCODE); in regmap_encx24j600_sfr_clr_bits()
196 struct encx24j600_context *ctx = context; in regmap_encx24j600_reg_update_bits() local
206 ret = regmap_encx24j600_sfr_set_bits(ctx, reg, set_mask); in regmap_encx24j600_reg_update_bits()
211 ret = regmap_encx24j600_sfr_set_bits(ctx, reg + 1, set_mask); in regmap_encx24j600_reg_update_bits()
214 ret = regmap_encx24j600_sfr_clr_bits(ctx, reg, clr_mask); in regmap_encx24j600_reg_update_bits()
219 ret = regmap_encx24j600_sfr_clr_bits(ctx, reg + 1, clr_mask); in regmap_encx24j600_reg_update_bits()
227 struct encx24j600_context *ctx = context; in regmap_encx24j600_spi_write() local
230 return encx24j600_cmdn(ctx, reg, data, count); in regmap_encx24j600_spi_write()
233 return spi_write(ctx->spi, ®, 1); in regmap_encx24j600_spi_write()
239 struct encx24j600_context *ctx = context; in regmap_encx24j600_spi_read() local
244 return spi_write_then_read(ctx->spi, ®, sizeof(reg), data, count); in regmap_encx24j600_spi_read()
352 struct encx24j600_context *ctx = context; in regmap_encx24j600_phy_reg_read() local
357 ret = regmap_write(ctx->regmap, MIREGADR, reg); in regmap_encx24j600_phy_reg_read()
361 ret = regmap_write(ctx->regmap, MICMD, MIIRD); in regmap_encx24j600_phy_reg_read()
366 while ((ret = regmap_read(ctx->regmap, MISTAT, &mistat) != 0) && in regmap_encx24j600_phy_reg_read()
373 ret = regmap_write(ctx->regmap, MICMD, 0); in regmap_encx24j600_phy_reg_read()
377 ret = regmap_read(ctx->regmap, MIRD, val); in regmap_encx24j600_phy_reg_read()
390 struct encx24j600_context *ctx = context; in regmap_encx24j600_phy_reg_write() local
395 ret = regmap_write(ctx->regmap, MIREGADR, reg); in regmap_encx24j600_phy_reg_write()
399 ret = regmap_write(ctx->regmap, MIWR, val); in regmap_encx24j600_phy_reg_write()
404 while ((ret = regmap_read(ctx->regmap, MISTAT, &mistat) != 0) && in regmap_encx24j600_phy_reg_write()
504 struct encx24j600_context *ctx) in devm_regmap_init_encx24j600() argument
506 mutex_init(&ctx->mutex); in devm_regmap_init_encx24j600()
507 regcfg.lock_arg = ctx; in devm_regmap_init_encx24j600()
508 ctx->regmap = devm_regmap_init(dev, ®map_encx24j600, ctx, ®cfg); in devm_regmap_init_encx24j600()
509 ctx->phymap = devm_regmap_init(dev, &phymap_encx24j600, ctx, &phycfg); in devm_regmap_init_encx24j600()