Lines Matching full:mmc
14 #include <mmc.h>
57 static int mmc_set_blockcount(struct mmc *mmc, unsigned int blockcount, in mmc_set_blockcount() argument
68 return mmc_send_cmd(mmc, &cmd, NULL); in mmc_set_blockcount()
70 static int mmc_rpmb_request(struct mmc *mmc, const void *s, in mmc_rpmb_request() argument
77 ret = mmc_set_blockcount(mmc, count, is_rel_write); in mmc_rpmb_request()
94 ret = mmc_send_cmd(mmc, &cmd, &data); in mmc_rpmb_request()
103 static int mmc_rpmb_response(struct mmc *mmc, struct s_rpmb *s, in mmc_rpmb_response() argument
110 ret = mmc_set_blockcount(mmc, cnt, false); in mmc_rpmb_response()
126 ret = mmc_send_cmd(mmc, &cmd, &data); in mmc_rpmb_response()
151 static int mmc_rpmb_status(struct mmc *mmc, unsigned short expected) in mmc_rpmb_status() argument
157 if (mmc_rpmb_request(mmc, rpmb_frame, 1, false)) in mmc_rpmb_status()
161 return mmc_rpmb_response(mmc, rpmb_frame, expected, 1); in mmc_rpmb_status()
207 int mmc_rpmb_get_counter(struct mmc *mmc, unsigned long *pcounter) in mmc_rpmb_get_counter() argument
215 if (mmc_rpmb_request(mmc, rpmb_frame, 1, false)) in mmc_rpmb_get_counter()
219 ret = mmc_rpmb_response(mmc, rpmb_frame, RPMB_RESP_WCOUNTER, 1); in mmc_rpmb_get_counter()
226 int mmc_rpmb_set_key(struct mmc *mmc, void *key) in mmc_rpmb_set_key() argument
234 if (mmc_rpmb_request(mmc, rpmb_frame, 1, true)) in mmc_rpmb_set_key()
238 return mmc_rpmb_status(mmc, RPMB_RESP_KEY); in mmc_rpmb_set_key()
240 int mmc_rpmb_read(struct mmc *mmc, void *addr, unsigned short blk, in mmc_rpmb_read() argument
258 if (mmc_rpmb_request(mmc, rpmb_frame, 1, false)) { in mmc_rpmb_read()
264 (mmc, in mmc_rpmb_read()
296 int mmc_rpmb_write(struct mmc *mmc, void *addr, unsigned short blk, in mmc_rpmb_write() argument
317 if (mmc_rpmb_get_counter(mmc, &wcount)) { in mmc_rpmb_write()
346 if (mmc_rpmb_request(mmc, rpmb_frame_data, cnt, true)) in mmc_rpmb_write()
349 if (mmc_rpmb_status(mmc, RPMB_RESP_WRITE_DATA)) in mmc_rpmb_write()
354 int read_counter(struct mmc *mmc, struct s_rpmb *requestpackets) in read_counter() argument
356 if (mmc_rpmb_request(mmc, requestpackets, 1, false)) in read_counter()
359 if (mmc_rpmb_response(mmc, requestpackets, RPMB_RESP_WCOUNTER, 1)) in read_counter()
365 int program_key(struct mmc *mmc, struct s_rpmb *requestpackets) in program_key() argument
367 if (mmc_rpmb_request(mmc, requestpackets, 1, true)) in program_key()
374 if (mmc_rpmb_request(mmc, requestpackets, 1, false)) in program_key()
377 return mmc_rpmb_response(mmc, requestpackets, RPMB_RESP_KEY, 1); in program_key()
380 int authenticated_read(struct mmc *mmc, in authenticated_read() argument
383 if (mmc_rpmb_request(mmc, requestpackets, 1, false)) in authenticated_read()
387 (mmc, requestpackets, RPMB_RESP_READ_DATA, block_count)) in authenticated_read()
393 int authenticated_write(struct mmc *mmc, struct s_rpmb *requestpackets) in authenticated_write() argument
395 if (mmc_rpmb_request(mmc, requestpackets, 1, true)) in authenticated_write()
402 if (mmc_rpmb_request(mmc, requestpackets, 1, false)) in authenticated_write()
405 return mmc_rpmb_response(mmc, requestpackets, RPMB_RESP_WRITE_DATA, 1); in authenticated_write()