Lines Matching refs:prog_address

553 static int _otp_prog_bit(u32 value, u32 prog_address, u32 bit_offset)  in _otp_prog_bit()  argument
557 if (prog_address % 2 == 0) { in _otp_prog_bit()
564 prog_address |= 1 << 15; in _otp_prog_bit()
570 return otp_prog(prog_address, prog_bit); in _otp_prog_bit()
573 static int otp_prog_dc_b(u32 value, u32 prog_address, u32 bit_offset) in otp_prog_dc_b() argument
580 ret = _otp_prog_bit(value, prog_address, bit_offset); in otp_prog_dc_b()
586 if (verify_bit(prog_address, bit_offset, value) != 0) { in otp_prog_dc_b()
588 ret = _otp_prog_bit(value, prog_address, bit_offset); in otp_prog_dc_b()
591 if (verify_bit(prog_address, bit_offset, value) != 0) { in otp_prog_dc_b()
608 static int otp_prog_dw(u32 value, u32 ignore, u32 prog_address) in otp_prog_dw() argument
617 if (prog_address % 2 == 0) { in otp_prog_dw()
624 prog_address |= 1 << 15; in otp_prog_dw()
630 ret = otp_prog(prog_address, prog_bit); in otp_prog_dw()
637 static int otp_prog_verify_2dw(u32 *data, u32 *buf, u32 *ignore_mask, u32 prog_address) in otp_prog_verify_2dw() argument
664 ret = otp_prog_dw(buf[0], ignore_mask[0], prog_address); in otp_prog_verify_2dw()
670 ret = otp_prog_dw(buf[1], ignore_mask[1], prog_address + 1); in otp_prog_verify_2dw()
677 if (verify_dw(prog_address, buf, ignore_mask, compare, 2) != 0) { in otp_prog_verify_2dw()
680 ret = otp_prog_dw(compare[0], ignore_mask[0], prog_address); in otp_prog_verify_2dw()
685 ret = otp_prog_dw(compare[1], ignore_mask[1], prog_address + 1); in otp_prog_verify_2dw()
689 if (verify_dw(prog_address, buf, ignore_mask, compare, 2) != 0) { in otp_prog_verify_2dw()
809 u32 prog_address; in otp_prog_strap_b() local
820 prog_address = 0x800; in otp_prog_strap_b()
823 prog_address |= ((otpstrap[bit_offset].writeable_option * 2 + 16) / 8) * 0x200; in otp_prog_strap_b()
824 prog_address |= ((otpstrap[bit_offset].writeable_option * 2 + 16) % 8) * 0x2; in otp_prog_strap_b()
828 prog_address |= ((otpstrap[bit_offset].writeable_option * 2 + 17) / 8) * 0x200; in otp_prog_strap_b()
829 prog_address |= ((otpstrap[bit_offset].writeable_option * 2 + 17) % 8) * 0x2; in otp_prog_strap_b()
832 return otp_prog_dc_b(1, prog_address, offset); in otp_prog_strap_b()
1566 u32 prog_address; in otp_prog_strap() local
1578 prog_address = 0x800; in otp_prog_strap()
1584 prog_address |= ((otpstrap[i].writeable_option * 2 + 16) / 8) * 0x200; in otp_prog_strap()
1585 prog_address |= ((otpstrap[i].writeable_option * 2 + 16) % 8) * 0x2; in otp_prog_strap()
1592 prog_address |= ((otpstrap[i].writeable_option * 2 + 17) / 8) * 0x200; in otp_prog_strap()
1593 prog_address |= ((otpstrap[i].writeable_option * 2 + 17) % 8) * 0x2; in otp_prog_strap()
1613 ret = otp_prog_dc_b(1, prog_address, offset); in otp_prog_strap()
1619 prog_address = 0x800; in otp_prog_strap()
1621 prog_address |= 0x60c; in otp_prog_strap()
1623 prog_address |= 0x60e; in otp_prog_strap()
1625 ret = otp_prog_dc_b(1, prog_address, offset); in otp_prog_strap()
1640 u32 prog_address; in otp_prog_conf() local
1653 prog_address = 0x800; in otp_prog_conf()
1654 prog_address |= (i / 8) * 0x200; in otp_prog_conf()
1655 prog_address |= (i % 8) * 0x2; in otp_prog_conf()
1662 ret = otp_prog_dw(conf[i], conf_ignore[i], prog_address); in otp_prog_conf()
1668 if (verify_dw(prog_address, &conf[i], &conf_ignore[i], compare, 1) != 0) { in otp_prog_conf()
1670 ret = otp_prog_dw(compare[0], conf_ignore[i], prog_address); in otp_prog_conf()
1673 if (verify_dw(prog_address, &conf[i], &conf_ignore[i], compare, 1) != 0) { in otp_prog_conf()
1702 u32 prog_address; in otp_prog_scu_protect() local
1715 prog_address = 0xe08 + i * 2; in otp_prog_scu_protect()
1722 ret = otp_prog_dw(OTPSCU[i], OTPSCU_IGNORE[i], prog_address); in otp_prog_scu_protect()
1727 if (verify_dw(prog_address, &OTPSCU[i], &OTPSCU_IGNORE[i], compare, 1) != 0) { in otp_prog_scu_protect()
1729 ret = otp_prog_dw(compare[0], OTPSCU_IGNORE[i], prog_address); in otp_prog_scu_protect()
1732 if (verify_dw(prog_address, &OTPSCU[i], &OTPSCU_IGNORE[i], compare, 1) != 0) { in otp_prog_scu_protect()
2157 u32 prog_address = 0; in otp_prog_bit() local
2166 prog_address = 0x800; in otp_prog_bit()
2167 prog_address |= (otp_dw_offset / 8) * 0x200; in otp_prog_bit()
2168 prog_address |= (otp_dw_offset % 8) * 0x2; in otp_prog_bit()
2183 prog_address = otp_dw_offset; in otp_prog_bit()
2238 ret = otp_prog_dc_b(value, prog_address, bit_offset); in otp_prog_bit()
3045 u32 prog_address; in do_otpprotect() local
3062 prog_address = 0xe0c; in do_otpprotect()
3065 prog_address = 0xe0e; in do_otpprotect()
3084 if (verify_bit(prog_address, bit_offset, 1) == 0) { in do_otpprotect()
3089 ret = otp_prog_dc_b(1, prog_address, bit_offset); in do_otpprotect()
3106 u32 prog_address; in do_otp_scuprotect() local
3123 prog_address = 0xe08; in do_otp_scuprotect()
3126 prog_address = 0xe0a; in do_otp_scuprotect()
3147 if (verify_bit(prog_address, bit_offset, 1) == 0) { in do_otp_scuprotect()
3152 ret = otp_prog_dc_b(1, prog_address, bit_offset); in do_otp_scuprotect()