blob: 06f221e3ba3eb4041eb55f8e91e11a099fed71ff [file] [log] [blame]
Sridhar Parasuram6d3a6322015-09-30 22:00:14 -07001/* Copyright (c) 2014-2015 The Linux Foundation. All rights reserved.
Sridhar Parasurame4266f42014-10-23 20:11:09 -07002 *
3 * Redistribution and use in source and binary forms, with or without
4 * modification, are permitted provided that the following conditions are
5 * met:
6 * * Redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer.
8 * * Redistributions in binary form must reproduce the above
9 * copyright notice, this list of conditions and the following
10 * disclaimer in the documentation and/or other materials provided
11 * with the distribution.
12 * * Neither the name of The Linux Foundation nor the names of its
13 * contributors may be used to endorse or promote products derived
14 * from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29static inline void dump(const void *buff, int count)
30{
31 int i = 0;
32 printf("memory dump of %d bytes from address 0x%x\n",count, buff);
33 for (i = 0; i < count; i++) {
34 unsigned char ch = *(const unsigned char *) buff;
35 printf("0x%02X ", ch);
36 if ((i+1) % 16 == 0)
37 printf("\n");
38 buff = (const char *) buff + 1;
39 }
40 printf("\n");
41}
42
Sridhar Parasuram6d3a6322015-09-30 22:00:14 -070043bool swp_test();
Sridhar Parasurame4266f42014-10-23 20:11:09 -070044void rpmb_run_test();
45bool rpmb_test(struct ufs_dev *dev, uint16_t address, uint16_t rpmb_num_blocks);
46void dump_rpmb_data(struct rpmb_frame *result_frame);
47int verify_rpmb_frame(struct rpmb_frame *request_frame, struct rpmb_frame *result_frame, int type);