You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
kernel_samsung_sm7125/drivers/spmi/simulator/pm8150b-sim.c

1514 lines
51 KiB

/*
* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <linux/err.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include "spmi-sim.h"
struct pmic_sim {
struct spmi_sim *spmi_sim;
u32 base_addr;
};
static const struct spmi_sim_register_init pm8150b_regs[] = {
{0x00101, 0x00, SPMI_SIM_PERM_R},
{0x00102, 0x00, SPMI_SIM_PERM_R},
{0x00103, 0x01, SPMI_SIM_PERM_R},
{0x00104, 0x51, SPMI_SIM_PERM_R},
{0x00105, 0x20, SPMI_SIM_PERM_R},
{0x00400, 0x02, SPMI_SIM_PERM_R},
{0x00401, 0x00, SPMI_SIM_PERM_R},
{0x00404, 0x0B, SPMI_SIM_PERM_R},
{0x00405, 0x03, SPMI_SIM_PERM_R},
{0x00408, 0x00, SPMI_SIM_PERM_R},
{0x0040B, 0x01, SPMI_SIM_PERM_R},
{0x00443, 0x80, SPMI_SIM_PERM_RW},
{0x00444, 0x3F, SPMI_SIM_PERM_RW},
{0x00456, 0x00, SPMI_SIM_PERM_W},
{0x004D9, 0x01, SPMI_SIM_PERM_RW},
{0x004DA, 0x07, SPMI_SIM_PERM_RW},
{0x00500, 0x01, SPMI_SIM_PERM_R},
{0x00501, 0x01, SPMI_SIM_PERM_R},
{0x00504, 0x0A, SPMI_SIM_PERM_R},
{0x00505, 0x01, SPMI_SIM_PERM_R},
{0x00508, 0x00, SPMI_SIM_PERM_R},
{0x00509, 0x00, SPMI_SIM_PERM_R},
{0x00540, 0x00, SPMI_SIM_PERM_W},
{0x00572, 0x00, SPMI_SIM_PERM_R},
{0x00573, 0x00, SPMI_SIM_PERM_R},
{0x00574, 0x00, SPMI_SIM_PERM_R},
{0x00575, 0x00, SPMI_SIM_PERM_R},
{0x00576, 0x00, SPMI_SIM_PERM_W},
{0x00578, 0x00, SPMI_SIM_PERM_R},
{0x00579, 0x00, SPMI_SIM_PERM_R},
{0x0057A, 0x00, SPMI_SIM_PERM_R},
{0x0057B, 0x00, SPMI_SIM_PERM_R},
{0x0057C, 0x00, SPMI_SIM_PERM_W},
{0x005D9, 0x01, SPMI_SIM_PERM_RW},
{0x005DA, 0x07, SPMI_SIM_PERM_RW},
{0x00600, 0x00, SPMI_SIM_PERM_R},
{0x00601, 0x02, SPMI_SIM_PERM_R},
{0x00602, 0x00, SPMI_SIM_PERM_R},
{0x00603, 0x00, SPMI_SIM_PERM_R},
{0x00604, 0x0B, SPMI_SIM_PERM_R},
{0x00605, 0x05, SPMI_SIM_PERM_R},
{0x00608, 0x00, SPMI_SIM_PERM_R},
{0x0060B, 0x00, SPMI_SIM_PERM_R},
{0x0060C, 0x00, SPMI_SIM_PERM_R},
{0x0060D, 0x00, SPMI_SIM_PERM_R},
{0x0060E, 0x00, SPMI_SIM_PERM_R},
{0x00610, 0x00, SPMI_SIM_PERM_R},
{0x00611, 0x03, SPMI_SIM_PERM_R},
{0x00612, 0x03, SPMI_SIM_PERM_R},
{0x00613, 0x00, SPMI_SIM_PERM_R},
{0x00614, 0x00, SPMI_SIM_PERM_W},
{0x00618, 0x00, SPMI_SIM_PERM_R},
{0x00619, 0x00, SPMI_SIM_PERM_R},
{0x00640, 0x01, SPMI_SIM_PERM_RW},
{0x00645, 0x80, SPMI_SIM_PERM_RW},
{0x00650, 0x02, SPMI_SIM_PERM_RW},
{0x00651, 0x03, SPMI_SIM_PERM_RW},
{0x00652, 0x0E, SPMI_SIM_PERM_RW},
{0x00653, 0x0F, SPMI_SIM_PERM_RW},
{0x00654, 0x10, SPMI_SIM_PERM_RW},
{0x006DA, 0x01, SPMI_SIM_PERM_RW},
{0x00800, 0x01, SPMI_SIM_PERM_R},
{0x00801, 0x01, SPMI_SIM_PERM_R},
{0x00802, 0x10, SPMI_SIM_PERM_R},
{0x00803, 0x00, SPMI_SIM_PERM_R},
{0x00804, 0x01, SPMI_SIM_PERM_R},
{0x00805, 0x04, SPMI_SIM_PERM_R},
{0x00814, 0x00, SPMI_SIM_PERM_W},
{0x00840, 0x0F, SPMI_SIM_PERM_RW},
{0x00841, 0x07, SPMI_SIM_PERM_RW},
{0x00842, 0x04, SPMI_SIM_PERM_RW},
{0x00844, 0x0F, SPMI_SIM_PERM_RW},
{0x00845, 0x07, SPMI_SIM_PERM_RW},
{0x00846, 0x04, SPMI_SIM_PERM_RW},
{0x00848, 0x0F, SPMI_SIM_PERM_RW},
{0x00849, 0x07, SPMI_SIM_PERM_RW},
{0x0084A, 0x04, SPMI_SIM_PERM_RW},
{0x0084C, 0x0F, SPMI_SIM_PERM_RW},
{0x0084D, 0x07, SPMI_SIM_PERM_RW},
{0x0084E, 0x04, SPMI_SIM_PERM_RW},
{0x00850, 0x0F, SPMI_SIM_PERM_RW},
{0x00851, 0x07, SPMI_SIM_PERM_RW},
{0x00852, 0x04, SPMI_SIM_PERM_RW},
{0x00854, 0x1F, SPMI_SIM_PERM_RW},
{0x00855, 0x01, SPMI_SIM_PERM_RW},
{0x00856, 0x06, SPMI_SIM_PERM_RW},
{0x00858, 0x00, SPMI_SIM_PERM_W},
{0x0085A, 0x04, SPMI_SIM_PERM_RW},
{0x0085B, 0x80, SPMI_SIM_PERM_RW},
{0x00864, 0x00, SPMI_SIM_PERM_W},
{0x00870, 0x01, SPMI_SIM_PERM_RW},
{0x00871, 0x05, SPMI_SIM_PERM_RW},
{0x00875, 0x04, SPMI_SIM_PERM_RW},
{0x00880, 0x40, SPMI_SIM_PERM_RW},
{0x00884, 0x52, SPMI_SIM_PERM_RW},
{0x00886, 0x31, SPMI_SIM_PERM_RW},
{0x00888, 0x03, SPMI_SIM_PERM_RW},
{0x00892, 0x00, SPMI_SIM_PERM_W},
{0x00894, 0x45, SPMI_SIM_PERM_RW},
{0x00898, 0x06, SPMI_SIM_PERM_W},
{0x008D9, 0x01, SPMI_SIM_PERM_RW},
{0x008DA, 0x0F, SPMI_SIM_PERM_RW},
{0x008F0, 0x00, SPMI_SIM_PERM_R},
{0x00900, 0x00, SPMI_SIM_PERM_R},
{0x00901, 0x00, SPMI_SIM_PERM_R},
{0x00902, 0x00, SPMI_SIM_PERM_R},
{0x00903, 0x00, SPMI_SIM_PERM_R},
{0x00904, 0x14, SPMI_SIM_PERM_R},
{0x00905, 0x29, SPMI_SIM_PERM_R},
{0x0095A, 0xF0, SPMI_SIM_PERM_RW},
{0x0095B, 0xF0, SPMI_SIM_PERM_RW},
{0x0095C, 0xF0, SPMI_SIM_PERM_RW},
{0x009D9, 0x01, SPMI_SIM_PERM_RW},
{0x009DA, 0x07, SPMI_SIM_PERM_RW},
{0x009F0, 0x02, SPMI_SIM_PERM_R},
{0x01004, 0x02, SPMI_SIM_PERM_R},
{0x01005, 0x80, SPMI_SIM_PERM_R},
{0x010DA, 0x07, SPMI_SIM_PERM_RW},
{0x010DF, 0x02, SPMI_SIM_PERM_RW},
{0x01011, 0xFF, SPMI_SIM_PERM_R},
{0x01012, 0xFF, SPMI_SIM_PERM_R},
{0x01013, 0xC0, SPMI_SIM_PERM_RW},
{0x01014, 0x00, SPMI_SIM_PERM_W},
{0x01008, 0x00, SPMI_SIM_PERM_R},
{0x01041, 0x00, SPMI_SIM_PERM_W},
{0x01042, 0x01, SPMI_SIM_PERM_RW},
{0x01044, 0x00, SPMI_SIM_PERM_W},
{0x01050, 0x38, SPMI_SIM_PERM_RW},
{0x01051, 0x2D, SPMI_SIM_PERM_RW},
{0x01052, 0x3F, SPMI_SIM_PERM_RW},
{0x01053, 0x60, SPMI_SIM_PERM_RW},
{0x01054, 0x7F, SPMI_SIM_PERM_RW},
{0x01056, 0x01, SPMI_SIM_PERM_RW},
{0x01057, 0x01, SPMI_SIM_PERM_RW},
{0x01058, 0x03, SPMI_SIM_PERM_RW},
{0x01060, 0x04, SPMI_SIM_PERM_RW},
{0x01061, 0x28, SPMI_SIM_PERM_RW},
{0x01062, 0x04, SPMI_SIM_PERM_RW},
{0x01063, 0x02, SPMI_SIM_PERM_RW},
{0x01065, 0x07, SPMI_SIM_PERM_RW},
{0x01066, 0xFF, SPMI_SIM_PERM_RW},
{0x0106B, 0x0A, SPMI_SIM_PERM_RW},
{0x0106C, 0x0A, SPMI_SIM_PERM_RW},
{0x0106D, 0x0A, SPMI_SIM_PERM_RW},
{0x01070, 0x3C, SPMI_SIM_PERM_RW},
{0x01072, 0x01, SPMI_SIM_PERM_RW},
{0x01076, 0xFF, SPMI_SIM_PERM_RW},
{0x01077, 0x12, SPMI_SIM_PERM_RW},
{0x01078, 0x0F, SPMI_SIM_PERM_RW},
{0x01079, 0x0F, SPMI_SIM_PERM_RW},
{0x0107C, 0x10, SPMI_SIM_PERM_RW},
{0x01080, 0x08, SPMI_SIM_PERM_RW},
{0x01081, 0x66, SPMI_SIM_PERM_RW},
{0x01086, 0x0E, SPMI_SIM_PERM_RW},
{0x01090, 0x1F, SPMI_SIM_PERM_RW},
{0x01091, 0x0E, SPMI_SIM_PERM_RW},
{0x01092, 0x28, SPMI_SIM_PERM_RW},
{0x01093, 0x28, SPMI_SIM_PERM_RW},
{0x010A0, 0x03, SPMI_SIM_PERM_RW},
{0x010C0, 0x0C, SPMI_SIM_PERM_RW},
{0x010F0, 0x0D, SPMI_SIM_PERM_R},
{0x010F2, 0x40, SPMI_SIM_PERM_RW},
{0x010F3, 0x40, SPMI_SIM_PERM_RW},
{0x010F5, 0x20, SPMI_SIM_PERM_RW},
{0x010F6, 0x20, SPMI_SIM_PERM_RW},
{0x010F8, 0x01, SPMI_SIM_PERM_RW},
{0x010F9, 0x10, SPMI_SIM_PERM_RW},
{0x010FA, 0x10, SPMI_SIM_PERM_RW},
{0x010FC, 0x40, SPMI_SIM_PERM_RW},
{0x010FD, 0x20, SPMI_SIM_PERM_RW},
{0x01104, 0x02, SPMI_SIM_PERM_R},
{0x01105, 0x81, SPMI_SIM_PERM_R},
{0x011DA, 0x07, SPMI_SIM_PERM_RW},
{0x011DF, 0x02, SPMI_SIM_PERM_RW},
{0x01111, 0xFF, SPMI_SIM_PERM_R},
{0x01112, 0xFF, SPMI_SIM_PERM_R},
{0x01113, 0xFF, SPMI_SIM_PERM_RW},
{0x01114, 0x00, SPMI_SIM_PERM_W},
{0x01150, 0x08, SPMI_SIM_PERM_RW},
{0x01153, 0x22, SPMI_SIM_PERM_RW},
{0x01156, 0x3F, SPMI_SIM_PERM_RW},
{0x01180, 0x8B, SPMI_SIM_PERM_RW},
{0x01183, 0x03, SPMI_SIM_PERM_RW},
{0x01186, 0x02, SPMI_SIM_PERM_RW},
{0x01189, 0x01, SPMI_SIM_PERM_RW},
{0x011C2, 0x8C, SPMI_SIM_PERM_RW},
{0x011C3, 0x55, SPMI_SIM_PERM_RW},
{0x011C4, 0x77, SPMI_SIM_PERM_RW},
{0x011C5, 0x94, SPMI_SIM_PERM_RW},
{0x011C6, 0x60, SPMI_SIM_PERM_RW},
{0x011C7, 0x08, SPMI_SIM_PERM_RW},
{0x011C8, 0x1F, SPMI_SIM_PERM_RW},
{0x011C9, 0x01, SPMI_SIM_PERM_RW},
{0x011CC, 0xF1, SPMI_SIM_PERM_RW},
{0x011CD, 0xB2, SPMI_SIM_PERM_RW},
{0x011F0, 0x0B, SPMI_SIM_PERM_R},
{0x011F1, 0x20, SPMI_SIM_PERM_RW},
{0x01204, 0x02, SPMI_SIM_PERM_R},
{0x01205, 0x82, SPMI_SIM_PERM_R},
{0x012DA, 0x07, SPMI_SIM_PERM_RW},
{0x012DF, 0x02, SPMI_SIM_PERM_RW},
{0x01211, 0xFF, SPMI_SIM_PERM_R},
{0x01212, 0xFF, SPMI_SIM_PERM_R},
{0x01213, 0xFE, SPMI_SIM_PERM_RW},
{0x01214, 0x00, SPMI_SIM_PERM_W},
{0x01242, 0x00, SPMI_SIM_PERM_W},
{0x01243, 0x00, SPMI_SIM_PERM_W},
{0x01260, 0x01, SPMI_SIM_PERM_RW},
{0x01261, 0x06, SPMI_SIM_PERM_RW},
{0x01263, 0x04, SPMI_SIM_PERM_RW},
{0x01270, 0x01, SPMI_SIM_PERM_RW},
{0x01283, 0xFF, SPMI_SIM_PERM_RW},
{0x01284, 0x37, SPMI_SIM_PERM_RW},
{0x01285, 0x02, SPMI_SIM_PERM_RW},
{0x01289, 0x08, SPMI_SIM_PERM_RW},
{0x0128C, 0x20, SPMI_SIM_PERM_RW},
{0x0128E, 0x0A, SPMI_SIM_PERM_RW},
{0x01291, 0xA2, SPMI_SIM_PERM_RW},
{0x01292, 0x01, SPMI_SIM_PERM_RW},
{0x012F0, 0x02, SPMI_SIM_PERM_R},
{0x01304, 0x02, SPMI_SIM_PERM_R},
{0x01305, 0x83, SPMI_SIM_PERM_R},
{0x013DA, 0x07, SPMI_SIM_PERM_RW},
{0x013DF, 0x02, SPMI_SIM_PERM_RW},
{0x01311, 0xFF, SPMI_SIM_PERM_R},
{0x01312, 0xFF, SPMI_SIM_PERM_R},
{0x01313, 0x3F, SPMI_SIM_PERM_RW},
{0x01314, 0x00, SPMI_SIM_PERM_W},
{0x01341, 0x00, SPMI_SIM_PERM_W},
{0x01343, 0x00, SPMI_SIM_PERM_W},
{0x01358, 0xC0, SPMI_SIM_PERM_RW},
{0x0135B, 0xA3, SPMI_SIM_PERM_RW},
{0x01360, 0x07, SPMI_SIM_PERM_RW},
{0x01362, 0x1C, SPMI_SIM_PERM_RW},
{0x01363, 0x38, SPMI_SIM_PERM_RW},
{0x01364, 0x11, SPMI_SIM_PERM_RW},
{0x01365, 0xA5, SPMI_SIM_PERM_RW},
{0x01366, 0x02, SPMI_SIM_PERM_RW},
{0x01369, 0x7F, SPMI_SIM_PERM_RW},
{0x01370, 0x1E, SPMI_SIM_PERM_RW},
{0x01380, 0xCC, SPMI_SIM_PERM_RW},
{0x013F0, 0x0E, SPMI_SIM_PERM_R},
{0x01404, 0x02, SPMI_SIM_PERM_R},
{0x01405, 0x84, SPMI_SIM_PERM_R},
{0x014DA, 0x07, SPMI_SIM_PERM_RW},
{0x014DF, 0x01, SPMI_SIM_PERM_RW},
{0x01411, 0xFF, SPMI_SIM_PERM_R},
{0x01412, 0xFF, SPMI_SIM_PERM_R},
{0x01413, 0xFF, SPMI_SIM_PERM_RW},
{0x01414, 0x00, SPMI_SIM_PERM_W},
{0x01460, 0x0C, SPMI_SIM_PERM_RW},
{0x01465, 0xA0, SPMI_SIM_PERM_RW},
{0x014F0, 0x00, SPMI_SIM_PERM_R},
{0x01504, 0x02, SPMI_SIM_PERM_R},
{0x01505, 0x85, SPMI_SIM_PERM_R},
{0x015DA, 0x07, SPMI_SIM_PERM_RW},
{0x015DF, 0x02, SPMI_SIM_PERM_RW},
{0x01511, 0xFF, SPMI_SIM_PERM_R},
{0x01512, 0xFF, SPMI_SIM_PERM_R},
{0x01513, 0x4A, SPMI_SIM_PERM_RW},
{0x01514, 0x00, SPMI_SIM_PERM_W},
{0x01542, 0x00, SPMI_SIM_PERM_W},
{0x01544, 0x02, SPMI_SIM_PERM_RW},
{0x0154A, 0x1B, SPMI_SIM_PERM_RW},
{0x0154E, 0x03, SPMI_SIM_PERM_RW},
{0x01550, 0x02, SPMI_SIM_PERM_RW},
{0x01552, 0x01, SPMI_SIM_PERM_RW},
{0x01556, 0x01, SPMI_SIM_PERM_RW},
{0x01558, 0x01, SPMI_SIM_PERM_RW},
{0x0155A, 0x07, SPMI_SIM_PERM_RW},
{0x0155E, 0xFF, SPMI_SIM_PERM_RW},
{0x01560, 0x5F, SPMI_SIM_PERM_RW},
{0x01564, 0x03, SPMI_SIM_PERM_RW},
{0x01568, 0x12, SPMI_SIM_PERM_RW},
{0x015F0, 0x07, SPMI_SIM_PERM_R},
{0x01600, 0x00, SPMI_SIM_PERM_R},
{0x01601, 0x00, SPMI_SIM_PERM_R},
{0x01602, 0x00, SPMI_SIM_PERM_R},
{0x01603, 0x00, SPMI_SIM_PERM_R},
{0x01604, 0x02, SPMI_SIM_PERM_R},
{0x01605, 0x86, SPMI_SIM_PERM_R},
{0x016DA, 0x07, SPMI_SIM_PERM_RW},
{0x016DF, 0x02, SPMI_SIM_PERM_RW},
{0x01611, 0xFF, SPMI_SIM_PERM_R},
{0x01612, 0xFF, SPMI_SIM_PERM_R},
{0x01613, 0xDC, SPMI_SIM_PERM_RW},
{0x01614, 0x00, SPMI_SIM_PERM_W},
{0x01643, 0x00, SPMI_SIM_PERM_W},
{0x01644, 0x00, SPMI_SIM_PERM_W},
{0x01645, 0x01, SPMI_SIM_PERM_RW},
{0x01649, 0x04, SPMI_SIM_PERM_RW},
{0x0164F, 0x01, SPMI_SIM_PERM_RW},
{0x01660, 0x0C, SPMI_SIM_PERM_RW},
{0x01661, 0x02, SPMI_SIM_PERM_RW},
{0x01670, 0x37, SPMI_SIM_PERM_RW},
{0x01690, 0x02, SPMI_SIM_PERM_RW},
{0x01694, 0x10, SPMI_SIM_PERM_RW},
{0x016F0, 0x04, SPMI_SIM_PERM_R},
{0x01800, 0x00, SPMI_SIM_PERM_R},
{0x01801, 0x01, SPMI_SIM_PERM_R},
{0x01804, 0x1D, SPMI_SIM_PERM_R},
{0x01805, 0x1B, SPMI_SIM_PERM_R},
{0x01846, 0x01, SPMI_SIM_PERM_RW},
{0x01850, 0x08, SPMI_SIM_PERM_RW},
{0x01851, 0x02, SPMI_SIM_PERM_RW},
{0x018C0, 0x11, SPMI_SIM_PERM_RW},
{0x018C1, 0x80, SPMI_SIM_PERM_RW},
{0x018D9, 0x01, SPMI_SIM_PERM_RW},
{0x018DA, 0x0F, SPMI_SIM_PERM_RW},
{0x01900, 0x00, SPMI_SIM_PERM_R},
{0x01901, 0x00, SPMI_SIM_PERM_R},
{0x01904, 0x02, SPMI_SIM_PERM_R},
{0x01905, 0x69, SPMI_SIM_PERM_R},
{0x01920, 0x10, SPMI_SIM_PERM_R},
{0x01921, 0x50, SPMI_SIM_PERM_R},
{0x01922, 0x24, SPMI_SIM_PERM_R},
{0x01923, 0x10, SPMI_SIM_PERM_R},
{0x01924, 0x60, SPMI_SIM_PERM_R},
{0x01925, 0x38, SPMI_SIM_PERM_R},
{0x01926, 0x10, SPMI_SIM_PERM_R},
{0x01927, 0x70, SPMI_SIM_PERM_R},
{0x01928, 0x0C, SPMI_SIM_PERM_R},
{0x01929, 0x10, SPMI_SIM_PERM_R},
{0x0192A, 0x74, SPMI_SIM_PERM_R},
{0x0192B, 0x38, SPMI_SIM_PERM_R},
{0x0192C, 0x10, SPMI_SIM_PERM_R},
{0x0192D, 0x84, SPMI_SIM_PERM_R},
{0x0192E, 0x0C, SPMI_SIM_PERM_R},
{0x0192F, 0x10, SPMI_SIM_PERM_R},
{0x01930, 0x90, SPMI_SIM_PERM_R},
{0x01931, 0x4C, SPMI_SIM_PERM_R},
{0x01932, 0x10, SPMI_SIM_PERM_R},
{0x01933, 0xB0, SPMI_SIM_PERM_R},
{0x01934, 0x44, SPMI_SIM_PERM_R},
{0x01935, 0x11, SPMI_SIM_PERM_R},
{0x01936, 0x51, SPMI_SIM_PERM_R},
{0x01937, 0x1C, SPMI_SIM_PERM_R},
{0x01938, 0x11, SPMI_SIM_PERM_R},
{0x01939, 0x80, SPMI_SIM_PERM_R},
{0x0193A, 0x1C, SPMI_SIM_PERM_R},
{0x0193B, 0x11, SPMI_SIM_PERM_R},
{0x0193C, 0x89, SPMI_SIM_PERM_R},
{0x0193D, 0x14, SPMI_SIM_PERM_R},
{0x0193E, 0x11, SPMI_SIM_PERM_R},
{0x0193F, 0xC2, SPMI_SIM_PERM_R},
{0x01940, 0x30, SPMI_SIM_PERM_R},
{0x01941, 0x12, SPMI_SIM_PERM_R},
{0x01942, 0x60, SPMI_SIM_PERM_R},
{0x01943, 0x10, SPMI_SIM_PERM_R},
{0x01944, 0x12, SPMI_SIM_PERM_R},
{0x01945, 0x70, SPMI_SIM_PERM_R},
{0x01946, 0x08, SPMI_SIM_PERM_R},
{0x01947, 0x12, SPMI_SIM_PERM_R},
{0x01948, 0x80, SPMI_SIM_PERM_R},
{0x01949, 0x08, SPMI_SIM_PERM_R},
{0x0194A, 0x12, SPMI_SIM_PERM_R},
{0x0194B, 0xC0, SPMI_SIM_PERM_R},
{0x0194C, 0x04, SPMI_SIM_PERM_R},
{0x0194D, 0x13, SPMI_SIM_PERM_R},
{0x0194E, 0x58, SPMI_SIM_PERM_R},
{0x0194F, 0x04, SPMI_SIM_PERM_R},
{0x01950, 0x13, SPMI_SIM_PERM_R},
{0x01951, 0x5B, SPMI_SIM_PERM_R},
{0x01952, 0x04, SPMI_SIM_PERM_R},
{0x01953, 0x13, SPMI_SIM_PERM_R},
{0x01954, 0x60, SPMI_SIM_PERM_R},
{0x01955, 0x1C, SPMI_SIM_PERM_R},
{0x01956, 0x13, SPMI_SIM_PERM_R},
{0x01957, 0x69, SPMI_SIM_PERM_R},
{0x01958, 0x04, SPMI_SIM_PERM_R},
{0x01959, 0x13, SPMI_SIM_PERM_R},
{0x0195A, 0x70, SPMI_SIM_PERM_R},
{0x0195B, 0x04, SPMI_SIM_PERM_R},
{0x0195C, 0x13, SPMI_SIM_PERM_R},
{0x0195D, 0x80, SPMI_SIM_PERM_R},
{0x0195E, 0x14, SPMI_SIM_PERM_R},
{0x0195F, 0x13, SPMI_SIM_PERM_R},
{0x01960, 0xC0, SPMI_SIM_PERM_R},
{0x01961, 0x10, SPMI_SIM_PERM_R},
{0x01962, 0x14, SPMI_SIM_PERM_R},
{0x01963, 0x60, SPMI_SIM_PERM_R},
{0x01964, 0x08, SPMI_SIM_PERM_R},
{0x01965, 0x14, SPMI_SIM_PERM_R},
{0x01966, 0x65, SPMI_SIM_PERM_R},
{0x01967, 0x08, SPMI_SIM_PERM_R},
{0x01968, 0x15, SPMI_SIM_PERM_R},
{0x01969, 0x44, SPMI_SIM_PERM_R},
{0x0196A, 0x04, SPMI_SIM_PERM_R},
{0x0196B, 0x15, SPMI_SIM_PERM_R},
{0x0196C, 0x46, SPMI_SIM_PERM_R},
{0x0196D, 0x04, SPMI_SIM_PERM_R},
{0x0196E, 0x15, SPMI_SIM_PERM_R},
{0x0196F, 0x48, SPMI_SIM_PERM_R},
{0x01970, 0x04, SPMI_SIM_PERM_R},
{0x01971, 0x15, SPMI_SIM_PERM_R},
{0x01972, 0x4A, SPMI_SIM_PERM_R},
{0x01973, 0x04, SPMI_SIM_PERM_R},
{0x01974, 0x15, SPMI_SIM_PERM_R},
{0x01975, 0x4C, SPMI_SIM_PERM_R},
{0x01976, 0x04, SPMI_SIM_PERM_R},
{0x01977, 0x15, SPMI_SIM_PERM_R},
{0x01978, 0x4E, SPMI_SIM_PERM_R},
{0x01979, 0x04, SPMI_SIM_PERM_R},
{0x0197A, 0x15, SPMI_SIM_PERM_R},
{0x0197B, 0x50, SPMI_SIM_PERM_R},
{0x0197C, 0x04, SPMI_SIM_PERM_R},
{0x0197D, 0x15, SPMI_SIM_PERM_R},
{0x0197E, 0x52, SPMI_SIM_PERM_R},
{0x0197F, 0x04, SPMI_SIM_PERM_R},
{0x01980, 0x15, SPMI_SIM_PERM_R},
{0x01981, 0x54, SPMI_SIM_PERM_R},
{0x01982, 0x04, SPMI_SIM_PERM_R},
{0x01983, 0x15, SPMI_SIM_PERM_R},
{0x01984, 0x56, SPMI_SIM_PERM_R},
{0x01985, 0x0C, SPMI_SIM_PERM_R},
{0x01986, 0x15, SPMI_SIM_PERM_R},
{0x01987, 0x5A, SPMI_SIM_PERM_R},
{0x01988, 0x04, SPMI_SIM_PERM_R},
{0x01989, 0x15, SPMI_SIM_PERM_R},
{0x0198A, 0x5C, SPMI_SIM_PERM_R},
{0x0198B, 0x04, SPMI_SIM_PERM_R},
{0x0198C, 0x15, SPMI_SIM_PERM_R},
{0x0198D, 0x5E, SPMI_SIM_PERM_R},
{0x0198E, 0x04, SPMI_SIM_PERM_R},
{0x0198F, 0x15, SPMI_SIM_PERM_R},
{0x01990, 0x60, SPMI_SIM_PERM_R},
{0x01991, 0x04, SPMI_SIM_PERM_R},
{0x01992, 0x15, SPMI_SIM_PERM_R},
{0x01993, 0x62, SPMI_SIM_PERM_R},
{0x01994, 0x04, SPMI_SIM_PERM_R},
{0x01995, 0x15, SPMI_SIM_PERM_R},
{0x01996, 0x64, SPMI_SIM_PERM_R},
{0x01997, 0x04, SPMI_SIM_PERM_R},
{0x01998, 0x15, SPMI_SIM_PERM_R},
{0x01999, 0x68, SPMI_SIM_PERM_R},
{0x0199A, 0x04, SPMI_SIM_PERM_R},
{0x0199B, 0x15, SPMI_SIM_PERM_R},
{0x0199C, 0x6A, SPMI_SIM_PERM_R},
{0x0199D, 0x04, SPMI_SIM_PERM_R},
{0x0199E, 0x15, SPMI_SIM_PERM_R},
{0x0199F, 0x6C, SPMI_SIM_PERM_R},
{0x019A0, 0x04, SPMI_SIM_PERM_R},
{0x019A1, 0x15, SPMI_SIM_PERM_R},
{0x019A2, 0x6E, SPMI_SIM_PERM_R},
{0x019A3, 0x04, SPMI_SIM_PERM_R},
{0x019A4, 0x15, SPMI_SIM_PERM_R},
{0x019A5, 0x70, SPMI_SIM_PERM_R},
{0x019A6, 0x04, SPMI_SIM_PERM_R},
{0x019A7, 0x15, SPMI_SIM_PERM_R},
{0x019A8, 0x72, SPMI_SIM_PERM_R},
{0x019A9, 0x04, SPMI_SIM_PERM_R},
{0x019AA, 0x16, SPMI_SIM_PERM_R},
{0x019AB, 0x51, SPMI_SIM_PERM_R},
{0x019AC, 0x04, SPMI_SIM_PERM_R},
{0x019AD, 0x16, SPMI_SIM_PERM_R},
{0x019AE, 0x53, SPMI_SIM_PERM_R},
{0x019AF, 0x04, SPMI_SIM_PERM_R},
{0x019B0, 0x16, SPMI_SIM_PERM_R},
{0x019B1, 0x55, SPMI_SIM_PERM_R},
{0x019B2, 0x0C, SPMI_SIM_PERM_R},
{0x019B3, 0x16, SPMI_SIM_PERM_R},
{0x019B4, 0x60, SPMI_SIM_PERM_R},
{0x019B5, 0x0C, SPMI_SIM_PERM_R},
{0x019B6, 0x16, SPMI_SIM_PERM_R},
{0x019B7, 0x70, SPMI_SIM_PERM_R},
{0x019B8, 0x28, SPMI_SIM_PERM_R},
{0x019B9, 0x16, SPMI_SIM_PERM_R},
{0x019BA, 0x90, SPMI_SIM_PERM_R},
{0x019BB, 0x04, SPMI_SIM_PERM_R},
{0x019BC, 0x16, SPMI_SIM_PERM_R},
{0x019BD, 0x92, SPMI_SIM_PERM_R},
{0x019BE, 0x0C, SPMI_SIM_PERM_R},
{0x019BF, 0x00, SPMI_SIM_PERM_R},
{0x01700, 0x01, SPMI_SIM_PERM_R},
{0x01701, 0x02, SPMI_SIM_PERM_R},
{0x01702, 0x00, SPMI_SIM_PERM_R},
{0x01703, 0x03, SPMI_SIM_PERM_R},
{0x01704, 0x02, SPMI_SIM_PERM_R},
{0x01705, 0x68, SPMI_SIM_PERM_R},
{0x01710, 0x00, SPMI_SIM_PERM_R},
{0x01714, 0x00, SPMI_SIM_PERM_W},
{0x01718, 0x00, SPMI_SIM_PERM_R},
{0x01719, 0x00, SPMI_SIM_PERM_R},
{0x01740, 0x01, SPMI_SIM_PERM_RW},
{0x01748, 0x00, SPMI_SIM_PERM_R},
{0x0174A, 0x00, SPMI_SIM_PERM_R},
{0x01758, 0x01, SPMI_SIM_PERM_RW},
{0x01780, 0x00, SPMI_SIM_PERM_R},
{0x017D9, 0x01, SPMI_SIM_PERM_RW},
{0x017DA, 0x0F, SPMI_SIM_PERM_RW},
{0x017F0, 0x03, SPMI_SIM_PERM_R},
{0x017F1, 0x0F, SPMI_SIM_PERM_RW},
{0x017F2, 0x07, SPMI_SIM_PERM_RW},
{0x017F3, 0x02, SPMI_SIM_PERM_RW},
{0x01A00, 0x00, SPMI_SIM_PERM_R},
{0x01A01, 0x00, SPMI_SIM_PERM_R},
{0x01A02, 0x00, SPMI_SIM_PERM_R},
{0x01A03, 0x00, SPMI_SIM_PERM_R},
{0x01A04, 0x09, SPMI_SIM_PERM_R},
{0x01A05, 0x07, SPMI_SIM_PERM_R},
{0x01A08, 0x00, SPMI_SIM_PERM_R},
{0x01A09, 0x00, SPMI_SIM_PERM_R},
{0x01A10, 0x00, SPMI_SIM_PERM_R},
{0x01A14, 0x00, SPMI_SIM_PERM_W},
{0x01A18, 0x00, SPMI_SIM_PERM_R},
{0x01A19, 0x00, SPMI_SIM_PERM_R},
{0x01A41, 0x1A, SPMI_SIM_PERM_RW},
{0x01A42, 0x22, SPMI_SIM_PERM_RW},
{0x01A43, 0x0D, SPMI_SIM_PERM_RW},
{0x01AD9, 0x01, SPMI_SIM_PERM_RW},
{0x01ADF, 0x0F, SPMI_SIM_PERM_RW},
{0x01B00, 0x00, SPMI_SIM_PERM_R},
{0x01B01, 0x01, SPMI_SIM_PERM_R},
{0x01B02, 0x00, SPMI_SIM_PERM_R},
{0x01B03, 0x00, SPMI_SIM_PERM_R},
{0x01B04, 0x02, SPMI_SIM_PERM_R},
{0x01B05, 0x11, SPMI_SIM_PERM_R},
{0x01B08, 0x00, SPMI_SIM_PERM_R},
{0x01B09, 0x00, SPMI_SIM_PERM_R},
{0x01B0A, 0x00, SPMI_SIM_PERM_R},
{0x01B0D, 0x00, SPMI_SIM_PERM_R},
{0x01B10, 0x00, SPMI_SIM_PERM_R},
{0x01B14, 0x00, SPMI_SIM_PERM_W},
{0x01B18, 0x00, SPMI_SIM_PERM_R},
{0x01B19, 0x00, SPMI_SIM_PERM_R},
{0x01B4F, 0x00, SPMI_SIM_PERM_W},
{0x01B50, 0x00, SPMI_SIM_PERM_W},
{0x01B56, 0x03, SPMI_SIM_PERM_RW},
{0x01B5D, 0x00, SPMI_SIM_PERM_W},
{0x01B60, 0x00, SPMI_SIM_PERM_R},
{0x01B61, 0x00, SPMI_SIM_PERM_R},
{0x01B62, 0x00, SPMI_SIM_PERM_R},
{0x01B63, 0x00, SPMI_SIM_PERM_R},
{0x01B64, 0x00, SPMI_SIM_PERM_R},
{0x01B65, 0x00, SPMI_SIM_PERM_R},
{0x01B66, 0x00, SPMI_SIM_PERM_R},
{0x01B67, 0x00, SPMI_SIM_PERM_R},
{0x01B68, 0x00, SPMI_SIM_PERM_R},
{0x01B69, 0x00, SPMI_SIM_PERM_R},
{0x01B6A, 0x00, SPMI_SIM_PERM_R},
{0x01B70, 0x00, SPMI_SIM_PERM_R},
{0x01BA8, 0x11, SPMI_SIM_PERM_RW},
{0x01BAA, 0x02, SPMI_SIM_PERM_RW},
{0x01BD9, 0x01, SPMI_SIM_PERM_RW},
{0x01BDA, 0x07, SPMI_SIM_PERM_RW},
{0x01BDF, 0x0F, SPMI_SIM_PERM_RW},
{0x01BE4, 0x00, SPMI_SIM_PERM_W},
{0x01D00, 0x00, SPMI_SIM_PERM_R},
{0x01D01, 0x00, SPMI_SIM_PERM_R},
{0x01D02, 0x00, SPMI_SIM_PERM_R},
{0x01D03, 0x01, SPMI_SIM_PERM_R},
{0x01D04, 0x09, SPMI_SIM_PERM_R},
{0x01D05, 0x02, SPMI_SIM_PERM_R},
{0x01D08, 0x00, SPMI_SIM_PERM_R},
{0x01D09, 0x00, SPMI_SIM_PERM_R},
{0x01D0A, 0x00, SPMI_SIM_PERM_R},
{0x01D0B, 0x00, SPMI_SIM_PERM_R},
{0x01D0C, 0x00, SPMI_SIM_PERM_R},
{0x01D0D, 0x00, SPMI_SIM_PERM_R},
{0x01D0E, 0x00, SPMI_SIM_PERM_R},
{0x01D0F, 0x00, SPMI_SIM_PERM_R},
{0x01D10, 0x00, SPMI_SIM_PERM_R},
{0x01D14, 0x00, SPMI_SIM_PERM_W},
{0x01D18, 0x00, SPMI_SIM_PERM_R},
{0x01D19, 0x00, SPMI_SIM_PERM_R},
{0x01D40, 0x3F, SPMI_SIM_PERM_RW},
{0x01D48, 0x7F, SPMI_SIM_PERM_RW},
{0x01D4B, 0x7F, SPMI_SIM_PERM_RW},
{0x01D4C, 0x7F, SPMI_SIM_PERM_RW},
{0x01D4D, 0x7F, SPMI_SIM_PERM_RW},
{0x01D50, 0x70, SPMI_SIM_PERM_RW},
{0x01D51, 0x33, SPMI_SIM_PERM_RW},
{0x01D52, 0x11, SPMI_SIM_PERM_RW},
{0x01D53, 0x7C, SPMI_SIM_PERM_RW},
{0x01D54, 0x7D, SPMI_SIM_PERM_RW},
{0x01D55, 0x70, SPMI_SIM_PERM_RW},
{0x01D56, 0x30, SPMI_SIM_PERM_RW},
{0x01D57, 0x1B, SPMI_SIM_PERM_RW},
{0x01D58, 0x7C, SPMI_SIM_PERM_RW},
{0x01D59, 0x7D, SPMI_SIM_PERM_RW},
{0x01D5A, 0x70, SPMI_SIM_PERM_RW},
{0x01D5B, 0x70, SPMI_SIM_PERM_RW},
{0x01D5C, 0x70, SPMI_SIM_PERM_RW},
{0x01D5D, 0x70, SPMI_SIM_PERM_RW},
{0x01D5E, 0x70, SPMI_SIM_PERM_RW},
{0x01D5F, 0x70, SPMI_SIM_PERM_RW},
{0x01D60, 0xFF, SPMI_SIM_PERM_RW},
{0x01D61, 0x03, SPMI_SIM_PERM_RW},
{0x01D70, 0x84, SPMI_SIM_PERM_RW},
{0x01D71, 0xA1, SPMI_SIM_PERM_RW},
{0x01D73, 0xFF, SPMI_SIM_PERM_RW},
{0x01D74, 0xFF, SPMI_SIM_PERM_RW},
{0x01D76, 0x00, SPMI_SIM_PERM_R},
{0x01D80, 0xA1, SPMI_SIM_PERM_RW},
{0x01D81, 0xA1, SPMI_SIM_PERM_RW},
{0x01D83, 0xFF, SPMI_SIM_PERM_RW},
{0x01D84, 0xFF, SPMI_SIM_PERM_RW},
{0x01D86, 0x00, SPMI_SIM_PERM_R},
{0x01DBD, 0x00, SPMI_SIM_PERM_R},
{0x01DBE, 0x00, SPMI_SIM_PERM_R},
{0x01DBF, 0x00, SPMI_SIM_PERM_R},
{0x01DD9, 0x01, SPMI_SIM_PERM_RW},
{0x01DDA, 0x07, SPMI_SIM_PERM_RW},
{0x01DEF, 0x00, SPMI_SIM_PERM_R},
{0x01E04, 0x09, SPMI_SIM_PERM_R},
{0x01E05, 0x06, SPMI_SIM_PERM_R},
{0x01E10, 0x00, SPMI_SIM_PERM_R},
{0x01E11, 0x0F, SPMI_SIM_PERM_R},
{0x01E12, 0x0F, SPMI_SIM_PERM_R},
{0x01E13, 0x0F, SPMI_SIM_PERM_R},
{0x01E14, 0x00, SPMI_SIM_PERM_W},
{0x01E18, 0x00, SPMI_SIM_PERM_R},
{0x01E19, 0x00, SPMI_SIM_PERM_R},
{0x01E1C, 0x01, SPMI_SIM_PERM_R},
{0x01ED9, 0x01, SPMI_SIM_PERM_RW},
{0x01EDA, 0x07, SPMI_SIM_PERM_RW},
{0x02400, 0x00, SPMI_SIM_PERM_R},
{0x02401, 0x01, SPMI_SIM_PERM_R},
{0x02402, 0x04, SPMI_SIM_PERM_R},
{0x02403, 0x00, SPMI_SIM_PERM_R},
{0x02404, 0x09, SPMI_SIM_PERM_R},
{0x02405, 0x09, SPMI_SIM_PERM_R},
{0x02408, 0x00, SPMI_SIM_PERM_R},
{0x02410, 0x00, SPMI_SIM_PERM_R},
{0x02414, 0x00, SPMI_SIM_PERM_W},
{0x02418, 0x00, SPMI_SIM_PERM_R},
{0x02419, 0x00, SPMI_SIM_PERM_R},
{0x02440, 0x09, SPMI_SIM_PERM_RW},
{0x02442, 0x00, SPMI_SIM_PERM_W},
{0x02446, 0x01, SPMI_SIM_PERM_RW},
{0x024D9, 0x01, SPMI_SIM_PERM_RW},
{0x024DA, 0x07, SPMI_SIM_PERM_RW},
{0x024F0, 0x00, SPMI_SIM_PERM_R},
{0x02C00, 0x00, SPMI_SIM_PERM_R},
{0x02C01, 0x01, SPMI_SIM_PERM_R},
{0x02C02, 0x04, SPMI_SIM_PERM_R},
{0x02C03, 0x00, SPMI_SIM_PERM_R},
{0x02C04, 0x0E, SPMI_SIM_PERM_R},
{0x02C05, 0x03, SPMI_SIM_PERM_R},
{0x02C09, 0x01, SPMI_SIM_PERM_R},
{0x02C44, 0xE0, SPMI_SIM_PERM_RW},
{0x02CD9, 0x01, SPMI_SIM_PERM_RW},
{0x02CDA, 0x07, SPMI_SIM_PERM_RW},
{0x02CE4, 0x04, SPMI_SIM_PERM_RW},
{0x02CE5, 0x00, SPMI_SIM_PERM_R},
{0x02CE6, 0x00, SPMI_SIM_PERM_R},
{0x02CE8, 0x04, SPMI_SIM_PERM_RW},
{0x02CE9, 0x08, SPMI_SIM_PERM_RW},
{0x02CEA, 0x40, SPMI_SIM_PERM_RW},
{0x02CF0, 0x0C, SPMI_SIM_PERM_R},
{0x03000, 0x00, SPMI_SIM_PERM_R},
{0x03001, 0x05, SPMI_SIM_PERM_R},
{0x03002, 0x00, SPMI_SIM_PERM_R},
{0x03003, 0x00, SPMI_SIM_PERM_R},
{0x03004, 0x08, SPMI_SIM_PERM_R},
{0x03005, 0x2E, SPMI_SIM_PERM_R},
{0x0300F, 0x01, SPMI_SIM_PERM_R},
{0x03050, 0x30, SPMI_SIM_PERM_RW},
{0x03051, 0x28, SPMI_SIM_PERM_RW},
{0x03052, 0x02, SPMI_SIM_PERM_RW},
{0x0305C, 0xFE, SPMI_SIM_PERM_RW},
{0x0305D, 0x82, SPMI_SIM_PERM_RW},
{0x0305E, 0x02, SPMI_SIM_PERM_RW},
{0x03060, 0xC0, SPMI_SIM_PERM_RW},
{0x0306D, 0xC0, SPMI_SIM_PERM_RW},
{0x030E3, 0x40, SPMI_SIM_PERM_RW},
{0x030F0, 0x0D, SPMI_SIM_PERM_R},
{0x030F1, 0x40, SPMI_SIM_PERM_RW},
{0x030F2, 0x08, SPMI_SIM_PERM_RW},
{0x030F3, 0x08, SPMI_SIM_PERM_RW},
{0x030F4, 0x8F, SPMI_SIM_PERM_RW},
{0x030F5, 0xC3, SPMI_SIM_PERM_RW},
{0x030F6, 0x01, SPMI_SIM_PERM_RW},
{0x030F7, 0xB0, SPMI_SIM_PERM_RW},
{0x030F8, 0x33, SPMI_SIM_PERM_RW},
{0x030F9, 0xAF, SPMI_SIM_PERM_RW},
{0x030FA, 0x01, SPMI_SIM_PERM_RW},
{0x030FB, 0xB0, SPMI_SIM_PERM_RW},
{0x030FC, 0x01, SPMI_SIM_PERM_RW},
{0x030FD, 0xB0, SPMI_SIM_PERM_RW},
{0x03100, 0x00, SPMI_SIM_PERM_R},
{0x03101, 0x05, SPMI_SIM_PERM_R},
{0x03102, 0x00, SPMI_SIM_PERM_R},
{0x03103, 0x00, SPMI_SIM_PERM_R},
{0x03104, 0x08, SPMI_SIM_PERM_R},
{0x03105, 0x28, SPMI_SIM_PERM_R},
{0x03108, 0x00, SPMI_SIM_PERM_R},
{0x03109, 0x00, SPMI_SIM_PERM_R},
{0x0310F, 0x01, SPMI_SIM_PERM_R},
{0x03110, 0x00, SPMI_SIM_PERM_R},
{0x03114, 0x00, SPMI_SIM_PERM_W},
{0x03118, 0x00, SPMI_SIM_PERM_R},
{0x03119, 0x00, SPMI_SIM_PERM_R},
{0x03142, 0x18, SPMI_SIM_PERM_RW},
{0x03143, 0x80, SPMI_SIM_PERM_RW},
{0x03144, 0x06, SPMI_SIM_PERM_RW},
{0x03147, 0x00, SPMI_SIM_PERM_W},
{0x031D9, 0x01, SPMI_SIM_PERM_RW},
{0x031DA, 0x07, SPMI_SIM_PERM_RW},
{0x03200, 0x00, SPMI_SIM_PERM_R},
{0x03201, 0x05, SPMI_SIM_PERM_R},
{0x03202, 0x00, SPMI_SIM_PERM_R},
{0x03203, 0x00, SPMI_SIM_PERM_R},
{0x03204, 0x08, SPMI_SIM_PERM_R},
{0x03205, 0x29, SPMI_SIM_PERM_R},
{0x03208, 0x00, SPMI_SIM_PERM_R},
{0x03209, 0x00, SPMI_SIM_PERM_R},
{0x0320F, 0x01, SPMI_SIM_PERM_R},
{0x03210, 0x00, SPMI_SIM_PERM_R},
{0x03214, 0x00, SPMI_SIM_PERM_W},
{0x03218, 0x00, SPMI_SIM_PERM_R},
{0x03219, 0x00, SPMI_SIM_PERM_R},
{0x03242, 0x18, SPMI_SIM_PERM_RW},
{0x03243, 0x80, SPMI_SIM_PERM_RW},
{0x03244, 0x06, SPMI_SIM_PERM_RW},
{0x03247, 0x00, SPMI_SIM_PERM_W},
{0x032D9, 0x01, SPMI_SIM_PERM_RW},
{0x032DA, 0x07, SPMI_SIM_PERM_RW},
{0x03500, 0x00, SPMI_SIM_PERM_R},
{0x03501, 0x05, SPMI_SIM_PERM_R},
{0x03502, 0x00, SPMI_SIM_PERM_R},
{0x03503, 0x00, SPMI_SIM_PERM_R},
{0x03504, 0x08, SPMI_SIM_PERM_R},
{0x03505, 0x2C, SPMI_SIM_PERM_R},
{0x03509, 0x00, SPMI_SIM_PERM_R},
{0x0350A, 0x00, SPMI_SIM_PERM_R},
{0x0350B, 0x00, SPMI_SIM_PERM_R},
{0x0350F, 0x04, SPMI_SIM_PERM_R},
{0x03510, 0x00, SPMI_SIM_PERM_R},
{0x03514, 0x00, SPMI_SIM_PERM_W},
{0x03518, 0x00, SPMI_SIM_PERM_R},
{0x03519, 0x00, SPMI_SIM_PERM_R},
{0x03542, 0x08, SPMI_SIM_PERM_RW},
{0x03543, 0x80, SPMI_SIM_PERM_RW},
{0x03547, 0x00, SPMI_SIM_PERM_W},
{0x03560, 0xFF, SPMI_SIM_PERM_RW},
{0x03561, 0x01, SPMI_SIM_PERM_RW},
{0x03562, 0x80, SPMI_SIM_PERM_RW},
{0x03563, 0xFF, SPMI_SIM_PERM_RW},
{0x03564, 0x7F, SPMI_SIM_PERM_RW},
{0x03569, 0x01, SPMI_SIM_PERM_RW},
{0x0356A, 0x80, SPMI_SIM_PERM_RW},
{0x0356B, 0xFF, SPMI_SIM_PERM_RW},
{0x0356C, 0x7F, SPMI_SIM_PERM_RW},
{0x03571, 0x01, SPMI_SIM_PERM_RW},
{0x03572, 0x80, SPMI_SIM_PERM_RW},
{0x03573, 0xFF, SPMI_SIM_PERM_RW},
{0x03574, 0x7F, SPMI_SIM_PERM_RW},
{0x035D9, 0x01, SPMI_SIM_PERM_RW},
{0x035DA, 0x07, SPMI_SIM_PERM_RW},
{0x03600, 0x00, SPMI_SIM_PERM_R},
{0x03601, 0x05, SPMI_SIM_PERM_R},
{0x03602, 0x00, SPMI_SIM_PERM_R},
{0x03603, 0x00, SPMI_SIM_PERM_R},
{0x03604, 0x08, SPMI_SIM_PERM_R},
{0x03605, 0x2A, SPMI_SIM_PERM_R},
{0x03608, 0x00, SPMI_SIM_PERM_R},
{0x03609, 0x00, SPMI_SIM_PERM_R},
{0x0360F, 0x01, SPMI_SIM_PERM_R},
{0x03610, 0x00, SPMI_SIM_PERM_R},
{0x03614, 0x00, SPMI_SIM_PERM_W},
{0x03618, 0x00, SPMI_SIM_PERM_R},
{0x03619, 0x00, SPMI_SIM_PERM_R},
{0x03642, 0x18, SPMI_SIM_PERM_RW},
{0x03643, 0x80, SPMI_SIM_PERM_RW},
{0x03644, 0x06, SPMI_SIM_PERM_RW},
{0x03647, 0x00, SPMI_SIM_PERM_W},
{0x036D9, 0x01, SPMI_SIM_PERM_RW},
{0x036DA, 0x07, SPMI_SIM_PERM_RW},
{0x03700, 0x00, SPMI_SIM_PERM_R},
{0x03701, 0x05, SPMI_SIM_PERM_R},
{0x03702, 0x00, SPMI_SIM_PERM_R},
{0x03703, 0x00, SPMI_SIM_PERM_R},
{0x03704, 0x08, SPMI_SIM_PERM_R},
{0x03705, 0x2B, SPMI_SIM_PERM_R},
{0x03709, 0x00, SPMI_SIM_PERM_R},
{0x0370F, 0x01, SPMI_SIM_PERM_R},
{0x03710, 0x00, SPMI_SIM_PERM_R},
{0x03714, 0x00, SPMI_SIM_PERM_W},
{0x03718, 0x00, SPMI_SIM_PERM_R},
{0x03719, 0x00, SPMI_SIM_PERM_R},
{0x03742, 0x08, SPMI_SIM_PERM_RW},
{0x03743, 0x80, SPMI_SIM_PERM_RW},
{0x03744, 0x03, SPMI_SIM_PERM_RW},
{0x03745, 0x01, SPMI_SIM_PERM_RW},
{0x03747, 0x00, SPMI_SIM_PERM_W},
{0x037D9, 0x01, SPMI_SIM_PERM_RW},
{0x037DA, 0x07, SPMI_SIM_PERM_RW},
{0x03900, 0x00, SPMI_SIM_PERM_R},
{0x03901, 0x05, SPMI_SIM_PERM_R},
{0x03902, 0x00, SPMI_SIM_PERM_R},
{0x03903, 0x00, SPMI_SIM_PERM_R},
{0x03904, 0x08, SPMI_SIM_PERM_R},
{0x03905, 0x2D, SPMI_SIM_PERM_R},
{0x03909, 0x00, SPMI_SIM_PERM_R},
{0x0390A, 0x00, SPMI_SIM_PERM_R},
{0x03940, 0x0A, SPMI_SIM_PERM_RW},
{0x03942, 0x80, SPMI_SIM_PERM_RW},
{0x03943, 0x30, SPMI_SIM_PERM_RW},
{0x03944, 0x28, SPMI_SIM_PERM_RW},
{0x03945, 0x02, SPMI_SIM_PERM_RW},
{0x039D9, 0x01, SPMI_SIM_PERM_RW},
{0x039DA, 0x07, SPMI_SIM_PERM_RW},
{0x039F0, 0x04, SPMI_SIM_PERM_R},
{0x039F1, 0x34, SPMI_SIM_PERM_RW},
{0x039F2, 0x38, SPMI_SIM_PERM_RW},
{0x039F3, 0x34, SPMI_SIM_PERM_RW},
{0x039F4, 0x3F, SPMI_SIM_PERM_RW},
{0x03C00, 0x00, SPMI_SIM_PERM_R},
{0x03C01, 0x00, SPMI_SIM_PERM_R},
{0x03C02, 0x00, SPMI_SIM_PERM_R},
{0x03C03, 0x00, SPMI_SIM_PERM_R},
{0x03C04, 0x28, SPMI_SIM_PERM_R},
{0x03C05, 0x07, SPMI_SIM_PERM_R},
{0x03C08, 0x00, SPMI_SIM_PERM_R},
{0x03C0A, 0x00, SPMI_SIM_PERM_R},
{0x03C40, 0x60, SPMI_SIM_PERM_RW},
{0x03C41, 0x40, SPMI_SIM_PERM_RW},
{0x03CD9, 0x01, SPMI_SIM_PERM_RW},
{0x03CDA, 0x07, SPMI_SIM_PERM_RW},
{0x03CE5, 0x42, SPMI_SIM_PERM_RW},
{0x03CE6, 0x07, SPMI_SIM_PERM_RW},
{0x03CF0, 0x03, SPMI_SIM_PERM_R},
{0x03CF1, 0x07, SPMI_SIM_PERM_RW},
{0x03CF2, 0x07, SPMI_SIM_PERM_RW},
{0x03CF3, 0x07, SPMI_SIM_PERM_RW},
{0x04004, 0x0D, SPMI_SIM_PERM_R},
{0x04005, 0x10, SPMI_SIM_PERM_R},
{0x04010, 0x00, SPMI_SIM_PERM_R},
{0x04014, 0x00, SPMI_SIM_PERM_W},
{0x04018, 0x00, SPMI_SIM_PERM_R},
{0x04019, 0x00, SPMI_SIM_PERM_R},
{0x04050, 0x06, SPMI_SIM_PERM_RW},
{0x04051, 0x01, SPMI_SIM_PERM_RW},
{0x04052, 0x15, SPMI_SIM_PERM_RW},
{0x04059, 0x00, SPMI_SIM_PERM_R},
{0x040B6, 0x00, SPMI_SIM_PERM_R},
{0x040B7, 0x00, SPMI_SIM_PERM_R},
{0x040B8, 0x00, SPMI_SIM_PERM_W},
{0x040BA, 0x07, SPMI_SIM_PERM_RW},
{0x040DA, 0x01, SPMI_SIM_PERM_RW},
{0x040F0, 0x00, SPMI_SIM_PERM_R},
{0x04104, 0x0D, SPMI_SIM_PERM_R},
{0x04105, 0x11, SPMI_SIM_PERM_R},
{0x04110, 0x00, SPMI_SIM_PERM_R},
{0x04114, 0x00, SPMI_SIM_PERM_W},
{0x04118, 0x00, SPMI_SIM_PERM_R},
{0x04119, 0x00, SPMI_SIM_PERM_R},
{0x04169, 0x06, SPMI_SIM_PERM_RW},
{0x0416A, 0x20, SPMI_SIM_PERM_RW},
{0x04170, 0x00, SPMI_SIM_PERM_R},
{0x041A0, 0x00, SPMI_SIM_PERM_R},
{0x041A1, 0x00, SPMI_SIM_PERM_R},
{0x041A2, 0x00, SPMI_SIM_PERM_R},
{0x041A3, 0x00, SPMI_SIM_PERM_R},
{0x041A4, 0x00, SPMI_SIM_PERM_R},
{0x041A5, 0x00, SPMI_SIM_PERM_R},
{0x041A6, 0x00, SPMI_SIM_PERM_R},
{0x041A7, 0x00, SPMI_SIM_PERM_R},
{0x041A8, 0x00, SPMI_SIM_PERM_R},
{0x041A9, 0x00, SPMI_SIM_PERM_R},
{0x041AA, 0x00, SPMI_SIM_PERM_R},
{0x041AB, 0x00, SPMI_SIM_PERM_R},
{0x041AC, 0x00, SPMI_SIM_PERM_R},
{0x041AD, 0x00, SPMI_SIM_PERM_R},
{0x041AE, 0x00, SPMI_SIM_PERM_R},
{0x041AF, 0x00, SPMI_SIM_PERM_R},
{0x041B0, 0x0F, SPMI_SIM_PERM_RW},
{0x041B1, 0x08, SPMI_SIM_PERM_RW},
{0x041B2, 0x0A, SPMI_SIM_PERM_RW},
{0x041B3, 0x0F, SPMI_SIM_PERM_RW},
{0x041B4, 0x08, SPMI_SIM_PERM_RW},
{0x041B5, 0x0A, SPMI_SIM_PERM_RW},
{0x041B6, 0xA0, SPMI_SIM_PERM_RW},
{0x041B7, 0x02, SPMI_SIM_PERM_RW},
{0x041BC, 0x00, SPMI_SIM_PERM_R},
{0x041C0, 0x60, SPMI_SIM_PERM_RW},
{0x041C1, 0x41, SPMI_SIM_PERM_RW},
{0x041CD, 0xB0, SPMI_SIM_PERM_RW},
{0x041CF, 0xB4, SPMI_SIM_PERM_RW},
{0x041DA, 0x01, SPMI_SIM_PERM_RW},
{0x041E5, 0x20, SPMI_SIM_PERM_RW},
{0x041E7, 0x00, SPMI_SIM_PERM_R},
{0x041E9, 0x00, SPMI_SIM_PERM_R},
{0x041F0, 0x00, SPMI_SIM_PERM_R},
{0x04204, 0x0D, SPMI_SIM_PERM_R},
{0x04205, 0x13, SPMI_SIM_PERM_R},
{0x04208, 0x00, SPMI_SIM_PERM_R},
{0x04209, 0x00, SPMI_SIM_PERM_R},
{0x04210, 0x00, SPMI_SIM_PERM_R},
{0x04214, 0x00, SPMI_SIM_PERM_W},
{0x04218, 0x00, SPMI_SIM_PERM_R},
{0x04219, 0x00, SPMI_SIM_PERM_R},
{0x04246, 0x80, SPMI_SIM_PERM_RW},
{0x04250, 0x05, SPMI_SIM_PERM_RW},
{0x04258, 0x9E, SPMI_SIM_PERM_RW},
{0x04259, 0x01, SPMI_SIM_PERM_RW},
{0x0425A, 0xFA, SPMI_SIM_PERM_RW},
{0x0425B, 0x01, SPMI_SIM_PERM_RW},
{0x0425F, 0x00, SPMI_SIM_PERM_R},
{0x04260, 0x01, SPMI_SIM_PERM_RW},
{0x04265, 0x00, SPMI_SIM_PERM_R},
{0x04266, 0x00, SPMI_SIM_PERM_R},
{0x04267, 0x00, SPMI_SIM_PERM_R},
{0x04268, 0x01, SPMI_SIM_PERM_RW},
{0x0426D, 0x00, SPMI_SIM_PERM_R},
{0x0426E, 0x00, SPMI_SIM_PERM_R},
{0x0426F, 0x00, SPMI_SIM_PERM_R},
{0x04270, 0x01, SPMI_SIM_PERM_RW},
{0x04275, 0x00, SPMI_SIM_PERM_R},
{0x04276, 0x00, SPMI_SIM_PERM_R},
{0x04277, 0x00, SPMI_SIM_PERM_R},
{0x04280, 0x01, SPMI_SIM_PERM_RW},
{0x04281, 0x02, SPMI_SIM_PERM_RW},
{0x04282, 0x20, SPMI_SIM_PERM_RW},
{0x04285, 0x00, SPMI_SIM_PERM_R},
{0x04286, 0x00, SPMI_SIM_PERM_R},
{0x04287, 0x00, SPMI_SIM_PERM_R},
{0x04290, 0x03, SPMI_SIM_PERM_RW},
{0x042A0, 0x2A, SPMI_SIM_PERM_RW},
{0x042A1, 0x2F, SPMI_SIM_PERM_RW},
{0x042D9, 0x01, SPMI_SIM_PERM_RW},
{0x042DA, 0x03, SPMI_SIM_PERM_RW},
{0x042E3, 0x00, SPMI_SIM_PERM_R},
{0x042E4, 0x00, SPMI_SIM_PERM_R},
{0x042E5, 0x00, SPMI_SIM_PERM_R},
{0x042F0, 0x00, SPMI_SIM_PERM_R},
{0x04300, 0x00, SPMI_SIM_PERM_R},
{0x04301, 0x02, SPMI_SIM_PERM_R},
{0x04302, 0x00, SPMI_SIM_PERM_R},
{0x04303, 0x00, SPMI_SIM_PERM_R},
{0x04304, 0x0D, SPMI_SIM_PERM_R},
{0x04305, 0x0D, SPMI_SIM_PERM_R},
{0x04306, 0x00, SPMI_SIM_PERM_R},
{0x04307, 0x00, SPMI_SIM_PERM_R},
{0x04310, 0x00, SPMI_SIM_PERM_R},
{0x04314, 0x00, SPMI_SIM_PERM_W},
{0x04318, 0x00, SPMI_SIM_PERM_R},
{0x04319, 0x00, SPMI_SIM_PERM_R},
{0x04352, 0x90, SPMI_SIM_PERM_RW},
{0x04360, 0x0F, SPMI_SIM_PERM_RW},
{0x04370, 0x00, SPMI_SIM_PERM_R},
{0x04371, 0x01, SPMI_SIM_PERM_RW},
{0x043DA, 0x01, SPMI_SIM_PERM_RW},
{0x05900, 0x00, SPMI_SIM_PERM_R},
{0x05901, 0x07, SPMI_SIM_PERM_R},
{0x05902, 0x00, SPMI_SIM_PERM_R},
{0x05903, 0x06, SPMI_SIM_PERM_R},
{0x05904, 0x06, SPMI_SIM_PERM_R},
{0x05905, 0x02, SPMI_SIM_PERM_R},
{0x05908, 0x07, SPMI_SIM_PERM_R},
{0x05909, 0x00, SPMI_SIM_PERM_R},
{0x0590A, 0x00, SPMI_SIM_PERM_R},
{0x05910, 0x00, SPMI_SIM_PERM_R},
{0x05914, 0x00, SPMI_SIM_PERM_W},
{0x05918, 0x00, SPMI_SIM_PERM_R},
{0x05919, 0x00, SPMI_SIM_PERM_R},
{0x05940, 0x55, SPMI_SIM_PERM_RW},
{0x05944, 0x01, SPMI_SIM_PERM_RW},
{0x05945, 0x80, SPMI_SIM_PERM_RW},
{0x05946, 0x01, SPMI_SIM_PERM_RW},
{0x05947, 0x80, SPMI_SIM_PERM_RW},
{0x05949, 0x01, SPMI_SIM_PERM_RW},
{0x0594A, 0x01, SPMI_SIM_PERM_RW},
{0x0594D, 0x01, SPMI_SIM_PERM_RW},
{0x05960, 0x01, SPMI_SIM_PERM_RW},
{0x05961, 0xF1, SPMI_SIM_PERM_RW},
{0x05962, 0x46, SPMI_SIM_PERM_RW},
{0x05963, 0x92, SPMI_SIM_PERM_RW},
{0x05964, 0x00, SPMI_SIM_PERM_R},
{0x05965, 0x1F, SPMI_SIM_PERM_R},
{0x05966, 0x00, SPMI_SIM_PERM_R},
{0x05967, 0x00, SPMI_SIM_PERM_R},
{0x05968, 0xFF, SPMI_SIM_PERM_R},
{0x05969, 0xFF, SPMI_SIM_PERM_R},
{0x0596A, 0x10, SPMI_SIM_PERM_R},
{0x0596C, 0x00, SPMI_SIM_PERM_W},
{0x05970, 0x01, SPMI_SIM_PERM_RW},
{0x05971, 0xC0, SPMI_SIM_PERM_RW},
{0x05972, 0x3F, SPMI_SIM_PERM_RW},
{0x05973, 0x91, SPMI_SIM_PERM_RW},
{0x05974, 0x00, SPMI_SIM_PERM_R},
{0x05975, 0x3F, SPMI_SIM_PERM_R},
{0x05976, 0x00, SPMI_SIM_PERM_R},
{0x05977, 0x00, SPMI_SIM_PERM_R},
{0x05978, 0xFF, SPMI_SIM_PERM_R},
{0x05979, 0xFF, SPMI_SIM_PERM_R},
{0x0597A, 0x20, SPMI_SIM_PERM_R},
{0x0597C, 0x00, SPMI_SIM_PERM_W},
{0x059D9, 0x01, SPMI_SIM_PERM_RW},
{0x059DA, 0x0F, SPMI_SIM_PERM_RW},
{0x059E9, 0x11, SPMI_SIM_PERM_RW},
{0x059EB, 0x15, SPMI_SIM_PERM_RW},
{0x059F0, 0x02, SPMI_SIM_PERM_R},
{0x059F1, 0x7F, SPMI_SIM_PERM_RW},
{0x059F2, 0x1F, SPMI_SIM_PERM_RW},
{0x06000, 0x00, SPMI_SIM_PERM_R},
{0x06001, 0x01, SPMI_SIM_PERM_R},
{0x06004, 0x06, SPMI_SIM_PERM_R},
{0x06005, 0x0B, SPMI_SIM_PERM_R},
{0x06008, 0x00, SPMI_SIM_PERM_R},
{0x06010, 0x00, SPMI_SIM_PERM_R},
{0x06011, 0x02, SPMI_SIM_PERM_R},
{0x06012, 0x02, SPMI_SIM_PERM_RW},
{0x06014, 0x00, SPMI_SIM_PERM_W},
{0x0601D, 0x01, SPMI_SIM_PERM_R},
{0x06043, 0x07, SPMI_SIM_PERM_RW},
{0x060D9, 0x01, SPMI_SIM_PERM_RW},
{0x060DA, 0x0F, SPMI_SIM_PERM_RW},
{0x06600, 0x00, SPMI_SIM_PERM_R},
{0x06601, 0x00, SPMI_SIM_PERM_R},
{0x06604, 0x0B, SPMI_SIM_PERM_R},
{0x06605, 0x06, SPMI_SIM_PERM_R},
{0x06608, 0x02, SPMI_SIM_PERM_R},
{0x066DA, 0x01, SPMI_SIM_PERM_RW},
{0x06700, 0x07, SPMI_SIM_PERM_R},
{0x06701, 0x01, SPMI_SIM_PERM_R},
{0x06704, 0x0B, SPMI_SIM_PERM_R},
{0x06705, 0x08, SPMI_SIM_PERM_R},
{0x06706, 0x00, SPMI_SIM_PERM_R},
{0x06710, 0x00, SPMI_SIM_PERM_R},
{0x06711, 0xFF, SPMI_SIM_PERM_R},
{0x06712, 0xFF, SPMI_SIM_PERM_R},
{0x06713, 0xFF, SPMI_SIM_PERM_R},
{0x06714, 0x00, SPMI_SIM_PERM_W},
{0x06718, 0x00, SPMI_SIM_PERM_R},
{0x06719, 0x00, SPMI_SIM_PERM_R},
{0x0671C, 0x01, SPMI_SIM_PERM_R},
{0x067D9, 0x01, SPMI_SIM_PERM_RW},
{0x067DA, 0x07, SPMI_SIM_PERM_RW},
{0x067E0, 0x80, SPMI_SIM_PERM_RW},
{0x07000, 0x00, SPMI_SIM_PERM_R},
{0x07001, 0x04, SPMI_SIM_PERM_R},
{0x07002, 0x00, SPMI_SIM_PERM_R},
{0x07003, 0x00, SPMI_SIM_PERM_R},
{0x07004, 0x16, SPMI_SIM_PERM_R},
{0x07005, 0x01, SPMI_SIM_PERM_R},
{0x07006, 0x03, SPMI_SIM_PERM_R},
{0x07007, 0x02, SPMI_SIM_PERM_R},
{0x07008, 0x0F, SPMI_SIM_PERM_R},
{0x07009, 0x04, SPMI_SIM_PERM_R},
{0x07032, 0x00, SPMI_SIM_PERM_W},
{0x07090, 0xFF, SPMI_SIM_PERM_R},
{0x07091, 0xFF, SPMI_SIM_PERM_R},
{0x070A0, 0x10, SPMI_SIM_PERM_R},
{0x070A1, 0x40, SPMI_SIM_PERM_R},
{0x070A2, 0x40, SPMI_SIM_PERM_R},
{0x070A3, 0x40, SPMI_SIM_PERM_R},
{0x070A4, 0x0E, SPMI_SIM_PERM_R},
{0x070A5, 0x01, SPMI_SIM_PERM_R},
{0x070DA, 0x01, SPMI_SIM_PERM_RW},
{0x070E1, 0x00, SPMI_SIM_PERM_W},
{0x070E3, 0x07, SPMI_SIM_PERM_RW},
{0x070E8, 0x01, SPMI_SIM_PERM_RW},
{0x070ED, 0x00, SPMI_SIM_PERM_W},
{0x07100, 0x01, SPMI_SIM_PERM_R},
{0x07101, 0x00, SPMI_SIM_PERM_R},
{0x07102, 0x00, SPMI_SIM_PERM_R},
{0x07103, 0x00, SPMI_SIM_PERM_R},
{0x07104, 0x16, SPMI_SIM_PERM_R},
{0x07105, 0x09, SPMI_SIM_PERM_R},
{0x0710A, 0x00, SPMI_SIM_PERM_R},
{0x0710F, 0x01, SPMI_SIM_PERM_R},
{0x07110, 0x02, SPMI_SIM_PERM_R},
{0x07114, 0x00, SPMI_SIM_PERM_W},
{0x07118, 0x00, SPMI_SIM_PERM_R},
{0x07119, 0x00, SPMI_SIM_PERM_R},
{0x07140, 0x01, SPMI_SIM_PERM_RW},
{0x07142, 0x00, SPMI_SIM_PERM_W},
{0x07146, 0x80, SPMI_SIM_PERM_RW},
{0x07148, 0x00, SPMI_SIM_PERM_W},
{0x071D8, 0x01, SPMI_SIM_PERM_RW},
{0x071DA, 0x01, SPMI_SIM_PERM_RW},
{0x07200, 0x01, SPMI_SIM_PERM_R},
{0x07201, 0x00, SPMI_SIM_PERM_R},
{0x07202, 0x00, SPMI_SIM_PERM_R},
{0x07203, 0x00, SPMI_SIM_PERM_R},
{0x07204, 0x16, SPMI_SIM_PERM_R},
{0x07205, 0x0A, SPMI_SIM_PERM_R},
{0x0720A, 0x00, SPMI_SIM_PERM_R},
{0x0720F, 0x04, SPMI_SIM_PERM_R},
{0x07210, 0x02, SPMI_SIM_PERM_R},
{0x07214, 0x00, SPMI_SIM_PERM_W},
{0x07218, 0x00, SPMI_SIM_PERM_R},
{0x07219, 0x00, SPMI_SIM_PERM_R},
{0x07242, 0x00, SPMI_SIM_PERM_W},
{0x07248, 0x00, SPMI_SIM_PERM_W},
{0x072DA, 0x01, SPMI_SIM_PERM_RW},
{0x07300, 0x00, SPMI_SIM_PERM_R},
{0x07301, 0x00, SPMI_SIM_PERM_R},
{0x07304, 0x14, SPMI_SIM_PERM_R},
{0x07305, 0x2B, SPMI_SIM_PERM_R},
{0x07310, 0x00, SPMI_SIM_PERM_R},
{0x07311, 0xFF, SPMI_SIM_PERM_R},
{0x07312, 0xFF, SPMI_SIM_PERM_RW},
{0x07314, 0x00, SPMI_SIM_PERM_W},
{0x07318, 0x00, SPMI_SIM_PERM_R},
{0x07319, 0x00, SPMI_SIM_PERM_R},
{0x073DA, 0x01, SPMI_SIM_PERM_RW},
{0x07400, 0x00, SPMI_SIM_PERM_R},
{0x07401, 0x00, SPMI_SIM_PERM_R},
{0x07404, 0x14, SPMI_SIM_PERM_R},
{0x07405, 0x2B, SPMI_SIM_PERM_R},
{0x07410, 0x00, SPMI_SIM_PERM_R},
{0x07411, 0xFF, SPMI_SIM_PERM_R},
{0x07412, 0xFF, SPMI_SIM_PERM_RW},
{0x07414, 0x00, SPMI_SIM_PERM_W},
{0x07418, 0x00, SPMI_SIM_PERM_R},
{0x07419, 0x00, SPMI_SIM_PERM_R},
{0x074DA, 0x01, SPMI_SIM_PERM_RW},
{0x07500, 0x00, SPMI_SIM_PERM_R},
{0x07501, 0x00, SPMI_SIM_PERM_R},
{0x07504, 0x14, SPMI_SIM_PERM_R},
{0x07505, 0x2B, SPMI_SIM_PERM_R},
{0x07510, 0x00, SPMI_SIM_PERM_R},
{0x07511, 0xFF, SPMI_SIM_PERM_R},
{0x07512, 0xFF, SPMI_SIM_PERM_RW},
{0x07514, 0x00, SPMI_SIM_PERM_W},
{0x07518, 0x00, SPMI_SIM_PERM_R},
{0x07519, 0x00, SPMI_SIM_PERM_R},
{0x075DA, 0x01, SPMI_SIM_PERM_RW},
{0x0B000, 0x00, SPMI_SIM_PERM_R},
{0x0B001, 0x00, SPMI_SIM_PERM_R},
{0x0B002, 0x00, SPMI_SIM_PERM_R},
{0x0B003, 0x00, SPMI_SIM_PERM_R},
{0x0B004, 0x2E, SPMI_SIM_PERM_R},
{0x0B005, 0x01, SPMI_SIM_PERM_R},
{0x0B010, 0x00, SPMI_SIM_PERM_R},
{0x0B011, 0x01, SPMI_SIM_PERM_R},
{0x0B012, 0x01, SPMI_SIM_PERM_R},
{0x0B013, 0x00, SPMI_SIM_PERM_R},
{0x0B014, 0x00, SPMI_SIM_PERM_W},
{0x0B018, 0x00, SPMI_SIM_PERM_R},
{0x0B019, 0x00, SPMI_SIM_PERM_R},
{0x0B01A, 0x00, SPMI_SIM_PERM_R},
{0x0B01B, 0x00, SPMI_SIM_PERM_R},
{0x0B0D9, 0x01, SPMI_SIM_PERM_RW},
{0x0B0DA, 0x07, SPMI_SIM_PERM_RW},
{0x0C000, 0x01, SPMI_SIM_PERM_R},
{0x0C001, 0x02, SPMI_SIM_PERM_R},
{0x0C002, 0x00, SPMI_SIM_PERM_R},
{0x0C003, 0x02, SPMI_SIM_PERM_R},
{0x0C004, 0x10, SPMI_SIM_PERM_R},
{0x0C005, 0x10, SPMI_SIM_PERM_R},
{0x0C010, 0x00, SPMI_SIM_PERM_R},
{0x0C014, 0x00, SPMI_SIM_PERM_W},
{0x0C018, 0x00, SPMI_SIM_PERM_R},
{0x0C019, 0x00, SPMI_SIM_PERM_R},
{0x0C042, 0x04, SPMI_SIM_PERM_RW},
{0x0C045, 0x01, SPMI_SIM_PERM_RW},
{0x0C046, 0x80, SPMI_SIM_PERM_RW},
{0x0C0D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C0D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C0DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C100, 0x01, SPMI_SIM_PERM_R},
{0x0C101, 0x02, SPMI_SIM_PERM_R},
{0x0C102, 0x00, SPMI_SIM_PERM_R},
{0x0C103, 0x02, SPMI_SIM_PERM_R},
{0x0C104, 0x10, SPMI_SIM_PERM_R},
{0x0C105, 0x10, SPMI_SIM_PERM_R},
{0x0C110, 0x00, SPMI_SIM_PERM_R},
{0x0C114, 0x00, SPMI_SIM_PERM_W},
{0x0C118, 0x00, SPMI_SIM_PERM_R},
{0x0C119, 0x00, SPMI_SIM_PERM_R},
{0x0C142, 0x04, SPMI_SIM_PERM_RW},
{0x0C145, 0x01, SPMI_SIM_PERM_RW},
{0x0C146, 0x80, SPMI_SIM_PERM_RW},
{0x0C1D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C1D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C1DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C200, 0x01, SPMI_SIM_PERM_R},
{0x0C201, 0x02, SPMI_SIM_PERM_R},
{0x0C202, 0x00, SPMI_SIM_PERM_R},
{0x0C203, 0x02, SPMI_SIM_PERM_R},
{0x0C204, 0x10, SPMI_SIM_PERM_R},
{0x0C205, 0x10, SPMI_SIM_PERM_R},
{0x0C210, 0x00, SPMI_SIM_PERM_R},
{0x0C214, 0x00, SPMI_SIM_PERM_W},
{0x0C218, 0x00, SPMI_SIM_PERM_R},
{0x0C219, 0x00, SPMI_SIM_PERM_R},
{0x0C242, 0x04, SPMI_SIM_PERM_RW},
{0x0C245, 0x01, SPMI_SIM_PERM_RW},
{0x0C246, 0x80, SPMI_SIM_PERM_RW},
{0x0C2D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C2D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C2DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C300, 0x01, SPMI_SIM_PERM_R},
{0x0C301, 0x02, SPMI_SIM_PERM_R},
{0x0C302, 0x00, SPMI_SIM_PERM_R},
{0x0C303, 0x02, SPMI_SIM_PERM_R},
{0x0C304, 0x10, SPMI_SIM_PERM_R},
{0x0C305, 0x10, SPMI_SIM_PERM_R},
{0x0C310, 0x00, SPMI_SIM_PERM_R},
{0x0C314, 0x00, SPMI_SIM_PERM_W},
{0x0C318, 0x00, SPMI_SIM_PERM_R},
{0x0C319, 0x00, SPMI_SIM_PERM_R},
{0x0C342, 0x04, SPMI_SIM_PERM_RW},
{0x0C345, 0x01, SPMI_SIM_PERM_RW},
{0x0C346, 0x80, SPMI_SIM_PERM_RW},
{0x0C3D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C3D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C3DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C400, 0x01, SPMI_SIM_PERM_R},
{0x0C401, 0x02, SPMI_SIM_PERM_R},
{0x0C402, 0x00, SPMI_SIM_PERM_R},
{0x0C403, 0x02, SPMI_SIM_PERM_R},
{0x0C404, 0x10, SPMI_SIM_PERM_R},
{0x0C405, 0x11, SPMI_SIM_PERM_R},
{0x0C410, 0x00, SPMI_SIM_PERM_R},
{0x0C414, 0x00, SPMI_SIM_PERM_W},
{0x0C418, 0x00, SPMI_SIM_PERM_R},
{0x0C419, 0x00, SPMI_SIM_PERM_R},
{0x0C442, 0x04, SPMI_SIM_PERM_RW},
{0x0C445, 0x01, SPMI_SIM_PERM_RW},
{0x0C446, 0x80, SPMI_SIM_PERM_RW},
{0x0C4D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C4D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C4DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C500, 0x01, SPMI_SIM_PERM_R},
{0x0C501, 0x02, SPMI_SIM_PERM_R},
{0x0C502, 0x00, SPMI_SIM_PERM_R},
{0x0C503, 0x02, SPMI_SIM_PERM_R},
{0x0C504, 0x10, SPMI_SIM_PERM_R},
{0x0C505, 0x11, SPMI_SIM_PERM_R},
{0x0C510, 0x00, SPMI_SIM_PERM_R},
{0x0C514, 0x00, SPMI_SIM_PERM_W},
{0x0C518, 0x00, SPMI_SIM_PERM_R},
{0x0C519, 0x00, SPMI_SIM_PERM_R},
{0x0C542, 0x04, SPMI_SIM_PERM_RW},
{0x0C545, 0x01, SPMI_SIM_PERM_RW},
{0x0C546, 0x80, SPMI_SIM_PERM_RW},
{0x0C5D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C5D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C5DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C600, 0x01, SPMI_SIM_PERM_R},
{0x0C601, 0x02, SPMI_SIM_PERM_R},
{0x0C602, 0x00, SPMI_SIM_PERM_R},
{0x0C603, 0x02, SPMI_SIM_PERM_R},
{0x0C604, 0x10, SPMI_SIM_PERM_R},
{0x0C605, 0x11, SPMI_SIM_PERM_R},
{0x0C610, 0x00, SPMI_SIM_PERM_R},
{0x0C614, 0x00, SPMI_SIM_PERM_W},
{0x0C618, 0x00, SPMI_SIM_PERM_R},
{0x0C619, 0x00, SPMI_SIM_PERM_R},
{0x0C642, 0x04, SPMI_SIM_PERM_RW},
{0x0C645, 0x01, SPMI_SIM_PERM_RW},
{0x0C646, 0x80, SPMI_SIM_PERM_RW},
{0x0C6D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C6D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C6DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C700, 0x01, SPMI_SIM_PERM_R},
{0x0C701, 0x02, SPMI_SIM_PERM_R},
{0x0C702, 0x00, SPMI_SIM_PERM_R},
{0x0C703, 0x02, SPMI_SIM_PERM_R},
{0x0C704, 0x10, SPMI_SIM_PERM_R},
{0x0C705, 0x11, SPMI_SIM_PERM_R},
{0x0C710, 0x00, SPMI_SIM_PERM_R},
{0x0C714, 0x00, SPMI_SIM_PERM_W},
{0x0C718, 0x00, SPMI_SIM_PERM_R},
{0x0C719, 0x00, SPMI_SIM_PERM_R},
{0x0C742, 0x04, SPMI_SIM_PERM_RW},
{0x0C745, 0x01, SPMI_SIM_PERM_RW},
{0x0C746, 0x80, SPMI_SIM_PERM_RW},
{0x0C7D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C7D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C7DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C800, 0x01, SPMI_SIM_PERM_R},
{0x0C801, 0x02, SPMI_SIM_PERM_R},
{0x0C802, 0x00, SPMI_SIM_PERM_R},
{0x0C803, 0x02, SPMI_SIM_PERM_R},
{0x0C804, 0x10, SPMI_SIM_PERM_R},
{0x0C805, 0x10, SPMI_SIM_PERM_R},
{0x0C810, 0x00, SPMI_SIM_PERM_R},
{0x0C814, 0x00, SPMI_SIM_PERM_W},
{0x0C818, 0x00, SPMI_SIM_PERM_R},
{0x0C819, 0x00, SPMI_SIM_PERM_R},
{0x0C842, 0x04, SPMI_SIM_PERM_RW},
{0x0C845, 0x01, SPMI_SIM_PERM_RW},
{0x0C846, 0x80, SPMI_SIM_PERM_RW},
{0x0C8D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C8D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C8DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0C900, 0x01, SPMI_SIM_PERM_R},
{0x0C901, 0x02, SPMI_SIM_PERM_R},
{0x0C902, 0x00, SPMI_SIM_PERM_R},
{0x0C903, 0x02, SPMI_SIM_PERM_R},
{0x0C904, 0x10, SPMI_SIM_PERM_R},
{0x0C905, 0x10, SPMI_SIM_PERM_R},
{0x0C910, 0x00, SPMI_SIM_PERM_R},
{0x0C914, 0x00, SPMI_SIM_PERM_W},
{0x0C918, 0x00, SPMI_SIM_PERM_R},
{0x0C919, 0x00, SPMI_SIM_PERM_R},
{0x0C942, 0x04, SPMI_SIM_PERM_RW},
{0x0C945, 0x01, SPMI_SIM_PERM_RW},
{0x0C946, 0x80, SPMI_SIM_PERM_RW},
{0x0C9D8, 0x01, SPMI_SIM_PERM_RW},
{0x0C9D9, 0x01, SPMI_SIM_PERM_RW},
{0x0C9DA, 0x0F, SPMI_SIM_PERM_RW},
{0x0CA00, 0x01, SPMI_SIM_PERM_R},
{0x0CA01, 0x02, SPMI_SIM_PERM_R},
{0x0CA02, 0x00, SPMI_SIM_PERM_R},
{0x0CA03, 0x02, SPMI_SIM_PERM_R},
{0x0CA04, 0x10, SPMI_SIM_PERM_R},
{0x0CA05, 0x10, SPMI_SIM_PERM_R},
{0x0CA10, 0x00, SPMI_SIM_PERM_R},
{0x0CA14, 0x00, SPMI_SIM_PERM_W},
{0x0CA18, 0x00, SPMI_SIM_PERM_R},
{0x0CA19, 0x00, SPMI_SIM_PERM_R},
{0x0CA42, 0x04, SPMI_SIM_PERM_RW},
{0x0CA45, 0x01, SPMI_SIM_PERM_RW},
{0x0CA46, 0x80, SPMI_SIM_PERM_RW},
{0x0CAD8, 0x01, SPMI_SIM_PERM_RW},
{0x0CAD9, 0x01, SPMI_SIM_PERM_RW},
{0x0CADA, 0x0F, SPMI_SIM_PERM_RW},
{0x0CB00, 0x01, SPMI_SIM_PERM_R},
{0x0CB01, 0x02, SPMI_SIM_PERM_R},
{0x0CB02, 0x00, SPMI_SIM_PERM_R},
{0x0CB03, 0x02, SPMI_SIM_PERM_R},
{0x0CB04, 0x10, SPMI_SIM_PERM_R},
{0x0CB05, 0x10, SPMI_SIM_PERM_R},
{0x0CB10, 0x00, SPMI_SIM_PERM_R},
{0x0CB14, 0x00, SPMI_SIM_PERM_W},
{0x0CB18, 0x00, SPMI_SIM_PERM_R},
{0x0CB19, 0x00, SPMI_SIM_PERM_R},
{0x0CB42, 0x04, SPMI_SIM_PERM_RW},
{0x0CB45, 0x01, SPMI_SIM_PERM_RW},
{0x0CB46, 0x80, SPMI_SIM_PERM_RW},
{0x0CBD8, 0x01, SPMI_SIM_PERM_RW},
{0x0CBD9, 0x01, SPMI_SIM_PERM_RW},
{0x0CBDA, 0x0F, SPMI_SIM_PERM_RW},
{0x1B000, 0x00, SPMI_SIM_PERM_R},
{0x1B001, 0x00, SPMI_SIM_PERM_R},
{0x1B004, 0x13, SPMI_SIM_PERM_R},
{0x1B005, 0x10, SPMI_SIM_PERM_R},
{0x1B0C8, 0x00, SPMI_SIM_PERM_W},
{0x1B0D9, 0x01, SPMI_SIM_PERM_RW},
{0x1B0DA, 0x07, SPMI_SIM_PERM_RW},
{0x1B100, 0x00, SPMI_SIM_PERM_R},
{0x1B101, 0x00, SPMI_SIM_PERM_R},
{0x1B104, 0x13, SPMI_SIM_PERM_R},
{0x1B105, 0x11, SPMI_SIM_PERM_R},
{0x1B110, 0x00, SPMI_SIM_PERM_R},
{0x1B114, 0x00, SPMI_SIM_PERM_W},
{0x1B118, 0x00, SPMI_SIM_PERM_R},
{0x1B119, 0x00, SPMI_SIM_PERM_R},
{0x1B140, 0x10, SPMI_SIM_PERM_RW},
{0x1B147, 0x00, SPMI_SIM_PERM_W},
{0x1B1D9, 0x01, SPMI_SIM_PERM_RW},
{0x1B1DA, 0x07, SPMI_SIM_PERM_RW},
{0x1B200, 0x00, SPMI_SIM_PERM_R},
{0x1B201, 0x00, SPMI_SIM_PERM_R},
{0x1B204, 0x13, SPMI_SIM_PERM_R},
{0x1B205, 0x11, SPMI_SIM_PERM_R},
{0x1B210, 0x00, SPMI_SIM_PERM_R},
{0x1B214, 0x00, SPMI_SIM_PERM_W},
{0x1B218, 0x00, SPMI_SIM_PERM_R},
{0x1B219, 0x00, SPMI_SIM_PERM_R},
{0x1B240, 0x10, SPMI_SIM_PERM_RW},
{0x1B247, 0x00, SPMI_SIM_PERM_W},
{0x1B2D9, 0x01, SPMI_SIM_PERM_RW},
{0x1B2DA, 0x07, SPMI_SIM_PERM_RW},
{0x1C000, 0x00, SPMI_SIM_PERM_R},
{0x1C001, 0x02, SPMI_SIM_PERM_R},
{0x1C002, 0x00, SPMI_SIM_PERM_R},
{0x1C003, 0x02, SPMI_SIM_PERM_R},
{0x1C004, 0x15, SPMI_SIM_PERM_R},
{0x1C005, 0x09, SPMI_SIM_PERM_R},
{0x1C00A, 0x00, SPMI_SIM_PERM_R},
{0x1C00B, 0x00, SPMI_SIM_PERM_R},
{0x1C00C, 0x00, SPMI_SIM_PERM_R},
{0x1C00D, 0x00, SPMI_SIM_PERM_R},
{0x1C00E, 0x00, SPMI_SIM_PERM_R},
{0x1C010, 0x00, SPMI_SIM_PERM_R},
{0x1C014, 0x00, SPMI_SIM_PERM_W},
{0x1C018, 0x00, SPMI_SIM_PERM_R},
{0x1C019, 0x00, SPMI_SIM_PERM_R},
{0x1C048, 0x03, SPMI_SIM_PERM_RW},
{0x1C04A, 0xFF, SPMI_SIM_PERM_RW},
{0x1C04B, 0x04, SPMI_SIM_PERM_RW},
{0x1C04D, 0x01, SPMI_SIM_PERM_RW},
{0x1C04F, 0x0C, SPMI_SIM_PERM_RW},
{0x1C051, 0x22, SPMI_SIM_PERM_RW},
{0x1C053, 0x01, SPMI_SIM_PERM_RW},
{0x1C054, 0x77, SPMI_SIM_PERM_RW},
{0x1C055, 0x04, SPMI_SIM_PERM_RW},
{0x1C056, 0x01, SPMI_SIM_PERM_RW},
{0x1C058, 0x01, SPMI_SIM_PERM_RW},
{0x1C059, 0x00, SPMI_SIM_PERM_W},
{0x1C05C, 0x1B, SPMI_SIM_PERM_RW},
{0x1C070, 0x00, SPMI_SIM_PERM_W},
{0x1C0D9, 0x01, SPMI_SIM_PERM_RW},
{0x1C0DA, 0x07, SPMI_SIM_PERM_RW},
{0x1C0DF, 0xF0, SPMI_SIM_PERM_RW},
{0x1C0F0, 0x02, SPMI_SIM_PERM_R},
{0x1C0F1, 0x20, SPMI_SIM_PERM_RW},
{0x1C0F2, 0x20, SPMI_SIM_PERM_RW},
{0x1D000, 0x00, SPMI_SIM_PERM_R},
{0x1D001, 0x01, SPMI_SIM_PERM_R},
{0x1D002, 0x00, SPMI_SIM_PERM_R},
{0x1D003, 0x01, SPMI_SIM_PERM_R},
{0x1D004, 0x19, SPMI_SIM_PERM_R},
{0x1D005, 0x03, SPMI_SIM_PERM_R},
{0x1D008, 0x00, SPMI_SIM_PERM_R},
{0x1D050, 0x05, SPMI_SIM_PERM_RW},
{0x1D051, 0x05, SPMI_SIM_PERM_RW},
{0x1D053, 0x80, SPMI_SIM_PERM_RW},
{0x1D055, 0x01, SPMI_SIM_PERM_RW},
{0x1D056, 0x0A, SPMI_SIM_PERM_RW},
{0x1D057, 0x82, SPMI_SIM_PERM_RW},
{0x1D0D9, 0x01, SPMI_SIM_PERM_RW},
{0x1D0DA, 0x07, SPMI_SIM_PERM_RW},
{0x1D0F0, 0x02, SPMI_SIM_PERM_R},
{0x1D0F1, 0x10, SPMI_SIM_PERM_RW},
{0x1D0F2, 0x10, SPMI_SIM_PERM_RW},
};
static int pm8150b_sim_probe(struct platform_device *pdev)
{
struct pmic_sim *sim;
u32 sid_offset = 0;
int rc;
sim = devm_kzalloc(&pdev->dev, sizeof(*sim), GFP_KERNEL);
if (!sim)
return -ENOMEM;
sim->spmi_sim = spmi_sim_get(&pdev->dev);
if (IS_ERR(sim->spmi_sim)) {
rc = PTR_ERR(sim->spmi_sim);
if (rc != -EPROBE_DEFER)
dev_err(&pdev->dev, "could not find SPMI simulator device, rc=%d\n",
rc);
return rc;
}
rc = of_property_read_u32(pdev->dev.of_node, "qcom,sid-offset",
&sid_offset);
if (rc) {
dev_err(&pdev->dev, "could not read property qcom,spmi-sim, rc=%d\n",
rc);
return rc;
}
sim->base_addr = sid_offset << 16;
rc = spmi_sim_init_register(sim->spmi_sim, pm8150b_regs,
ARRAY_SIZE(pm8150b_regs), sim->base_addr);
if (rc) {
dev_err(&pdev->dev, "could not initialize PM8150B register values, rc=%d\n",
rc);
return rc;
}
dev_info(&pdev->dev, "PMIC PM8150B simulator registered at base addr=0x%05X\n",
sim->base_addr);
return 0;
}
static const struct of_device_id pm8150b_sim_match_table[] = {
{ .compatible = "qcom,pm8150b-sim", },
{},
};
MODULE_DEVICE_TABLE(of, pm8150b_sim_match_table);
static struct platform_driver pm8150b_sim_driver = {
.probe = pm8150b_sim_probe,
.driver = {
.name = "pm8150b_sim",
.of_match_table = pm8150b_sim_match_table,
},
};
static int __init pm8150b_sim_init(void)
{
return platform_driver_register(&pm8150b_sim_driver);
}
postcore_initcall(pm8150b_sim_init);
static void __exit pm8150b_sim_exit(void)
{
platform_driver_unregister(&pm8150b_sim_driver);
}
module_exit(pm8150b_sim_exit);
MODULE_DESCRIPTION("PM8150B Simulator Driver");
MODULE_LICENSE("GPL v2");