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