Home | History | Annotate | Download | only in bfin

Lines Matching refs:otp

1 /* Blackfin One-Time Programmable Memory (OTP) model
38 /* The actual OTP storage -- 0x200 pages, each page is 128bits.
65 bfin_otp_transfer (struct bfin_otp *otp, void *vdst, void *vsrc)
70 if (otp->ben & (1 << bidx))
75 bfin_otp_read_page (struct bfin_otp *otp, bu16 page)
77 bfin_otp_transfer (otp, &otp->data0, &otp->mem[page * 4]);
81 bfin_otp_write_page_val (struct bfin_otp *otp, bu16 page, bu64 val[2])
83 bfin_otp_transfer (otp, &otp->mem[page * 4], val);
86 bfin_otp_write_page_val2 (struct bfin_otp *otp, bu16 page, bu64 lo, bu64 hi)
89 bfin_otp_write_page_val (otp, page, val);
92 bfin_otp_write_page (struct bfin_otp *otp, bu16 page)
94 bfin_otp_write_page_val2 (otp, page, ((bu64)otp->data1 << 32) | otp->data0,
95 ((bu64)otp->data3 << 32) | otp->data2);
102 struct bfin_otp *otp = hw_data (me);
118 mmr_off = addr - otp->base;
119 valuep = (void *)((uintptr_t)otp + mmr_base() + mmr_off);
141 bfin_otp_write_page (otp, page);
145 bfin_otp_read_page (otp, page);
147 otp->status |= STATUS_DONE;
184 struct bfin_otp *otp = hw_data (me);
194 mmr_off = addr - otp->base;
195 valuep = (void *)((uintptr_t)otp + mmr_base() + mmr_off);
228 attach_bfin_otp_regs (struct hw *me, struct bfin_otp *otp)
252 otp->base = attach_address;
265 struct bfin_otp *otp;
269 otp = HW_ZALLOC (me, struct bfin_otp);
271 set_hw_data (me, otp);
276 attach_bfin_otp_regs (me, otp);
278 /* Initialize the OTP. */
279 otp->ben = 0xFFFF;
280 otp->timing = 0x00001485;
283 bfin_otp_write_page_val2 (otp, FPS00, (uintptr_t)otp, ~(uintptr_t)otp);
325 bfin_otp_write_page_val (otp, FPS03, (void *)part_str);