1 /* 2 * Copyright (C) 2014 Gateworks Corporation 3 * Tim Harvey <tharvey@gateworks.com> 4 * 5 * SPDX-License-Identifier: GPL-2.0+ 6 */ 7 8 #ifndef __PFUZE100_PMIC_H_ 9 #define __PFUZE100_PMIC_H_ 10 11 /* PFUZE100 registers */ 12 enum { 13 PFUZE100_DEVICEID = 0x00, 14 PFUZE100_REVID = 0x03, 15 PFUZE100_FABID = 0x04, 16 17 PFUZE100_SW1ABVOL = 0x20, 18 PFUZE100_SW1ABSTBY = 0x21, 19 PUZE_100_SW1ABCONF = 0x24, 20 PFUZE100_SW1CVOL = 0x2e, 21 PFUZE100_SW1CSTBY = 0x2f, 22 PFUZE100_SW1CCONF = 0x32, 23 PFUZE100_SW2VOL = 0x35, 24 PFUZE100_SW3AVOL = 0x3c, 25 PFUZE100_SW3BVOL = 0x43, 26 PFUZE100_SW4VOL = 0x4a, 27 PFUZE100_SWBSTCON1 = 0x66, 28 PFUZE100_VREFDDRCON = 0x6a, 29 PFUZE100_VSNVSVOL = 0x6b, 30 PFUZE100_VGEN1VOL = 0x6c, 31 PFUZE100_VGEN2VOL = 0x6d, 32 PFUZE100_VGEN3VOL = 0x6e, 33 PFUZE100_VGEN4VOL = 0x6f, 34 PFUZE100_VGEN5VOL = 0x70, 35 PFUZE100_VGEN6VOL = 0x71, 36 37 PMIC_NUM_OF_REGS = 0x7f, 38 }; 39 40 /* 41 * LDO Configuration 42 */ 43 44 /* VGEN1/2 Voltage Configuration */ 45 #define LDOA_0_80V 0 46 #define LDOA_0_85V 1 47 #define LDOA_0_90V 2 48 #define LDOA_0_95V 3 49 #define LDOA_1_00V 4 50 #define LDOA_1_05V 5 51 #define LDOA_1_10V 6 52 #define LDOA_1_15V 7 53 #define LDOA_1_20V 8 54 #define LDOA_1_25V 9 55 #define LDOA_1_30V 10 56 #define LDOA_1_35V 11 57 #define LDOA_1_40V 12 58 #define LDOA_1_45V 13 59 #define LDOA_1_50V 14 60 #define LDOA_1_55V 15 61 62 /* VGEN3/4/5/6 Voltage Configuration */ 63 #define LDOB_1_80V 0 64 #define LDOB_1_90V 1 65 #define LDOB_2_00V 2 66 #define LDOB_2_10V 3 67 #define LDOB_2_20V 4 68 #define LDOB_2_30V 5 69 #define LDOB_2_40V 6 70 #define LDOB_2_50V 7 71 #define LDOB_2_60V 8 72 #define LDOB_2_70V 9 73 #define LDOB_2_80V 10 74 #define LDOB_2_90V 11 75 #define LDOB_3_00V 12 76 #define LDOB_3_10V 13 77 #define LDOB_3_20V 14 78 #define LDOB_3_30V 15 79 80 #define LDO_VOL_MASK 0xf 81 #define LDO_EN 4 82 83 /* 84 * Boost Regulator 85 */ 86 87 /* SWBST Output Voltage */ 88 #define SWBST_5_00V 0 89 #define SWBST_5_05V 1 90 #define SWBST_5_10V 2 91 #define SWBST_5_15V 3 92 93 #define SWBST_VOL_MASK 0x3 94 #define SWBST_MODE_MASK 0x6 95 #define SWBST_MODE_OFF (2 << 0) 96 #define SWBST_MODE_PFM (2 << 1) 97 #define SWBST_MODE_AUTO (2 << 2) 98 #define SWBST_MODE_APS (2 << 3) 99 100 int power_pfuze100_init(unsigned char bus); 101 #endif 102