Lines Matching refs:word
164 static int prepare_access(struct ocotp_regs **regs, u32 bank, u32 word, in prepare_access() argument
170 word >= ARRAY_SIZE((*regs)->bank[0].fuse_regs) >> 2 || in prepare_access()
178 word >= ARRAY_SIZE((*regs)->bank[0].fuse_regs) >> 3) { in prepare_access()
211 static int prepare_read(struct ocotp_regs **regs, u32 bank, u32 word, u32 *val, in prepare_read() argument
214 return prepare_access(regs, bank, word, val != NULL, caller); in prepare_read()
217 int fuse_read(u32 bank, u32 word, u32 *val) in fuse_read() argument
224 ret = prepare_read(®s, bank, word, val, __func__); in fuse_read()
229 phy_word = fuse_word_physical(bank, word); in fuse_read()
291 static void setup_direct_access(struct ocotp_regs *regs, u32 bank, u32 word, in setup_direct_access() argument
302 word += 4; in setup_direct_access()
304 addr = bank << 3 | word; in setup_direct_access()
313 int fuse_sense(u32 bank, u32 word, u32 *val) in fuse_sense() argument
318 ret = prepare_read(®s, bank, word, val, __func__); in fuse_sense()
322 setup_direct_access(regs, bank, word, false); in fuse_sense()
326 *val = readl((®s->read_fuse_data0) + (word << 2)); in fuse_sense()
342 static int prepare_write(struct ocotp_regs **regs, u32 bank, u32 word, in prepare_write() argument
345 return prepare_access(regs, bank, word, true, caller); in prepare_write()
348 int fuse_prog(u32 bank, u32 word, u32 val) in fuse_prog() argument
353 ret = prepare_write(®s, bank, word, __func__); in fuse_prog()
357 setup_direct_access(regs, bank, word, true); in fuse_prog()
359 switch (word) { in fuse_prog()
403 int fuse_override(u32 bank, u32 word, u32 val) in fuse_override() argument
410 ret = prepare_write(®s, bank, word, __func__); in fuse_override()
415 phy_word = fuse_word_physical(bank, word); in fuse_override()