Lines Matching refs:fuse_hdr

74 static int prog_srkh(struct fuse_hdr_t *fuse_hdr,  in prog_srkh()  argument
79 ret = write_fuses(sfp_ccsr_regs->srk_hash, fuse_hdr->srkh, 8); in prog_srkh()
90 static int prog_oemuid(struct fuse_hdr_t *fuse_hdr, in prog_oemuid() argument
97 if (((fuse_hdr->flags >> (FLAG_OUID0_SHIFT + i)) & 0x1) != 0) { in prog_oemuid()
100 &fuse_hdr->oem_uid[i], 1); in prog_oemuid()
113 static int prog_debug(struct fuse_hdr_t *fuse_hdr, in prog_debug() argument
119 if (((fuse_hdr->flags >> (FLAG_DCV0_SHIFT)) & 0x3) != 0) { in prog_debug()
121 ret = write_fuses(sfp_ccsr_regs->dcv, fuse_hdr->dcv, 2); in prog_debug()
131 if ((((fuse_hdr->flags >> (FLAG_DRV0_SHIFT)) & 0x3)) != 0) { in prog_debug()
133 ret = write_fuses(sfp_ccsr_regs->drv, fuse_hdr->drv, 2); in prog_debug()
207 static int prog_otpmk(struct fuse_hdr_t *fuse_hdr, in prog_otpmk() argument
214 otpmk_flags = (fuse_hdr->flags >> (FLAG_OTPMK_SHIFT)) & FLAG_OTPMK_MASK; in prog_otpmk()
218 memset(fuse_hdr->otpmk, 0, sizeof(fuse_hdr->otpmk)); in prog_otpmk()
221 fuse_hdr->otpmk[0] |= OTPMK_MIM_BITS_MASK; in prog_otpmk()
242 fuse_hdr->otpmk[0] = otpmk_random[7]; in prog_otpmk()
243 fuse_hdr->otpmk[1] = otpmk_random[6]; in prog_otpmk()
244 fuse_hdr->otpmk[2] = otpmk_random[5]; in prog_otpmk()
245 fuse_hdr->otpmk[3] = otpmk_random[4]; in prog_otpmk()
246 fuse_hdr->otpmk[4] = otpmk_random[3]; in prog_otpmk()
247 fuse_hdr->otpmk[5] = otpmk_random[2]; in prog_otpmk()
248 fuse_hdr->otpmk[6] = otpmk_random[1]; in prog_otpmk()
249 fuse_hdr->otpmk[7] = otpmk_random[0]; in prog_otpmk()
277 fuse_hdr->otpmk[0] = otpmk_random[7]; in prog_otpmk()
278 fuse_hdr->otpmk[1] = otpmk_random[6]; in prog_otpmk()
279 fuse_hdr->otpmk[2] = otpmk_random[5]; in prog_otpmk()
280 fuse_hdr->otpmk[3] = otpmk_random[4]; in prog_otpmk()
281 fuse_hdr->otpmk[4] = otpmk_random[3]; in prog_otpmk()
282 fuse_hdr->otpmk[5] = otpmk_random[2]; in prog_otpmk()
283 fuse_hdr->otpmk[6] = otpmk_random[1]; in prog_otpmk()
284 fuse_hdr->otpmk[7] = otpmk_random[0]; in prog_otpmk()
293 if ((fuse_hdr->otpmk[0] & OTPMK_MIM_BITS_MASK) != in prog_otpmk()
305 ret = write_fuses(sfp_ccsr_regs->otpmk, fuse_hdr->otpmk, 8); in prog_otpmk()
325 static int prog_ospr1(struct fuse_hdr_t *fuse_hdr, in prog_ospr1() argument
332 if (((fuse_hdr->flags >> FLAG_MC_SHIFT) & 0x1) != 0) { in prog_ospr1()
336 if (((fuse_hdr->flags >> FLAG_DBG_LVL_SHIFT) & 0x1) != 0) { in prog_ospr1()
340 ret = write_a_fuse(&sfp_ccsr_regs->ospr1, &fuse_hdr->ospr1, mask); in prog_ospr1()
353 static int prog_syscfg(struct fuse_hdr_t *fuse_hdr, in prog_syscfg() argument
359 ret = write_a_fuse(&sfp_ccsr_regs->ospr, &fuse_hdr->sc, OSPR0_SC_MASK); in prog_syscfg()
375 struct fuse_hdr_t *fuse_hdr = NULL; in provision_fuses() local
380 fuse_hdr = (struct fuse_hdr_t *)fuse_scr_addr; in provision_fuses()
391 if (((fuse_hdr->flags >> FLAG_SRKH_SHIFT) & 0x1) != 0) { in provision_fuses()
393 ret = prog_srkh(fuse_hdr, sfp_ccsr_regs); in provision_fuses()
401 if (((fuse_hdr->flags >> FLAG_OUID0_SHIFT) & FLAG_OUID_MASK) != 0) { in provision_fuses()
403 ret = prog_oemuid(fuse_hdr, sfp_ccsr_regs); in provision_fuses()
411 if (((fuse_hdr->flags >> FLAG_DCV0_SHIFT) & FLAG_DEBUG_MASK) != 0) { in provision_fuses()
413 ret = prog_debug(fuse_hdr, sfp_ccsr_regs); in provision_fuses()
421 if (((fuse_hdr->flags >> FLAG_OTPMK_SHIFT) & PROG_NO_OTPMK) != in provision_fuses()
424 ret = prog_otpmk(fuse_hdr, sfp_ccsr_regs); in provision_fuses()
433 if ((((fuse_hdr->flags >> FLAG_MC_SHIFT) & 0x1) != 0) || in provision_fuses()
434 (((fuse_hdr->flags >> FLAG_DBG_LVL_SHIFT) & 0x1) != 0)) { in provision_fuses()
436 ret = prog_ospr1(fuse_hdr, sfp_ccsr_regs); in provision_fuses()
444 if (((fuse_hdr->flags >> FLAG_SYSCFG_SHIFT) & 0x1) != 0) { in provision_fuses()
446 ret = prog_syscfg(fuse_hdr, sfp_ccsr_regs); in provision_fuses()