1*2874c5fdSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 2698659d5SMark Brown /* 3698659d5SMark Brown * linux/mfd/wm831x/regulator.h -- Regulator definitons for wm831x 4698659d5SMark Brown * 5698659d5SMark Brown * Copyright 2009 Wolfson Microelectronics PLC. 6698659d5SMark Brown * 7698659d5SMark Brown * Author: Mark Brown <broonie@opensource.wolfsonmicro.com> 8698659d5SMark Brown */ 9698659d5SMark Brown 10698659d5SMark Brown #ifndef __MFD_WM831X_REGULATOR_H__ 11698659d5SMark Brown #define __MFD_WM831X_REGULATOR_H__ 12698659d5SMark Brown 13e4ee831fSMark Brown /* 14e4ee831fSMark Brown * R16462 (0x404E) - Current Sink 1 15e4ee831fSMark Brown */ 16e4ee831fSMark Brown #define WM831X_CS1_ENA 0x8000 /* CS1_ENA */ 17e4ee831fSMark Brown #define WM831X_CS1_ENA_MASK 0x8000 /* CS1_ENA */ 18e4ee831fSMark Brown #define WM831X_CS1_ENA_SHIFT 15 /* CS1_ENA */ 19e4ee831fSMark Brown #define WM831X_CS1_ENA_WIDTH 1 /* CS1_ENA */ 20e4ee831fSMark Brown #define WM831X_CS1_DRIVE 0x4000 /* CS1_DRIVE */ 21e4ee831fSMark Brown #define WM831X_CS1_DRIVE_MASK 0x4000 /* CS1_DRIVE */ 22e4ee831fSMark Brown #define WM831X_CS1_DRIVE_SHIFT 14 /* CS1_DRIVE */ 23e4ee831fSMark Brown #define WM831X_CS1_DRIVE_WIDTH 1 /* CS1_DRIVE */ 24e4ee831fSMark Brown #define WM831X_CS1_SLPENA 0x1000 /* CS1_SLPENA */ 25e4ee831fSMark Brown #define WM831X_CS1_SLPENA_MASK 0x1000 /* CS1_SLPENA */ 26e4ee831fSMark Brown #define WM831X_CS1_SLPENA_SHIFT 12 /* CS1_SLPENA */ 27e4ee831fSMark Brown #define WM831X_CS1_SLPENA_WIDTH 1 /* CS1_SLPENA */ 28e4ee831fSMark Brown #define WM831X_CS1_OFF_RAMP_MASK 0x0C00 /* CS1_OFF_RAMP - [11:10] */ 29e4ee831fSMark Brown #define WM831X_CS1_OFF_RAMP_SHIFT 10 /* CS1_OFF_RAMP - [11:10] */ 30e4ee831fSMark Brown #define WM831X_CS1_OFF_RAMP_WIDTH 2 /* CS1_OFF_RAMP - [11:10] */ 31e4ee831fSMark Brown #define WM831X_CS1_ON_RAMP_MASK 0x0300 /* CS1_ON_RAMP - [9:8] */ 32e4ee831fSMark Brown #define WM831X_CS1_ON_RAMP_SHIFT 8 /* CS1_ON_RAMP - [9:8] */ 33e4ee831fSMark Brown #define WM831X_CS1_ON_RAMP_WIDTH 2 /* CS1_ON_RAMP - [9:8] */ 34e4ee831fSMark Brown #define WM831X_CS1_ISEL_MASK 0x003F /* CS1_ISEL - [5:0] */ 35e4ee831fSMark Brown #define WM831X_CS1_ISEL_SHIFT 0 /* CS1_ISEL - [5:0] */ 36e4ee831fSMark Brown #define WM831X_CS1_ISEL_WIDTH 6 /* CS1_ISEL - [5:0] */ 37e4ee831fSMark Brown 38e4ee831fSMark Brown /* 39e4ee831fSMark Brown * R16463 (0x404F) - Current Sink 2 40e4ee831fSMark Brown */ 41e4ee831fSMark Brown #define WM831X_CS2_ENA 0x8000 /* CS2_ENA */ 42e4ee831fSMark Brown #define WM831X_CS2_ENA_MASK 0x8000 /* CS2_ENA */ 43e4ee831fSMark Brown #define WM831X_CS2_ENA_SHIFT 15 /* CS2_ENA */ 44e4ee831fSMark Brown #define WM831X_CS2_ENA_WIDTH 1 /* CS2_ENA */ 45e4ee831fSMark Brown #define WM831X_CS2_DRIVE 0x4000 /* CS2_DRIVE */ 46e4ee831fSMark Brown #define WM831X_CS2_DRIVE_MASK 0x4000 /* CS2_DRIVE */ 47e4ee831fSMark Brown #define WM831X_CS2_DRIVE_SHIFT 14 /* CS2_DRIVE */ 48e4ee831fSMark Brown #define WM831X_CS2_DRIVE_WIDTH 1 /* CS2_DRIVE */ 49e4ee831fSMark Brown #define WM831X_CS2_SLPENA 0x1000 /* CS2_SLPENA */ 50e4ee831fSMark Brown #define WM831X_CS2_SLPENA_MASK 0x1000 /* CS2_SLPENA */ 51e4ee831fSMark Brown #define WM831X_CS2_SLPENA_SHIFT 12 /* CS2_SLPENA */ 52e4ee831fSMark Brown #define WM831X_CS2_SLPENA_WIDTH 1 /* CS2_SLPENA */ 53e4ee831fSMark Brown #define WM831X_CS2_OFF_RAMP_MASK 0x0C00 /* CS2_OFF_RAMP - [11:10] */ 54e4ee831fSMark Brown #define WM831X_CS2_OFF_RAMP_SHIFT 10 /* CS2_OFF_RAMP - [11:10] */ 55e4ee831fSMark Brown #define WM831X_CS2_OFF_RAMP_WIDTH 2 /* CS2_OFF_RAMP - [11:10] */ 56e4ee831fSMark Brown #define WM831X_CS2_ON_RAMP_MASK 0x0300 /* CS2_ON_RAMP - [9:8] */ 57e4ee831fSMark Brown #define WM831X_CS2_ON_RAMP_SHIFT 8 /* CS2_ON_RAMP - [9:8] */ 58e4ee831fSMark Brown #define WM831X_CS2_ON_RAMP_WIDTH 2 /* CS2_ON_RAMP - [9:8] */ 59e4ee831fSMark Brown #define WM831X_CS2_ISEL_MASK 0x003F /* CS2_ISEL - [5:0] */ 60e4ee831fSMark Brown #define WM831X_CS2_ISEL_SHIFT 0 /* CS2_ISEL - [5:0] */ 61e4ee831fSMark Brown #define WM831X_CS2_ISEL_WIDTH 6 /* CS2_ISEL - [5:0] */ 62e4ee831fSMark Brown 63e4ee831fSMark Brown /* 64e4ee831fSMark Brown * R16464 (0x4050) - DCDC Enable 65e4ee831fSMark Brown */ 66e4ee831fSMark Brown #define WM831X_EPE2_ENA 0x0080 /* EPE2_ENA */ 67e4ee831fSMark Brown #define WM831X_EPE2_ENA_MASK 0x0080 /* EPE2_ENA */ 68e4ee831fSMark Brown #define WM831X_EPE2_ENA_SHIFT 7 /* EPE2_ENA */ 69e4ee831fSMark Brown #define WM831X_EPE2_ENA_WIDTH 1 /* EPE2_ENA */ 70e4ee831fSMark Brown #define WM831X_EPE1_ENA 0x0040 /* EPE1_ENA */ 71e4ee831fSMark Brown #define WM831X_EPE1_ENA_MASK 0x0040 /* EPE1_ENA */ 72e4ee831fSMark Brown #define WM831X_EPE1_ENA_SHIFT 6 /* EPE1_ENA */ 73e4ee831fSMark Brown #define WM831X_EPE1_ENA_WIDTH 1 /* EPE1_ENA */ 74e4ee831fSMark Brown #define WM831X_DC4_ENA 0x0008 /* DC4_ENA */ 75e4ee831fSMark Brown #define WM831X_DC4_ENA_MASK 0x0008 /* DC4_ENA */ 76e4ee831fSMark Brown #define WM831X_DC4_ENA_SHIFT 3 /* DC4_ENA */ 77e4ee831fSMark Brown #define WM831X_DC4_ENA_WIDTH 1 /* DC4_ENA */ 78e4ee831fSMark Brown #define WM831X_DC3_ENA 0x0004 /* DC3_ENA */ 79e4ee831fSMark Brown #define WM831X_DC3_ENA_MASK 0x0004 /* DC3_ENA */ 80e4ee831fSMark Brown #define WM831X_DC3_ENA_SHIFT 2 /* DC3_ENA */ 81e4ee831fSMark Brown #define WM831X_DC3_ENA_WIDTH 1 /* DC3_ENA */ 82e4ee831fSMark Brown #define WM831X_DC2_ENA 0x0002 /* DC2_ENA */ 83e4ee831fSMark Brown #define WM831X_DC2_ENA_MASK 0x0002 /* DC2_ENA */ 84e4ee831fSMark Brown #define WM831X_DC2_ENA_SHIFT 1 /* DC2_ENA */ 85e4ee831fSMark Brown #define WM831X_DC2_ENA_WIDTH 1 /* DC2_ENA */ 86e4ee831fSMark Brown #define WM831X_DC1_ENA 0x0001 /* DC1_ENA */ 87e4ee831fSMark Brown #define WM831X_DC1_ENA_MASK 0x0001 /* DC1_ENA */ 88e4ee831fSMark Brown #define WM831X_DC1_ENA_SHIFT 0 /* DC1_ENA */ 89e4ee831fSMark Brown #define WM831X_DC1_ENA_WIDTH 1 /* DC1_ENA */ 90e4ee831fSMark Brown 91e4ee831fSMark Brown /* 92e4ee831fSMark Brown * R16465 (0x4051) - LDO Enable 93e4ee831fSMark Brown */ 94e4ee831fSMark Brown #define WM831X_LDO11_ENA 0x0400 /* LDO11_ENA */ 95e4ee831fSMark Brown #define WM831X_LDO11_ENA_MASK 0x0400 /* LDO11_ENA */ 96e4ee831fSMark Brown #define WM831X_LDO11_ENA_SHIFT 10 /* LDO11_ENA */ 97e4ee831fSMark Brown #define WM831X_LDO11_ENA_WIDTH 1 /* LDO11_ENA */ 98e4ee831fSMark Brown #define WM831X_LDO10_ENA 0x0200 /* LDO10_ENA */ 99e4ee831fSMark Brown #define WM831X_LDO10_ENA_MASK 0x0200 /* LDO10_ENA */ 100e4ee831fSMark Brown #define WM831X_LDO10_ENA_SHIFT 9 /* LDO10_ENA */ 101e4ee831fSMark Brown #define WM831X_LDO10_ENA_WIDTH 1 /* LDO10_ENA */ 102e4ee831fSMark Brown #define WM831X_LDO9_ENA 0x0100 /* LDO9_ENA */ 103e4ee831fSMark Brown #define WM831X_LDO9_ENA_MASK 0x0100 /* LDO9_ENA */ 104e4ee831fSMark Brown #define WM831X_LDO9_ENA_SHIFT 8 /* LDO9_ENA */ 105e4ee831fSMark Brown #define WM831X_LDO9_ENA_WIDTH 1 /* LDO9_ENA */ 106e4ee831fSMark Brown #define WM831X_LDO8_ENA 0x0080 /* LDO8_ENA */ 107e4ee831fSMark Brown #define WM831X_LDO8_ENA_MASK 0x0080 /* LDO8_ENA */ 108e4ee831fSMark Brown #define WM831X_LDO8_ENA_SHIFT 7 /* LDO8_ENA */ 109e4ee831fSMark Brown #define WM831X_LDO8_ENA_WIDTH 1 /* LDO8_ENA */ 110e4ee831fSMark Brown #define WM831X_LDO7_ENA 0x0040 /* LDO7_ENA */ 111e4ee831fSMark Brown #define WM831X_LDO7_ENA_MASK 0x0040 /* LDO7_ENA */ 112e4ee831fSMark Brown #define WM831X_LDO7_ENA_SHIFT 6 /* LDO7_ENA */ 113e4ee831fSMark Brown #define WM831X_LDO7_ENA_WIDTH 1 /* LDO7_ENA */ 114e4ee831fSMark Brown #define WM831X_LDO6_ENA 0x0020 /* LDO6_ENA */ 115e4ee831fSMark Brown #define WM831X_LDO6_ENA_MASK 0x0020 /* LDO6_ENA */ 116e4ee831fSMark Brown #define WM831X_LDO6_ENA_SHIFT 5 /* LDO6_ENA */ 117e4ee831fSMark Brown #define WM831X_LDO6_ENA_WIDTH 1 /* LDO6_ENA */ 118e4ee831fSMark Brown #define WM831X_LDO5_ENA 0x0010 /* LDO5_ENA */ 119e4ee831fSMark Brown #define WM831X_LDO5_ENA_MASK 0x0010 /* LDO5_ENA */ 120e4ee831fSMark Brown #define WM831X_LDO5_ENA_SHIFT 4 /* LDO5_ENA */ 121e4ee831fSMark Brown #define WM831X_LDO5_ENA_WIDTH 1 /* LDO5_ENA */ 122e4ee831fSMark Brown #define WM831X_LDO4_ENA 0x0008 /* LDO4_ENA */ 123e4ee831fSMark Brown #define WM831X_LDO4_ENA_MASK 0x0008 /* LDO4_ENA */ 124e4ee831fSMark Brown #define WM831X_LDO4_ENA_SHIFT 3 /* LDO4_ENA */ 125e4ee831fSMark Brown #define WM831X_LDO4_ENA_WIDTH 1 /* LDO4_ENA */ 126e4ee831fSMark Brown #define WM831X_LDO3_ENA 0x0004 /* LDO3_ENA */ 127e4ee831fSMark Brown #define WM831X_LDO3_ENA_MASK 0x0004 /* LDO3_ENA */ 128e4ee831fSMark Brown #define WM831X_LDO3_ENA_SHIFT 2 /* LDO3_ENA */ 129e4ee831fSMark Brown #define WM831X_LDO3_ENA_WIDTH 1 /* LDO3_ENA */ 130e4ee831fSMark Brown #define WM831X_LDO2_ENA 0x0002 /* LDO2_ENA */ 131e4ee831fSMark Brown #define WM831X_LDO2_ENA_MASK 0x0002 /* LDO2_ENA */ 132e4ee831fSMark Brown #define WM831X_LDO2_ENA_SHIFT 1 /* LDO2_ENA */ 133e4ee831fSMark Brown #define WM831X_LDO2_ENA_WIDTH 1 /* LDO2_ENA */ 134e4ee831fSMark Brown #define WM831X_LDO1_ENA 0x0001 /* LDO1_ENA */ 135e4ee831fSMark Brown #define WM831X_LDO1_ENA_MASK 0x0001 /* LDO1_ENA */ 136e4ee831fSMark Brown #define WM831X_LDO1_ENA_SHIFT 0 /* LDO1_ENA */ 137e4ee831fSMark Brown #define WM831X_LDO1_ENA_WIDTH 1 /* LDO1_ENA */ 138e4ee831fSMark Brown 139e4ee831fSMark Brown /* 140e4ee831fSMark Brown * R16466 (0x4052) - DCDC Status 141e4ee831fSMark Brown */ 142e4ee831fSMark Brown #define WM831X_EPE2_STS 0x0080 /* EPE2_STS */ 143e4ee831fSMark Brown #define WM831X_EPE2_STS_MASK 0x0080 /* EPE2_STS */ 144e4ee831fSMark Brown #define WM831X_EPE2_STS_SHIFT 7 /* EPE2_STS */ 145e4ee831fSMark Brown #define WM831X_EPE2_STS_WIDTH 1 /* EPE2_STS */ 146e4ee831fSMark Brown #define WM831X_EPE1_STS 0x0040 /* EPE1_STS */ 147e4ee831fSMark Brown #define WM831X_EPE1_STS_MASK 0x0040 /* EPE1_STS */ 148e4ee831fSMark Brown #define WM831X_EPE1_STS_SHIFT 6 /* EPE1_STS */ 149e4ee831fSMark Brown #define WM831X_EPE1_STS_WIDTH 1 /* EPE1_STS */ 150e4ee831fSMark Brown #define WM831X_DC4_STS 0x0008 /* DC4_STS */ 151e4ee831fSMark Brown #define WM831X_DC4_STS_MASK 0x0008 /* DC4_STS */ 152e4ee831fSMark Brown #define WM831X_DC4_STS_SHIFT 3 /* DC4_STS */ 153e4ee831fSMark Brown #define WM831X_DC4_STS_WIDTH 1 /* DC4_STS */ 154e4ee831fSMark Brown #define WM831X_DC3_STS 0x0004 /* DC3_STS */ 155e4ee831fSMark Brown #define WM831X_DC3_STS_MASK 0x0004 /* DC3_STS */ 156e4ee831fSMark Brown #define WM831X_DC3_STS_SHIFT 2 /* DC3_STS */ 157e4ee831fSMark Brown #define WM831X_DC3_STS_WIDTH 1 /* DC3_STS */ 158e4ee831fSMark Brown #define WM831X_DC2_STS 0x0002 /* DC2_STS */ 159e4ee831fSMark Brown #define WM831X_DC2_STS_MASK 0x0002 /* DC2_STS */ 160e4ee831fSMark Brown #define WM831X_DC2_STS_SHIFT 1 /* DC2_STS */ 161e4ee831fSMark Brown #define WM831X_DC2_STS_WIDTH 1 /* DC2_STS */ 162e4ee831fSMark Brown #define WM831X_DC1_STS 0x0001 /* DC1_STS */ 163e4ee831fSMark Brown #define WM831X_DC1_STS_MASK 0x0001 /* DC1_STS */ 164e4ee831fSMark Brown #define WM831X_DC1_STS_SHIFT 0 /* DC1_STS */ 165e4ee831fSMark Brown #define WM831X_DC1_STS_WIDTH 1 /* DC1_STS */ 166e4ee831fSMark Brown 167e4ee831fSMark Brown /* 168e4ee831fSMark Brown * R16467 (0x4053) - LDO Status 169e4ee831fSMark Brown */ 170e4ee831fSMark Brown #define WM831X_LDO11_STS 0x0400 /* LDO11_STS */ 171e4ee831fSMark Brown #define WM831X_LDO11_STS_MASK 0x0400 /* LDO11_STS */ 172e4ee831fSMark Brown #define WM831X_LDO11_STS_SHIFT 10 /* LDO11_STS */ 173e4ee831fSMark Brown #define WM831X_LDO11_STS_WIDTH 1 /* LDO11_STS */ 174e4ee831fSMark Brown #define WM831X_LDO10_STS 0x0200 /* LDO10_STS */ 175e4ee831fSMark Brown #define WM831X_LDO10_STS_MASK 0x0200 /* LDO10_STS */ 176e4ee831fSMark Brown #define WM831X_LDO10_STS_SHIFT 9 /* LDO10_STS */ 177e4ee831fSMark Brown #define WM831X_LDO10_STS_WIDTH 1 /* LDO10_STS */ 178e4ee831fSMark Brown #define WM831X_LDO9_STS 0x0100 /* LDO9_STS */ 179e4ee831fSMark Brown #define WM831X_LDO9_STS_MASK 0x0100 /* LDO9_STS */ 180e4ee831fSMark Brown #define WM831X_LDO9_STS_SHIFT 8 /* LDO9_STS */ 181e4ee831fSMark Brown #define WM831X_LDO9_STS_WIDTH 1 /* LDO9_STS */ 182e4ee831fSMark Brown #define WM831X_LDO8_STS 0x0080 /* LDO8_STS */ 183e4ee831fSMark Brown #define WM831X_LDO8_STS_MASK 0x0080 /* LDO8_STS */ 184e4ee831fSMark Brown #define WM831X_LDO8_STS_SHIFT 7 /* LDO8_STS */ 185e4ee831fSMark Brown #define WM831X_LDO8_STS_WIDTH 1 /* LDO8_STS */ 186e4ee831fSMark Brown #define WM831X_LDO7_STS 0x0040 /* LDO7_STS */ 187e4ee831fSMark Brown #define WM831X_LDO7_STS_MASK 0x0040 /* LDO7_STS */ 188e4ee831fSMark Brown #define WM831X_LDO7_STS_SHIFT 6 /* LDO7_STS */ 189e4ee831fSMark Brown #define WM831X_LDO7_STS_WIDTH 1 /* LDO7_STS */ 190e4ee831fSMark Brown #define WM831X_LDO6_STS 0x0020 /* LDO6_STS */ 191e4ee831fSMark Brown #define WM831X_LDO6_STS_MASK 0x0020 /* LDO6_STS */ 192e4ee831fSMark Brown #define WM831X_LDO6_STS_SHIFT 5 /* LDO6_STS */ 193e4ee831fSMark Brown #define WM831X_LDO6_STS_WIDTH 1 /* LDO6_STS */ 194e4ee831fSMark Brown #define WM831X_LDO5_STS 0x0010 /* LDO5_STS */ 195e4ee831fSMark Brown #define WM831X_LDO5_STS_MASK 0x0010 /* LDO5_STS */ 196e4ee831fSMark Brown #define WM831X_LDO5_STS_SHIFT 4 /* LDO5_STS */ 197e4ee831fSMark Brown #define WM831X_LDO5_STS_WIDTH 1 /* LDO5_STS */ 198e4ee831fSMark Brown #define WM831X_LDO4_STS 0x0008 /* LDO4_STS */ 199e4ee831fSMark Brown #define WM831X_LDO4_STS_MASK 0x0008 /* LDO4_STS */ 200e4ee831fSMark Brown #define WM831X_LDO4_STS_SHIFT 3 /* LDO4_STS */ 201e4ee831fSMark Brown #define WM831X_LDO4_STS_WIDTH 1 /* LDO4_STS */ 202e4ee831fSMark Brown #define WM831X_LDO3_STS 0x0004 /* LDO3_STS */ 203e4ee831fSMark Brown #define WM831X_LDO3_STS_MASK 0x0004 /* LDO3_STS */ 204e4ee831fSMark Brown #define WM831X_LDO3_STS_SHIFT 2 /* LDO3_STS */ 205e4ee831fSMark Brown #define WM831X_LDO3_STS_WIDTH 1 /* LDO3_STS */ 206e4ee831fSMark Brown #define WM831X_LDO2_STS 0x0002 /* LDO2_STS */ 207e4ee831fSMark Brown #define WM831X_LDO2_STS_MASK 0x0002 /* LDO2_STS */ 208e4ee831fSMark Brown #define WM831X_LDO2_STS_SHIFT 1 /* LDO2_STS */ 209e4ee831fSMark Brown #define WM831X_LDO2_STS_WIDTH 1 /* LDO2_STS */ 210e4ee831fSMark Brown #define WM831X_LDO1_STS 0x0001 /* LDO1_STS */ 211e4ee831fSMark Brown #define WM831X_LDO1_STS_MASK 0x0001 /* LDO1_STS */ 212e4ee831fSMark Brown #define WM831X_LDO1_STS_SHIFT 0 /* LDO1_STS */ 213e4ee831fSMark Brown #define WM831X_LDO1_STS_WIDTH 1 /* LDO1_STS */ 214e4ee831fSMark Brown 215e4ee831fSMark Brown /* 216e4ee831fSMark Brown * R16468 (0x4054) - DCDC UV Status 217e4ee831fSMark Brown */ 218e4ee831fSMark Brown #define WM831X_DC2_OV_STS 0x2000 /* DC2_OV_STS */ 219e4ee831fSMark Brown #define WM831X_DC2_OV_STS_MASK 0x2000 /* DC2_OV_STS */ 220e4ee831fSMark Brown #define WM831X_DC2_OV_STS_SHIFT 13 /* DC2_OV_STS */ 221e4ee831fSMark Brown #define WM831X_DC2_OV_STS_WIDTH 1 /* DC2_OV_STS */ 222e4ee831fSMark Brown #define WM831X_DC1_OV_STS 0x1000 /* DC1_OV_STS */ 223e4ee831fSMark Brown #define WM831X_DC1_OV_STS_MASK 0x1000 /* DC1_OV_STS */ 224e4ee831fSMark Brown #define WM831X_DC1_OV_STS_SHIFT 12 /* DC1_OV_STS */ 225e4ee831fSMark Brown #define WM831X_DC1_OV_STS_WIDTH 1 /* DC1_OV_STS */ 226e4ee831fSMark Brown #define WM831X_DC2_HC_STS 0x0200 /* DC2_HC_STS */ 227e4ee831fSMark Brown #define WM831X_DC2_HC_STS_MASK 0x0200 /* DC2_HC_STS */ 228e4ee831fSMark Brown #define WM831X_DC2_HC_STS_SHIFT 9 /* DC2_HC_STS */ 229e4ee831fSMark Brown #define WM831X_DC2_HC_STS_WIDTH 1 /* DC2_HC_STS */ 230e4ee831fSMark Brown #define WM831X_DC1_HC_STS 0x0100 /* DC1_HC_STS */ 231e4ee831fSMark Brown #define WM831X_DC1_HC_STS_MASK 0x0100 /* DC1_HC_STS */ 232e4ee831fSMark Brown #define WM831X_DC1_HC_STS_SHIFT 8 /* DC1_HC_STS */ 233e4ee831fSMark Brown #define WM831X_DC1_HC_STS_WIDTH 1 /* DC1_HC_STS */ 234e4ee831fSMark Brown #define WM831X_DC4_UV_STS 0x0008 /* DC4_UV_STS */ 235e4ee831fSMark Brown #define WM831X_DC4_UV_STS_MASK 0x0008 /* DC4_UV_STS */ 236e4ee831fSMark Brown #define WM831X_DC4_UV_STS_SHIFT 3 /* DC4_UV_STS */ 237e4ee831fSMark Brown #define WM831X_DC4_UV_STS_WIDTH 1 /* DC4_UV_STS */ 238e4ee831fSMark Brown #define WM831X_DC3_UV_STS 0x0004 /* DC3_UV_STS */ 239e4ee831fSMark Brown #define WM831X_DC3_UV_STS_MASK 0x0004 /* DC3_UV_STS */ 240e4ee831fSMark Brown #define WM831X_DC3_UV_STS_SHIFT 2 /* DC3_UV_STS */ 241e4ee831fSMark Brown #define WM831X_DC3_UV_STS_WIDTH 1 /* DC3_UV_STS */ 242e4ee831fSMark Brown #define WM831X_DC2_UV_STS 0x0002 /* DC2_UV_STS */ 243e4ee831fSMark Brown #define WM831X_DC2_UV_STS_MASK 0x0002 /* DC2_UV_STS */ 244e4ee831fSMark Brown #define WM831X_DC2_UV_STS_SHIFT 1 /* DC2_UV_STS */ 245e4ee831fSMark Brown #define WM831X_DC2_UV_STS_WIDTH 1 /* DC2_UV_STS */ 246e4ee831fSMark Brown #define WM831X_DC1_UV_STS 0x0001 /* DC1_UV_STS */ 247e4ee831fSMark Brown #define WM831X_DC1_UV_STS_MASK 0x0001 /* DC1_UV_STS */ 248e4ee831fSMark Brown #define WM831X_DC1_UV_STS_SHIFT 0 /* DC1_UV_STS */ 249e4ee831fSMark Brown #define WM831X_DC1_UV_STS_WIDTH 1 /* DC1_UV_STS */ 250e4ee831fSMark Brown 251e4ee831fSMark Brown /* 252e4ee831fSMark Brown * R16469 (0x4055) - LDO UV Status 253e4ee831fSMark Brown */ 254e4ee831fSMark Brown #define WM831X_INTLDO_UV_STS 0x8000 /* INTLDO_UV_STS */ 255e4ee831fSMark Brown #define WM831X_INTLDO_UV_STS_MASK 0x8000 /* INTLDO_UV_STS */ 256e4ee831fSMark Brown #define WM831X_INTLDO_UV_STS_SHIFT 15 /* INTLDO_UV_STS */ 257e4ee831fSMark Brown #define WM831X_INTLDO_UV_STS_WIDTH 1 /* INTLDO_UV_STS */ 258e4ee831fSMark Brown #define WM831X_LDO10_UV_STS 0x0200 /* LDO10_UV_STS */ 259e4ee831fSMark Brown #define WM831X_LDO10_UV_STS_MASK 0x0200 /* LDO10_UV_STS */ 260e4ee831fSMark Brown #define WM831X_LDO10_UV_STS_SHIFT 9 /* LDO10_UV_STS */ 261e4ee831fSMark Brown #define WM831X_LDO10_UV_STS_WIDTH 1 /* LDO10_UV_STS */ 262e4ee831fSMark Brown #define WM831X_LDO9_UV_STS 0x0100 /* LDO9_UV_STS */ 263e4ee831fSMark Brown #define WM831X_LDO9_UV_STS_MASK 0x0100 /* LDO9_UV_STS */ 264e4ee831fSMark Brown #define WM831X_LDO9_UV_STS_SHIFT 8 /* LDO9_UV_STS */ 265e4ee831fSMark Brown #define WM831X_LDO9_UV_STS_WIDTH 1 /* LDO9_UV_STS */ 266e4ee831fSMark Brown #define WM831X_LDO8_UV_STS 0x0080 /* LDO8_UV_STS */ 267e4ee831fSMark Brown #define WM831X_LDO8_UV_STS_MASK 0x0080 /* LDO8_UV_STS */ 268e4ee831fSMark Brown #define WM831X_LDO8_UV_STS_SHIFT 7 /* LDO8_UV_STS */ 269e4ee831fSMark Brown #define WM831X_LDO8_UV_STS_WIDTH 1 /* LDO8_UV_STS */ 270e4ee831fSMark Brown #define WM831X_LDO7_UV_STS 0x0040 /* LDO7_UV_STS */ 271e4ee831fSMark Brown #define WM831X_LDO7_UV_STS_MASK 0x0040 /* LDO7_UV_STS */ 272e4ee831fSMark Brown #define WM831X_LDO7_UV_STS_SHIFT 6 /* LDO7_UV_STS */ 273e4ee831fSMark Brown #define WM831X_LDO7_UV_STS_WIDTH 1 /* LDO7_UV_STS */ 274e4ee831fSMark Brown #define WM831X_LDO6_UV_STS 0x0020 /* LDO6_UV_STS */ 275e4ee831fSMark Brown #define WM831X_LDO6_UV_STS_MASK 0x0020 /* LDO6_UV_STS */ 276e4ee831fSMark Brown #define WM831X_LDO6_UV_STS_SHIFT 5 /* LDO6_UV_STS */ 277e4ee831fSMark Brown #define WM831X_LDO6_UV_STS_WIDTH 1 /* LDO6_UV_STS */ 278e4ee831fSMark Brown #define WM831X_LDO5_UV_STS 0x0010 /* LDO5_UV_STS */ 279e4ee831fSMark Brown #define WM831X_LDO5_UV_STS_MASK 0x0010 /* LDO5_UV_STS */ 280e4ee831fSMark Brown #define WM831X_LDO5_UV_STS_SHIFT 4 /* LDO5_UV_STS */ 281e4ee831fSMark Brown #define WM831X_LDO5_UV_STS_WIDTH 1 /* LDO5_UV_STS */ 282e4ee831fSMark Brown #define WM831X_LDO4_UV_STS 0x0008 /* LDO4_UV_STS */ 283e4ee831fSMark Brown #define WM831X_LDO4_UV_STS_MASK 0x0008 /* LDO4_UV_STS */ 284e4ee831fSMark Brown #define WM831X_LDO4_UV_STS_SHIFT 3 /* LDO4_UV_STS */ 285e4ee831fSMark Brown #define WM831X_LDO4_UV_STS_WIDTH 1 /* LDO4_UV_STS */ 286e4ee831fSMark Brown #define WM831X_LDO3_UV_STS 0x0004 /* LDO3_UV_STS */ 287e4ee831fSMark Brown #define WM831X_LDO3_UV_STS_MASK 0x0004 /* LDO3_UV_STS */ 288e4ee831fSMark Brown #define WM831X_LDO3_UV_STS_SHIFT 2 /* LDO3_UV_STS */ 289e4ee831fSMark Brown #define WM831X_LDO3_UV_STS_WIDTH 1 /* LDO3_UV_STS */ 290e4ee831fSMark Brown #define WM831X_LDO2_UV_STS 0x0002 /* LDO2_UV_STS */ 291e4ee831fSMark Brown #define WM831X_LDO2_UV_STS_MASK 0x0002 /* LDO2_UV_STS */ 292e4ee831fSMark Brown #define WM831X_LDO2_UV_STS_SHIFT 1 /* LDO2_UV_STS */ 293e4ee831fSMark Brown #define WM831X_LDO2_UV_STS_WIDTH 1 /* LDO2_UV_STS */ 294e4ee831fSMark Brown #define WM831X_LDO1_UV_STS 0x0001 /* LDO1_UV_STS */ 295e4ee831fSMark Brown #define WM831X_LDO1_UV_STS_MASK 0x0001 /* LDO1_UV_STS */ 296e4ee831fSMark Brown #define WM831X_LDO1_UV_STS_SHIFT 0 /* LDO1_UV_STS */ 297e4ee831fSMark Brown #define WM831X_LDO1_UV_STS_WIDTH 1 /* LDO1_UV_STS */ 298e4ee831fSMark Brown 299e4ee831fSMark Brown /* 300e4ee831fSMark Brown * R16470 (0x4056) - DC1 Control 1 301e4ee831fSMark Brown */ 302e4ee831fSMark Brown #define WM831X_DC1_RATE_MASK 0xC000 /* DC1_RATE - [15:14] */ 303e4ee831fSMark Brown #define WM831X_DC1_RATE_SHIFT 14 /* DC1_RATE - [15:14] */ 304e4ee831fSMark Brown #define WM831X_DC1_RATE_WIDTH 2 /* DC1_RATE - [15:14] */ 305e4ee831fSMark Brown #define WM831X_DC1_PHASE 0x1000 /* DC1_PHASE */ 306e4ee831fSMark Brown #define WM831X_DC1_PHASE_MASK 0x1000 /* DC1_PHASE */ 307e4ee831fSMark Brown #define WM831X_DC1_PHASE_SHIFT 12 /* DC1_PHASE */ 308e4ee831fSMark Brown #define WM831X_DC1_PHASE_WIDTH 1 /* DC1_PHASE */ 309e4ee831fSMark Brown #define WM831X_DC1_FREQ_MASK 0x0300 /* DC1_FREQ - [9:8] */ 310e4ee831fSMark Brown #define WM831X_DC1_FREQ_SHIFT 8 /* DC1_FREQ - [9:8] */ 311e4ee831fSMark Brown #define WM831X_DC1_FREQ_WIDTH 2 /* DC1_FREQ - [9:8] */ 312e4ee831fSMark Brown #define WM831X_DC1_FLT 0x0080 /* DC1_FLT */ 313e4ee831fSMark Brown #define WM831X_DC1_FLT_MASK 0x0080 /* DC1_FLT */ 314e4ee831fSMark Brown #define WM831X_DC1_FLT_SHIFT 7 /* DC1_FLT */ 315e4ee831fSMark Brown #define WM831X_DC1_FLT_WIDTH 1 /* DC1_FLT */ 316e4ee831fSMark Brown #define WM831X_DC1_SOFT_START_MASK 0x0030 /* DC1_SOFT_START - [5:4] */ 317e4ee831fSMark Brown #define WM831X_DC1_SOFT_START_SHIFT 4 /* DC1_SOFT_START - [5:4] */ 318e4ee831fSMark Brown #define WM831X_DC1_SOFT_START_WIDTH 2 /* DC1_SOFT_START - [5:4] */ 319e4ee831fSMark Brown #define WM831X_DC1_CAP_MASK 0x0003 /* DC1_CAP - [1:0] */ 320e4ee831fSMark Brown #define WM831X_DC1_CAP_SHIFT 0 /* DC1_CAP - [1:0] */ 321e4ee831fSMark Brown #define WM831X_DC1_CAP_WIDTH 2 /* DC1_CAP - [1:0] */ 322e4ee831fSMark Brown 323e4ee831fSMark Brown /* 324e4ee831fSMark Brown * R16471 (0x4057) - DC1 Control 2 325e4ee831fSMark Brown */ 326e4ee831fSMark Brown #define WM831X_DC1_ERR_ACT_MASK 0xC000 /* DC1_ERR_ACT - [15:14] */ 327e4ee831fSMark Brown #define WM831X_DC1_ERR_ACT_SHIFT 14 /* DC1_ERR_ACT - [15:14] */ 328e4ee831fSMark Brown #define WM831X_DC1_ERR_ACT_WIDTH 2 /* DC1_ERR_ACT - [15:14] */ 329e4ee831fSMark Brown #define WM831X_DC1_HWC_SRC_MASK 0x1800 /* DC1_HWC_SRC - [12:11] */ 330e4ee831fSMark Brown #define WM831X_DC1_HWC_SRC_SHIFT 11 /* DC1_HWC_SRC - [12:11] */ 331e4ee831fSMark Brown #define WM831X_DC1_HWC_SRC_WIDTH 2 /* DC1_HWC_SRC - [12:11] */ 332e4ee831fSMark Brown #define WM831X_DC1_HWC_VSEL 0x0400 /* DC1_HWC_VSEL */ 333e4ee831fSMark Brown #define WM831X_DC1_HWC_VSEL_MASK 0x0400 /* DC1_HWC_VSEL */ 334e4ee831fSMark Brown #define WM831X_DC1_HWC_VSEL_SHIFT 10 /* DC1_HWC_VSEL */ 335e4ee831fSMark Brown #define WM831X_DC1_HWC_VSEL_WIDTH 1 /* DC1_HWC_VSEL */ 336e4ee831fSMark Brown #define WM831X_DC1_HWC_MODE_MASK 0x0300 /* DC1_HWC_MODE - [9:8] */ 337e4ee831fSMark Brown #define WM831X_DC1_HWC_MODE_SHIFT 8 /* DC1_HWC_MODE - [9:8] */ 338e4ee831fSMark Brown #define WM831X_DC1_HWC_MODE_WIDTH 2 /* DC1_HWC_MODE - [9:8] */ 339e4ee831fSMark Brown #define WM831X_DC1_HC_THR_MASK 0x0070 /* DC1_HC_THR - [6:4] */ 340e4ee831fSMark Brown #define WM831X_DC1_HC_THR_SHIFT 4 /* DC1_HC_THR - [6:4] */ 341e4ee831fSMark Brown #define WM831X_DC1_HC_THR_WIDTH 3 /* DC1_HC_THR - [6:4] */ 342e4ee831fSMark Brown #define WM831X_DC1_HC_IND_ENA 0x0001 /* DC1_HC_IND_ENA */ 343e4ee831fSMark Brown #define WM831X_DC1_HC_IND_ENA_MASK 0x0001 /* DC1_HC_IND_ENA */ 344e4ee831fSMark Brown #define WM831X_DC1_HC_IND_ENA_SHIFT 0 /* DC1_HC_IND_ENA */ 345e4ee831fSMark Brown #define WM831X_DC1_HC_IND_ENA_WIDTH 1 /* DC1_HC_IND_ENA */ 346e4ee831fSMark Brown 347e4ee831fSMark Brown /* 348e4ee831fSMark Brown * R16472 (0x4058) - DC1 ON Config 349e4ee831fSMark Brown */ 350e4ee831fSMark Brown #define WM831X_DC1_ON_SLOT_MASK 0xE000 /* DC1_ON_SLOT - [15:13] */ 351e4ee831fSMark Brown #define WM831X_DC1_ON_SLOT_SHIFT 13 /* DC1_ON_SLOT - [15:13] */ 352e4ee831fSMark Brown #define WM831X_DC1_ON_SLOT_WIDTH 3 /* DC1_ON_SLOT - [15:13] */ 353e4ee831fSMark Brown #define WM831X_DC1_ON_MODE_MASK 0x0300 /* DC1_ON_MODE - [9:8] */ 354e4ee831fSMark Brown #define WM831X_DC1_ON_MODE_SHIFT 8 /* DC1_ON_MODE - [9:8] */ 355e4ee831fSMark Brown #define WM831X_DC1_ON_MODE_WIDTH 2 /* DC1_ON_MODE - [9:8] */ 356e4ee831fSMark Brown #define WM831X_DC1_ON_VSEL_MASK 0x007F /* DC1_ON_VSEL - [6:0] */ 357e4ee831fSMark Brown #define WM831X_DC1_ON_VSEL_SHIFT 0 /* DC1_ON_VSEL - [6:0] */ 358e4ee831fSMark Brown #define WM831X_DC1_ON_VSEL_WIDTH 7 /* DC1_ON_VSEL - [6:0] */ 359e4ee831fSMark Brown 360e4ee831fSMark Brown /* 361e4ee831fSMark Brown * R16473 (0x4059) - DC1 SLEEP Control 362e4ee831fSMark Brown */ 363e4ee831fSMark Brown #define WM831X_DC1_SLP_SLOT_MASK 0xE000 /* DC1_SLP_SLOT - [15:13] */ 364e4ee831fSMark Brown #define WM831X_DC1_SLP_SLOT_SHIFT 13 /* DC1_SLP_SLOT - [15:13] */ 365e4ee831fSMark Brown #define WM831X_DC1_SLP_SLOT_WIDTH 3 /* DC1_SLP_SLOT - [15:13] */ 366e4ee831fSMark Brown #define WM831X_DC1_SLP_MODE_MASK 0x0300 /* DC1_SLP_MODE - [9:8] */ 367e4ee831fSMark Brown #define WM831X_DC1_SLP_MODE_SHIFT 8 /* DC1_SLP_MODE - [9:8] */ 368e4ee831fSMark Brown #define WM831X_DC1_SLP_MODE_WIDTH 2 /* DC1_SLP_MODE - [9:8] */ 369e4ee831fSMark Brown #define WM831X_DC1_SLP_VSEL_MASK 0x007F /* DC1_SLP_VSEL - [6:0] */ 370e4ee831fSMark Brown #define WM831X_DC1_SLP_VSEL_SHIFT 0 /* DC1_SLP_VSEL - [6:0] */ 371e4ee831fSMark Brown #define WM831X_DC1_SLP_VSEL_WIDTH 7 /* DC1_SLP_VSEL - [6:0] */ 372e4ee831fSMark Brown 373e4ee831fSMark Brown /* 374e4ee831fSMark Brown * R16474 (0x405A) - DC1 DVS Control 375e4ee831fSMark Brown */ 376e4ee831fSMark Brown #define WM831X_DC1_DVS_SRC_MASK 0x1800 /* DC1_DVS_SRC - [12:11] */ 377e4ee831fSMark Brown #define WM831X_DC1_DVS_SRC_SHIFT 11 /* DC1_DVS_SRC - [12:11] */ 378e4ee831fSMark Brown #define WM831X_DC1_DVS_SRC_WIDTH 2 /* DC1_DVS_SRC - [12:11] */ 379e4ee831fSMark Brown #define WM831X_DC1_DVS_VSEL_MASK 0x007F /* DC1_DVS_VSEL - [6:0] */ 380e4ee831fSMark Brown #define WM831X_DC1_DVS_VSEL_SHIFT 0 /* DC1_DVS_VSEL - [6:0] */ 381e4ee831fSMark Brown #define WM831X_DC1_DVS_VSEL_WIDTH 7 /* DC1_DVS_VSEL - [6:0] */ 382e4ee831fSMark Brown 383e4ee831fSMark Brown /* 384e4ee831fSMark Brown * R16475 (0x405B) - DC2 Control 1 385e4ee831fSMark Brown */ 386e4ee831fSMark Brown #define WM831X_DC2_RATE_MASK 0xC000 /* DC2_RATE - [15:14] */ 387e4ee831fSMark Brown #define WM831X_DC2_RATE_SHIFT 14 /* DC2_RATE - [15:14] */ 388e4ee831fSMark Brown #define WM831X_DC2_RATE_WIDTH 2 /* DC2_RATE - [15:14] */ 389e4ee831fSMark Brown #define WM831X_DC2_PHASE 0x1000 /* DC2_PHASE */ 390e4ee831fSMark Brown #define WM831X_DC2_PHASE_MASK 0x1000 /* DC2_PHASE */ 391e4ee831fSMark Brown #define WM831X_DC2_PHASE_SHIFT 12 /* DC2_PHASE */ 392e4ee831fSMark Brown #define WM831X_DC2_PHASE_WIDTH 1 /* DC2_PHASE */ 393e4ee831fSMark Brown #define WM831X_DC2_FREQ_MASK 0x0300 /* DC2_FREQ - [9:8] */ 394e4ee831fSMark Brown #define WM831X_DC2_FREQ_SHIFT 8 /* DC2_FREQ - [9:8] */ 395e4ee831fSMark Brown #define WM831X_DC2_FREQ_WIDTH 2 /* DC2_FREQ - [9:8] */ 396e4ee831fSMark Brown #define WM831X_DC2_FLT 0x0080 /* DC2_FLT */ 397e4ee831fSMark Brown #define WM831X_DC2_FLT_MASK 0x0080 /* DC2_FLT */ 398e4ee831fSMark Brown #define WM831X_DC2_FLT_SHIFT 7 /* DC2_FLT */ 399e4ee831fSMark Brown #define WM831X_DC2_FLT_WIDTH 1 /* DC2_FLT */ 400e4ee831fSMark Brown #define WM831X_DC2_SOFT_START_MASK 0x0030 /* DC2_SOFT_START - [5:4] */ 401e4ee831fSMark Brown #define WM831X_DC2_SOFT_START_SHIFT 4 /* DC2_SOFT_START - [5:4] */ 402e4ee831fSMark Brown #define WM831X_DC2_SOFT_START_WIDTH 2 /* DC2_SOFT_START - [5:4] */ 403e4ee831fSMark Brown #define WM831X_DC2_CAP_MASK 0x0003 /* DC2_CAP - [1:0] */ 404e4ee831fSMark Brown #define WM831X_DC2_CAP_SHIFT 0 /* DC2_CAP - [1:0] */ 405e4ee831fSMark Brown #define WM831X_DC2_CAP_WIDTH 2 /* DC2_CAP - [1:0] */ 406e4ee831fSMark Brown 407e4ee831fSMark Brown /* 408e4ee831fSMark Brown * R16476 (0x405C) - DC2 Control 2 409e4ee831fSMark Brown */ 410e4ee831fSMark Brown #define WM831X_DC2_ERR_ACT_MASK 0xC000 /* DC2_ERR_ACT - [15:14] */ 411e4ee831fSMark Brown #define WM831X_DC2_ERR_ACT_SHIFT 14 /* DC2_ERR_ACT - [15:14] */ 412e4ee831fSMark Brown #define WM831X_DC2_ERR_ACT_WIDTH 2 /* DC2_ERR_ACT - [15:14] */ 413e4ee831fSMark Brown #define WM831X_DC2_HWC_SRC_MASK 0x1800 /* DC2_HWC_SRC - [12:11] */ 414e4ee831fSMark Brown #define WM831X_DC2_HWC_SRC_SHIFT 11 /* DC2_HWC_SRC - [12:11] */ 415e4ee831fSMark Brown #define WM831X_DC2_HWC_SRC_WIDTH 2 /* DC2_HWC_SRC - [12:11] */ 416e4ee831fSMark Brown #define WM831X_DC2_HWC_VSEL 0x0400 /* DC2_HWC_VSEL */ 417e4ee831fSMark Brown #define WM831X_DC2_HWC_VSEL_MASK 0x0400 /* DC2_HWC_VSEL */ 418e4ee831fSMark Brown #define WM831X_DC2_HWC_VSEL_SHIFT 10 /* DC2_HWC_VSEL */ 419e4ee831fSMark Brown #define WM831X_DC2_HWC_VSEL_WIDTH 1 /* DC2_HWC_VSEL */ 420e4ee831fSMark Brown #define WM831X_DC2_HWC_MODE_MASK 0x0300 /* DC2_HWC_MODE - [9:8] */ 421e4ee831fSMark Brown #define WM831X_DC2_HWC_MODE_SHIFT 8 /* DC2_HWC_MODE - [9:8] */ 422e4ee831fSMark Brown #define WM831X_DC2_HWC_MODE_WIDTH 2 /* DC2_HWC_MODE - [9:8] */ 423e4ee831fSMark Brown #define WM831X_DC2_HC_THR_MASK 0x0070 /* DC2_HC_THR - [6:4] */ 424e4ee831fSMark Brown #define WM831X_DC2_HC_THR_SHIFT 4 /* DC2_HC_THR - [6:4] */ 425e4ee831fSMark Brown #define WM831X_DC2_HC_THR_WIDTH 3 /* DC2_HC_THR - [6:4] */ 426e4ee831fSMark Brown #define WM831X_DC2_HC_IND_ENA 0x0001 /* DC2_HC_IND_ENA */ 427e4ee831fSMark Brown #define WM831X_DC2_HC_IND_ENA_MASK 0x0001 /* DC2_HC_IND_ENA */ 428e4ee831fSMark Brown #define WM831X_DC2_HC_IND_ENA_SHIFT 0 /* DC2_HC_IND_ENA */ 429e4ee831fSMark Brown #define WM831X_DC2_HC_IND_ENA_WIDTH 1 /* DC2_HC_IND_ENA */ 430e4ee831fSMark Brown 431e4ee831fSMark Brown /* 432e4ee831fSMark Brown * R16477 (0x405D) - DC2 ON Config 433e4ee831fSMark Brown */ 434e4ee831fSMark Brown #define WM831X_DC2_ON_SLOT_MASK 0xE000 /* DC2_ON_SLOT - [15:13] */ 435e4ee831fSMark Brown #define WM831X_DC2_ON_SLOT_SHIFT 13 /* DC2_ON_SLOT - [15:13] */ 436e4ee831fSMark Brown #define WM831X_DC2_ON_SLOT_WIDTH 3 /* DC2_ON_SLOT - [15:13] */ 437e4ee831fSMark Brown #define WM831X_DC2_ON_MODE_MASK 0x0300 /* DC2_ON_MODE - [9:8] */ 438e4ee831fSMark Brown #define WM831X_DC2_ON_MODE_SHIFT 8 /* DC2_ON_MODE - [9:8] */ 439e4ee831fSMark Brown #define WM831X_DC2_ON_MODE_WIDTH 2 /* DC2_ON_MODE - [9:8] */ 440e4ee831fSMark Brown #define WM831X_DC2_ON_VSEL_MASK 0x007F /* DC2_ON_VSEL - [6:0] */ 441e4ee831fSMark Brown #define WM831X_DC2_ON_VSEL_SHIFT 0 /* DC2_ON_VSEL - [6:0] */ 442e4ee831fSMark Brown #define WM831X_DC2_ON_VSEL_WIDTH 7 /* DC2_ON_VSEL - [6:0] */ 443e4ee831fSMark Brown 444e4ee831fSMark Brown /* 445e4ee831fSMark Brown * R16478 (0x405E) - DC2 SLEEP Control 446e4ee831fSMark Brown */ 447e4ee831fSMark Brown #define WM831X_DC2_SLP_SLOT_MASK 0xE000 /* DC2_SLP_SLOT - [15:13] */ 448e4ee831fSMark Brown #define WM831X_DC2_SLP_SLOT_SHIFT 13 /* DC2_SLP_SLOT - [15:13] */ 449e4ee831fSMark Brown #define WM831X_DC2_SLP_SLOT_WIDTH 3 /* DC2_SLP_SLOT - [15:13] */ 450e4ee831fSMark Brown #define WM831X_DC2_SLP_MODE_MASK 0x0300 /* DC2_SLP_MODE - [9:8] */ 451e4ee831fSMark Brown #define WM831X_DC2_SLP_MODE_SHIFT 8 /* DC2_SLP_MODE - [9:8] */ 452e4ee831fSMark Brown #define WM831X_DC2_SLP_MODE_WIDTH 2 /* DC2_SLP_MODE - [9:8] */ 453e4ee831fSMark Brown #define WM831X_DC2_SLP_VSEL_MASK 0x007F /* DC2_SLP_VSEL - [6:0] */ 454e4ee831fSMark Brown #define WM831X_DC2_SLP_VSEL_SHIFT 0 /* DC2_SLP_VSEL - [6:0] */ 455e4ee831fSMark Brown #define WM831X_DC2_SLP_VSEL_WIDTH 7 /* DC2_SLP_VSEL - [6:0] */ 456e4ee831fSMark Brown 457e4ee831fSMark Brown /* 458e4ee831fSMark Brown * R16479 (0x405F) - DC2 DVS Control 459e4ee831fSMark Brown */ 460e4ee831fSMark Brown #define WM831X_DC2_DVS_SRC_MASK 0x1800 /* DC2_DVS_SRC - [12:11] */ 461e4ee831fSMark Brown #define WM831X_DC2_DVS_SRC_SHIFT 11 /* DC2_DVS_SRC - [12:11] */ 462e4ee831fSMark Brown #define WM831X_DC2_DVS_SRC_WIDTH 2 /* DC2_DVS_SRC - [12:11] */ 463e4ee831fSMark Brown #define WM831X_DC2_DVS_VSEL_MASK 0x007F /* DC2_DVS_VSEL - [6:0] */ 464e4ee831fSMark Brown #define WM831X_DC2_DVS_VSEL_SHIFT 0 /* DC2_DVS_VSEL - [6:0] */ 465e4ee831fSMark Brown #define WM831X_DC2_DVS_VSEL_WIDTH 7 /* DC2_DVS_VSEL - [6:0] */ 466e4ee831fSMark Brown 467e4ee831fSMark Brown /* 468e4ee831fSMark Brown * R16480 (0x4060) - DC3 Control 1 469e4ee831fSMark Brown */ 470e4ee831fSMark Brown #define WM831X_DC3_PHASE 0x1000 /* DC3_PHASE */ 471e4ee831fSMark Brown #define WM831X_DC3_PHASE_MASK 0x1000 /* DC3_PHASE */ 472e4ee831fSMark Brown #define WM831X_DC3_PHASE_SHIFT 12 /* DC3_PHASE */ 473e4ee831fSMark Brown #define WM831X_DC3_PHASE_WIDTH 1 /* DC3_PHASE */ 474e4ee831fSMark Brown #define WM831X_DC3_FLT 0x0080 /* DC3_FLT */ 475e4ee831fSMark Brown #define WM831X_DC3_FLT_MASK 0x0080 /* DC3_FLT */ 476e4ee831fSMark Brown #define WM831X_DC3_FLT_SHIFT 7 /* DC3_FLT */ 477e4ee831fSMark Brown #define WM831X_DC3_FLT_WIDTH 1 /* DC3_FLT */ 478e4ee831fSMark Brown #define WM831X_DC3_SOFT_START_MASK 0x0030 /* DC3_SOFT_START - [5:4] */ 479e4ee831fSMark Brown #define WM831X_DC3_SOFT_START_SHIFT 4 /* DC3_SOFT_START - [5:4] */ 480e4ee831fSMark Brown #define WM831X_DC3_SOFT_START_WIDTH 2 /* DC3_SOFT_START - [5:4] */ 481e4ee831fSMark Brown #define WM831X_DC3_STNBY_LIM_MASK 0x000C /* DC3_STNBY_LIM - [3:2] */ 482e4ee831fSMark Brown #define WM831X_DC3_STNBY_LIM_SHIFT 2 /* DC3_STNBY_LIM - [3:2] */ 483e4ee831fSMark Brown #define WM831X_DC3_STNBY_LIM_WIDTH 2 /* DC3_STNBY_LIM - [3:2] */ 484e4ee831fSMark Brown #define WM831X_DC3_CAP_MASK 0x0003 /* DC3_CAP - [1:0] */ 485e4ee831fSMark Brown #define WM831X_DC3_CAP_SHIFT 0 /* DC3_CAP - [1:0] */ 486e4ee831fSMark Brown #define WM831X_DC3_CAP_WIDTH 2 /* DC3_CAP - [1:0] */ 487e4ee831fSMark Brown 488e4ee831fSMark Brown /* 489e4ee831fSMark Brown * R16481 (0x4061) - DC3 Control 2 490e4ee831fSMark Brown */ 491e4ee831fSMark Brown #define WM831X_DC3_ERR_ACT_MASK 0xC000 /* DC3_ERR_ACT - [15:14] */ 492e4ee831fSMark Brown #define WM831X_DC3_ERR_ACT_SHIFT 14 /* DC3_ERR_ACT - [15:14] */ 493e4ee831fSMark Brown #define WM831X_DC3_ERR_ACT_WIDTH 2 /* DC3_ERR_ACT - [15:14] */ 494e4ee831fSMark Brown #define WM831X_DC3_HWC_SRC_MASK 0x1800 /* DC3_HWC_SRC - [12:11] */ 495e4ee831fSMark Brown #define WM831X_DC3_HWC_SRC_SHIFT 11 /* DC3_HWC_SRC - [12:11] */ 496e4ee831fSMark Brown #define WM831X_DC3_HWC_SRC_WIDTH 2 /* DC3_HWC_SRC - [12:11] */ 497e4ee831fSMark Brown #define WM831X_DC3_HWC_VSEL 0x0400 /* DC3_HWC_VSEL */ 498e4ee831fSMark Brown #define WM831X_DC3_HWC_VSEL_MASK 0x0400 /* DC3_HWC_VSEL */ 499e4ee831fSMark Brown #define WM831X_DC3_HWC_VSEL_SHIFT 10 /* DC3_HWC_VSEL */ 500e4ee831fSMark Brown #define WM831X_DC3_HWC_VSEL_WIDTH 1 /* DC3_HWC_VSEL */ 501e4ee831fSMark Brown #define WM831X_DC3_HWC_MODE_MASK 0x0300 /* DC3_HWC_MODE - [9:8] */ 502e4ee831fSMark Brown #define WM831X_DC3_HWC_MODE_SHIFT 8 /* DC3_HWC_MODE - [9:8] */ 503e4ee831fSMark Brown #define WM831X_DC3_HWC_MODE_WIDTH 2 /* DC3_HWC_MODE - [9:8] */ 504e4ee831fSMark Brown #define WM831X_DC3_OVP 0x0080 /* DC3_OVP */ 505e4ee831fSMark Brown #define WM831X_DC3_OVP_MASK 0x0080 /* DC3_OVP */ 506e4ee831fSMark Brown #define WM831X_DC3_OVP_SHIFT 7 /* DC3_OVP */ 507e4ee831fSMark Brown #define WM831X_DC3_OVP_WIDTH 1 /* DC3_OVP */ 508e4ee831fSMark Brown 509e4ee831fSMark Brown /* 510e4ee831fSMark Brown * R16482 (0x4062) - DC3 ON Config 511e4ee831fSMark Brown */ 512e4ee831fSMark Brown #define WM831X_DC3_ON_SLOT_MASK 0xE000 /* DC3_ON_SLOT - [15:13] */ 513e4ee831fSMark Brown #define WM831X_DC3_ON_SLOT_SHIFT 13 /* DC3_ON_SLOT - [15:13] */ 514e4ee831fSMark Brown #define WM831X_DC3_ON_SLOT_WIDTH 3 /* DC3_ON_SLOT - [15:13] */ 515e4ee831fSMark Brown #define WM831X_DC3_ON_MODE_MASK 0x0300 /* DC3_ON_MODE - [9:8] */ 516e4ee831fSMark Brown #define WM831X_DC3_ON_MODE_SHIFT 8 /* DC3_ON_MODE - [9:8] */ 517e4ee831fSMark Brown #define WM831X_DC3_ON_MODE_WIDTH 2 /* DC3_ON_MODE - [9:8] */ 518e4ee831fSMark Brown #define WM831X_DC3_ON_VSEL_MASK 0x007F /* DC3_ON_VSEL - [6:0] */ 519e4ee831fSMark Brown #define WM831X_DC3_ON_VSEL_SHIFT 0 /* DC3_ON_VSEL - [6:0] */ 520e4ee831fSMark Brown #define WM831X_DC3_ON_VSEL_WIDTH 7 /* DC3_ON_VSEL - [6:0] */ 521e4ee831fSMark Brown 522e4ee831fSMark Brown /* 523e4ee831fSMark Brown * R16483 (0x4063) - DC3 SLEEP Control 524e4ee831fSMark Brown */ 525e4ee831fSMark Brown #define WM831X_DC3_SLP_SLOT_MASK 0xE000 /* DC3_SLP_SLOT - [15:13] */ 526e4ee831fSMark Brown #define WM831X_DC3_SLP_SLOT_SHIFT 13 /* DC3_SLP_SLOT - [15:13] */ 527e4ee831fSMark Brown #define WM831X_DC3_SLP_SLOT_WIDTH 3 /* DC3_SLP_SLOT - [15:13] */ 528e4ee831fSMark Brown #define WM831X_DC3_SLP_MODE_MASK 0x0300 /* DC3_SLP_MODE - [9:8] */ 529e4ee831fSMark Brown #define WM831X_DC3_SLP_MODE_SHIFT 8 /* DC3_SLP_MODE - [9:8] */ 530e4ee831fSMark Brown #define WM831X_DC3_SLP_MODE_WIDTH 2 /* DC3_SLP_MODE - [9:8] */ 531e4ee831fSMark Brown #define WM831X_DC3_SLP_VSEL_MASK 0x007F /* DC3_SLP_VSEL - [6:0] */ 532e4ee831fSMark Brown #define WM831X_DC3_SLP_VSEL_SHIFT 0 /* DC3_SLP_VSEL - [6:0] */ 533e4ee831fSMark Brown #define WM831X_DC3_SLP_VSEL_WIDTH 7 /* DC3_SLP_VSEL - [6:0] */ 534e4ee831fSMark Brown 535e4ee831fSMark Brown /* 536e4ee831fSMark Brown * R16484 (0x4064) - DC4 Control 537e4ee831fSMark Brown */ 538e4ee831fSMark Brown #define WM831X_DC4_ERR_ACT_MASK 0xC000 /* DC4_ERR_ACT - [15:14] */ 539e4ee831fSMark Brown #define WM831X_DC4_ERR_ACT_SHIFT 14 /* DC4_ERR_ACT - [15:14] */ 540e4ee831fSMark Brown #define WM831X_DC4_ERR_ACT_WIDTH 2 /* DC4_ERR_ACT - [15:14] */ 541e4ee831fSMark Brown #define WM831X_DC4_HWC_SRC_MASK 0x1800 /* DC4_HWC_SRC - [12:11] */ 542e4ee831fSMark Brown #define WM831X_DC4_HWC_SRC_SHIFT 11 /* DC4_HWC_SRC - [12:11] */ 543e4ee831fSMark Brown #define WM831X_DC4_HWC_SRC_WIDTH 2 /* DC4_HWC_SRC - [12:11] */ 544e4ee831fSMark Brown #define WM831X_DC4_HWC_MODE 0x0100 /* DC4_HWC_MODE */ 545e4ee831fSMark Brown #define WM831X_DC4_HWC_MODE_MASK 0x0100 /* DC4_HWC_MODE */ 546e4ee831fSMark Brown #define WM831X_DC4_HWC_MODE_SHIFT 8 /* DC4_HWC_MODE */ 547e4ee831fSMark Brown #define WM831X_DC4_HWC_MODE_WIDTH 1 /* DC4_HWC_MODE */ 548e4ee831fSMark Brown #define WM831X_DC4_RANGE_MASK 0x000C /* DC4_RANGE - [3:2] */ 549e4ee831fSMark Brown #define WM831X_DC4_RANGE_SHIFT 2 /* DC4_RANGE - [3:2] */ 550e4ee831fSMark Brown #define WM831X_DC4_RANGE_WIDTH 2 /* DC4_RANGE - [3:2] */ 551e4ee831fSMark Brown #define WM831X_DC4_FBSRC 0x0001 /* DC4_FBSRC */ 552e4ee831fSMark Brown #define WM831X_DC4_FBSRC_MASK 0x0001 /* DC4_FBSRC */ 553e4ee831fSMark Brown #define WM831X_DC4_FBSRC_SHIFT 0 /* DC4_FBSRC */ 554e4ee831fSMark Brown #define WM831X_DC4_FBSRC_WIDTH 1 /* DC4_FBSRC */ 555e4ee831fSMark Brown 556e4ee831fSMark Brown /* 557e4ee831fSMark Brown * R16485 (0x4065) - DC4 SLEEP Control 558e4ee831fSMark Brown */ 559e4ee831fSMark Brown #define WM831X_DC4_SLPENA 0x0100 /* DC4_SLPENA */ 560e4ee831fSMark Brown #define WM831X_DC4_SLPENA_MASK 0x0100 /* DC4_SLPENA */ 561e4ee831fSMark Brown #define WM831X_DC4_SLPENA_SHIFT 8 /* DC4_SLPENA */ 562e4ee831fSMark Brown #define WM831X_DC4_SLPENA_WIDTH 1 /* DC4_SLPENA */ 563e4ee831fSMark Brown 564e4ee831fSMark Brown /* 565d1c6b4feSMark Brown * R16488 (0x4068) - LDO1 Control 566d1c6b4feSMark Brown */ 567d1c6b4feSMark Brown #define WM831X_LDO1_ERR_ACT_MASK 0xC000 /* LDO1_ERR_ACT - [15:14] */ 568d1c6b4feSMark Brown #define WM831X_LDO1_ERR_ACT_SHIFT 14 /* LDO1_ERR_ACT - [15:14] */ 569d1c6b4feSMark Brown #define WM831X_LDO1_ERR_ACT_WIDTH 2 /* LDO1_ERR_ACT - [15:14] */ 570d1c6b4feSMark Brown #define WM831X_LDO1_HWC_SRC_MASK 0x1800 /* LDO1_HWC_SRC - [12:11] */ 571d1c6b4feSMark Brown #define WM831X_LDO1_HWC_SRC_SHIFT 11 /* LDO1_HWC_SRC - [12:11] */ 572d1c6b4feSMark Brown #define WM831X_LDO1_HWC_SRC_WIDTH 2 /* LDO1_HWC_SRC - [12:11] */ 573d1c6b4feSMark Brown #define WM831X_LDO1_HWC_VSEL 0x0400 /* LDO1_HWC_VSEL */ 574d1c6b4feSMark Brown #define WM831X_LDO1_HWC_VSEL_MASK 0x0400 /* LDO1_HWC_VSEL */ 575d1c6b4feSMark Brown #define WM831X_LDO1_HWC_VSEL_SHIFT 10 /* LDO1_HWC_VSEL */ 576d1c6b4feSMark Brown #define WM831X_LDO1_HWC_VSEL_WIDTH 1 /* LDO1_HWC_VSEL */ 577d1c6b4feSMark Brown #define WM831X_LDO1_HWC_MODE_MASK 0x0300 /* LDO1_HWC_MODE - [9:8] */ 578d1c6b4feSMark Brown #define WM831X_LDO1_HWC_MODE_SHIFT 8 /* LDO1_HWC_MODE - [9:8] */ 579d1c6b4feSMark Brown #define WM831X_LDO1_HWC_MODE_WIDTH 2 /* LDO1_HWC_MODE - [9:8] */ 580d1c6b4feSMark Brown #define WM831X_LDO1_FLT 0x0080 /* LDO1_FLT */ 581d1c6b4feSMark Brown #define WM831X_LDO1_FLT_MASK 0x0080 /* LDO1_FLT */ 582d1c6b4feSMark Brown #define WM831X_LDO1_FLT_SHIFT 7 /* LDO1_FLT */ 583d1c6b4feSMark Brown #define WM831X_LDO1_FLT_WIDTH 1 /* LDO1_FLT */ 584d1c6b4feSMark Brown #define WM831X_LDO1_SWI 0x0040 /* LDO1_SWI */ 585d1c6b4feSMark Brown #define WM831X_LDO1_SWI_MASK 0x0040 /* LDO1_SWI */ 586d1c6b4feSMark Brown #define WM831X_LDO1_SWI_SHIFT 6 /* LDO1_SWI */ 587d1c6b4feSMark Brown #define WM831X_LDO1_SWI_WIDTH 1 /* LDO1_SWI */ 588d1c6b4feSMark Brown #define WM831X_LDO1_LP_MODE 0x0001 /* LDO1_LP_MODE */ 589d1c6b4feSMark Brown #define WM831X_LDO1_LP_MODE_MASK 0x0001 /* LDO1_LP_MODE */ 590d1c6b4feSMark Brown #define WM831X_LDO1_LP_MODE_SHIFT 0 /* LDO1_LP_MODE */ 591d1c6b4feSMark Brown #define WM831X_LDO1_LP_MODE_WIDTH 1 /* LDO1_LP_MODE */ 592d1c6b4feSMark Brown 593d1c6b4feSMark Brown /* 594d1c6b4feSMark Brown * R16489 (0x4069) - LDO1 ON Control 595d1c6b4feSMark Brown */ 596d1c6b4feSMark Brown #define WM831X_LDO1_ON_SLOT_MASK 0xE000 /* LDO1_ON_SLOT - [15:13] */ 597d1c6b4feSMark Brown #define WM831X_LDO1_ON_SLOT_SHIFT 13 /* LDO1_ON_SLOT - [15:13] */ 598d1c6b4feSMark Brown #define WM831X_LDO1_ON_SLOT_WIDTH 3 /* LDO1_ON_SLOT - [15:13] */ 599d1c6b4feSMark Brown #define WM831X_LDO1_ON_MODE 0x0100 /* LDO1_ON_MODE */ 600d1c6b4feSMark Brown #define WM831X_LDO1_ON_MODE_MASK 0x0100 /* LDO1_ON_MODE */ 601d1c6b4feSMark Brown #define WM831X_LDO1_ON_MODE_SHIFT 8 /* LDO1_ON_MODE */ 602d1c6b4feSMark Brown #define WM831X_LDO1_ON_MODE_WIDTH 1 /* LDO1_ON_MODE */ 603d1c6b4feSMark Brown #define WM831X_LDO1_ON_VSEL_MASK 0x001F /* LDO1_ON_VSEL - [4:0] */ 604d1c6b4feSMark Brown #define WM831X_LDO1_ON_VSEL_SHIFT 0 /* LDO1_ON_VSEL - [4:0] */ 605d1c6b4feSMark Brown #define WM831X_LDO1_ON_VSEL_WIDTH 5 /* LDO1_ON_VSEL - [4:0] */ 606d1c6b4feSMark Brown 607d1c6b4feSMark Brown /* 608d1c6b4feSMark Brown * R16490 (0x406A) - LDO1 SLEEP Control 609d1c6b4feSMark Brown */ 610d1c6b4feSMark Brown #define WM831X_LDO1_SLP_SLOT_MASK 0xE000 /* LDO1_SLP_SLOT - [15:13] */ 611d1c6b4feSMark Brown #define WM831X_LDO1_SLP_SLOT_SHIFT 13 /* LDO1_SLP_SLOT - [15:13] */ 612d1c6b4feSMark Brown #define WM831X_LDO1_SLP_SLOT_WIDTH 3 /* LDO1_SLP_SLOT - [15:13] */ 613d1c6b4feSMark Brown #define WM831X_LDO1_SLP_MODE 0x0100 /* LDO1_SLP_MODE */ 614d1c6b4feSMark Brown #define WM831X_LDO1_SLP_MODE_MASK 0x0100 /* LDO1_SLP_MODE */ 615d1c6b4feSMark Brown #define WM831X_LDO1_SLP_MODE_SHIFT 8 /* LDO1_SLP_MODE */ 616d1c6b4feSMark Brown #define WM831X_LDO1_SLP_MODE_WIDTH 1 /* LDO1_SLP_MODE */ 617d1c6b4feSMark Brown #define WM831X_LDO1_SLP_VSEL_MASK 0x001F /* LDO1_SLP_VSEL - [4:0] */ 618d1c6b4feSMark Brown #define WM831X_LDO1_SLP_VSEL_SHIFT 0 /* LDO1_SLP_VSEL - [4:0] */ 619d1c6b4feSMark Brown #define WM831X_LDO1_SLP_VSEL_WIDTH 5 /* LDO1_SLP_VSEL - [4:0] */ 620d1c6b4feSMark Brown 621d1c6b4feSMark Brown /* 622d1c6b4feSMark Brown * R16491 (0x406B) - LDO2 Control 623d1c6b4feSMark Brown */ 624d1c6b4feSMark Brown #define WM831X_LDO2_ERR_ACT_MASK 0xC000 /* LDO2_ERR_ACT - [15:14] */ 625d1c6b4feSMark Brown #define WM831X_LDO2_ERR_ACT_SHIFT 14 /* LDO2_ERR_ACT - [15:14] */ 626d1c6b4feSMark Brown #define WM831X_LDO2_ERR_ACT_WIDTH 2 /* LDO2_ERR_ACT - [15:14] */ 627d1c6b4feSMark Brown #define WM831X_LDO2_HWC_SRC_MASK 0x1800 /* LDO2_HWC_SRC - [12:11] */ 628d1c6b4feSMark Brown #define WM831X_LDO2_HWC_SRC_SHIFT 11 /* LDO2_HWC_SRC - [12:11] */ 629d1c6b4feSMark Brown #define WM831X_LDO2_HWC_SRC_WIDTH 2 /* LDO2_HWC_SRC - [12:11] */ 630d1c6b4feSMark Brown #define WM831X_LDO2_HWC_VSEL 0x0400 /* LDO2_HWC_VSEL */ 631d1c6b4feSMark Brown #define WM831X_LDO2_HWC_VSEL_MASK 0x0400 /* LDO2_HWC_VSEL */ 632d1c6b4feSMark Brown #define WM831X_LDO2_HWC_VSEL_SHIFT 10 /* LDO2_HWC_VSEL */ 633d1c6b4feSMark Brown #define WM831X_LDO2_HWC_VSEL_WIDTH 1 /* LDO2_HWC_VSEL */ 634d1c6b4feSMark Brown #define WM831X_LDO2_HWC_MODE_MASK 0x0300 /* LDO2_HWC_MODE - [9:8] */ 635d1c6b4feSMark Brown #define WM831X_LDO2_HWC_MODE_SHIFT 8 /* LDO2_HWC_MODE - [9:8] */ 636d1c6b4feSMark Brown #define WM831X_LDO2_HWC_MODE_WIDTH 2 /* LDO2_HWC_MODE - [9:8] */ 637d1c6b4feSMark Brown #define WM831X_LDO2_FLT 0x0080 /* LDO2_FLT */ 638d1c6b4feSMark Brown #define WM831X_LDO2_FLT_MASK 0x0080 /* LDO2_FLT */ 639d1c6b4feSMark Brown #define WM831X_LDO2_FLT_SHIFT 7 /* LDO2_FLT */ 640d1c6b4feSMark Brown #define WM831X_LDO2_FLT_WIDTH 1 /* LDO2_FLT */ 641d1c6b4feSMark Brown #define WM831X_LDO2_SWI 0x0040 /* LDO2_SWI */ 642d1c6b4feSMark Brown #define WM831X_LDO2_SWI_MASK 0x0040 /* LDO2_SWI */ 643d1c6b4feSMark Brown #define WM831X_LDO2_SWI_SHIFT 6 /* LDO2_SWI */ 644d1c6b4feSMark Brown #define WM831X_LDO2_SWI_WIDTH 1 /* LDO2_SWI */ 645d1c6b4feSMark Brown #define WM831X_LDO2_LP_MODE 0x0001 /* LDO2_LP_MODE */ 646d1c6b4feSMark Brown #define WM831X_LDO2_LP_MODE_MASK 0x0001 /* LDO2_LP_MODE */ 647d1c6b4feSMark Brown #define WM831X_LDO2_LP_MODE_SHIFT 0 /* LDO2_LP_MODE */ 648d1c6b4feSMark Brown #define WM831X_LDO2_LP_MODE_WIDTH 1 /* LDO2_LP_MODE */ 649d1c6b4feSMark Brown 650d1c6b4feSMark Brown /* 651d1c6b4feSMark Brown * R16492 (0x406C) - LDO2 ON Control 652d1c6b4feSMark Brown */ 653d1c6b4feSMark Brown #define WM831X_LDO2_ON_SLOT_MASK 0xE000 /* LDO2_ON_SLOT - [15:13] */ 654d1c6b4feSMark Brown #define WM831X_LDO2_ON_SLOT_SHIFT 13 /* LDO2_ON_SLOT - [15:13] */ 655d1c6b4feSMark Brown #define WM831X_LDO2_ON_SLOT_WIDTH 3 /* LDO2_ON_SLOT - [15:13] */ 656d1c6b4feSMark Brown #define WM831X_LDO2_ON_MODE 0x0100 /* LDO2_ON_MODE */ 657d1c6b4feSMark Brown #define WM831X_LDO2_ON_MODE_MASK 0x0100 /* LDO2_ON_MODE */ 658d1c6b4feSMark Brown #define WM831X_LDO2_ON_MODE_SHIFT 8 /* LDO2_ON_MODE */ 659d1c6b4feSMark Brown #define WM831X_LDO2_ON_MODE_WIDTH 1 /* LDO2_ON_MODE */ 660d1c6b4feSMark Brown #define WM831X_LDO2_ON_VSEL_MASK 0x001F /* LDO2_ON_VSEL - [4:0] */ 661d1c6b4feSMark Brown #define WM831X_LDO2_ON_VSEL_SHIFT 0 /* LDO2_ON_VSEL - [4:0] */ 662d1c6b4feSMark Brown #define WM831X_LDO2_ON_VSEL_WIDTH 5 /* LDO2_ON_VSEL - [4:0] */ 663d1c6b4feSMark Brown 664d1c6b4feSMark Brown /* 665d1c6b4feSMark Brown * R16493 (0x406D) - LDO2 SLEEP Control 666d1c6b4feSMark Brown */ 667d1c6b4feSMark Brown #define WM831X_LDO2_SLP_SLOT_MASK 0xE000 /* LDO2_SLP_SLOT - [15:13] */ 668d1c6b4feSMark Brown #define WM831X_LDO2_SLP_SLOT_SHIFT 13 /* LDO2_SLP_SLOT - [15:13] */ 669d1c6b4feSMark Brown #define WM831X_LDO2_SLP_SLOT_WIDTH 3 /* LDO2_SLP_SLOT - [15:13] */ 670d1c6b4feSMark Brown #define WM831X_LDO2_SLP_MODE 0x0100 /* LDO2_SLP_MODE */ 671d1c6b4feSMark Brown #define WM831X_LDO2_SLP_MODE_MASK 0x0100 /* LDO2_SLP_MODE */ 672d1c6b4feSMark Brown #define WM831X_LDO2_SLP_MODE_SHIFT 8 /* LDO2_SLP_MODE */ 673d1c6b4feSMark Brown #define WM831X_LDO2_SLP_MODE_WIDTH 1 /* LDO2_SLP_MODE */ 674d1c6b4feSMark Brown #define WM831X_LDO2_SLP_VSEL_MASK 0x001F /* LDO2_SLP_VSEL - [4:0] */ 675d1c6b4feSMark Brown #define WM831X_LDO2_SLP_VSEL_SHIFT 0 /* LDO2_SLP_VSEL - [4:0] */ 676d1c6b4feSMark Brown #define WM831X_LDO2_SLP_VSEL_WIDTH 5 /* LDO2_SLP_VSEL - [4:0] */ 677d1c6b4feSMark Brown 678d1c6b4feSMark Brown /* 679d1c6b4feSMark Brown * R16494 (0x406E) - LDO3 Control 680d1c6b4feSMark Brown */ 681d1c6b4feSMark Brown #define WM831X_LDO3_ERR_ACT_MASK 0xC000 /* LDO3_ERR_ACT - [15:14] */ 682d1c6b4feSMark Brown #define WM831X_LDO3_ERR_ACT_SHIFT 14 /* LDO3_ERR_ACT - [15:14] */ 683d1c6b4feSMark Brown #define WM831X_LDO3_ERR_ACT_WIDTH 2 /* LDO3_ERR_ACT - [15:14] */ 684d1c6b4feSMark Brown #define WM831X_LDO3_HWC_SRC_MASK 0x1800 /* LDO3_HWC_SRC - [12:11] */ 685d1c6b4feSMark Brown #define WM831X_LDO3_HWC_SRC_SHIFT 11 /* LDO3_HWC_SRC - [12:11] */ 686d1c6b4feSMark Brown #define WM831X_LDO3_HWC_SRC_WIDTH 2 /* LDO3_HWC_SRC - [12:11] */ 687d1c6b4feSMark Brown #define WM831X_LDO3_HWC_VSEL 0x0400 /* LDO3_HWC_VSEL */ 688d1c6b4feSMark Brown #define WM831X_LDO3_HWC_VSEL_MASK 0x0400 /* LDO3_HWC_VSEL */ 689d1c6b4feSMark Brown #define WM831X_LDO3_HWC_VSEL_SHIFT 10 /* LDO3_HWC_VSEL */ 690d1c6b4feSMark Brown #define WM831X_LDO3_HWC_VSEL_WIDTH 1 /* LDO3_HWC_VSEL */ 691d1c6b4feSMark Brown #define WM831X_LDO3_HWC_MODE_MASK 0x0300 /* LDO3_HWC_MODE - [9:8] */ 692d1c6b4feSMark Brown #define WM831X_LDO3_HWC_MODE_SHIFT 8 /* LDO3_HWC_MODE - [9:8] */ 693d1c6b4feSMark Brown #define WM831X_LDO3_HWC_MODE_WIDTH 2 /* LDO3_HWC_MODE - [9:8] */ 694d1c6b4feSMark Brown #define WM831X_LDO3_FLT 0x0080 /* LDO3_FLT */ 695d1c6b4feSMark Brown #define WM831X_LDO3_FLT_MASK 0x0080 /* LDO3_FLT */ 696d1c6b4feSMark Brown #define WM831X_LDO3_FLT_SHIFT 7 /* LDO3_FLT */ 697d1c6b4feSMark Brown #define WM831X_LDO3_FLT_WIDTH 1 /* LDO3_FLT */ 698d1c6b4feSMark Brown #define WM831X_LDO3_SWI 0x0040 /* LDO3_SWI */ 699d1c6b4feSMark Brown #define WM831X_LDO3_SWI_MASK 0x0040 /* LDO3_SWI */ 700d1c6b4feSMark Brown #define WM831X_LDO3_SWI_SHIFT 6 /* LDO3_SWI */ 701d1c6b4feSMark Brown #define WM831X_LDO3_SWI_WIDTH 1 /* LDO3_SWI */ 702d1c6b4feSMark Brown #define WM831X_LDO3_LP_MODE 0x0001 /* LDO3_LP_MODE */ 703d1c6b4feSMark Brown #define WM831X_LDO3_LP_MODE_MASK 0x0001 /* LDO3_LP_MODE */ 704d1c6b4feSMark Brown #define WM831X_LDO3_LP_MODE_SHIFT 0 /* LDO3_LP_MODE */ 705d1c6b4feSMark Brown #define WM831X_LDO3_LP_MODE_WIDTH 1 /* LDO3_LP_MODE */ 706d1c6b4feSMark Brown 707d1c6b4feSMark Brown /* 708d1c6b4feSMark Brown * R16495 (0x406F) - LDO3 ON Control 709d1c6b4feSMark Brown */ 710d1c6b4feSMark Brown #define WM831X_LDO3_ON_SLOT_MASK 0xE000 /* LDO3_ON_SLOT - [15:13] */ 711d1c6b4feSMark Brown #define WM831X_LDO3_ON_SLOT_SHIFT 13 /* LDO3_ON_SLOT - [15:13] */ 712d1c6b4feSMark Brown #define WM831X_LDO3_ON_SLOT_WIDTH 3 /* LDO3_ON_SLOT - [15:13] */ 713d1c6b4feSMark Brown #define WM831X_LDO3_ON_MODE 0x0100 /* LDO3_ON_MODE */ 714d1c6b4feSMark Brown #define WM831X_LDO3_ON_MODE_MASK 0x0100 /* LDO3_ON_MODE */ 715d1c6b4feSMark Brown #define WM831X_LDO3_ON_MODE_SHIFT 8 /* LDO3_ON_MODE */ 716d1c6b4feSMark Brown #define WM831X_LDO3_ON_MODE_WIDTH 1 /* LDO3_ON_MODE */ 717d1c6b4feSMark Brown #define WM831X_LDO3_ON_VSEL_MASK 0x001F /* LDO3_ON_VSEL - [4:0] */ 718d1c6b4feSMark Brown #define WM831X_LDO3_ON_VSEL_SHIFT 0 /* LDO3_ON_VSEL - [4:0] */ 719d1c6b4feSMark Brown #define WM831X_LDO3_ON_VSEL_WIDTH 5 /* LDO3_ON_VSEL - [4:0] */ 720d1c6b4feSMark Brown 721d1c6b4feSMark Brown /* 722d1c6b4feSMark Brown * R16496 (0x4070) - LDO3 SLEEP Control 723d1c6b4feSMark Brown */ 724d1c6b4feSMark Brown #define WM831X_LDO3_SLP_SLOT_MASK 0xE000 /* LDO3_SLP_SLOT - [15:13] */ 725d1c6b4feSMark Brown #define WM831X_LDO3_SLP_SLOT_SHIFT 13 /* LDO3_SLP_SLOT - [15:13] */ 726d1c6b4feSMark Brown #define WM831X_LDO3_SLP_SLOT_WIDTH 3 /* LDO3_SLP_SLOT - [15:13] */ 727d1c6b4feSMark Brown #define WM831X_LDO3_SLP_MODE 0x0100 /* LDO3_SLP_MODE */ 728d1c6b4feSMark Brown #define WM831X_LDO3_SLP_MODE_MASK 0x0100 /* LDO3_SLP_MODE */ 729d1c6b4feSMark Brown #define WM831X_LDO3_SLP_MODE_SHIFT 8 /* LDO3_SLP_MODE */ 730d1c6b4feSMark Brown #define WM831X_LDO3_SLP_MODE_WIDTH 1 /* LDO3_SLP_MODE */ 731d1c6b4feSMark Brown #define WM831X_LDO3_SLP_VSEL_MASK 0x001F /* LDO3_SLP_VSEL - [4:0] */ 732d1c6b4feSMark Brown #define WM831X_LDO3_SLP_VSEL_SHIFT 0 /* LDO3_SLP_VSEL - [4:0] */ 733d1c6b4feSMark Brown #define WM831X_LDO3_SLP_VSEL_WIDTH 5 /* LDO3_SLP_VSEL - [4:0] */ 734d1c6b4feSMark Brown 735d1c6b4feSMark Brown /* 736d1c6b4feSMark Brown * R16497 (0x4071) - LDO4 Control 737d1c6b4feSMark Brown */ 738d1c6b4feSMark Brown #define WM831X_LDO4_ERR_ACT_MASK 0xC000 /* LDO4_ERR_ACT - [15:14] */ 739d1c6b4feSMark Brown #define WM831X_LDO4_ERR_ACT_SHIFT 14 /* LDO4_ERR_ACT - [15:14] */ 740d1c6b4feSMark Brown #define WM831X_LDO4_ERR_ACT_WIDTH 2 /* LDO4_ERR_ACT - [15:14] */ 741d1c6b4feSMark Brown #define WM831X_LDO4_HWC_SRC_MASK 0x1800 /* LDO4_HWC_SRC - [12:11] */ 742d1c6b4feSMark Brown #define WM831X_LDO4_HWC_SRC_SHIFT 11 /* LDO4_HWC_SRC - [12:11] */ 743d1c6b4feSMark Brown #define WM831X_LDO4_HWC_SRC_WIDTH 2 /* LDO4_HWC_SRC - [12:11] */ 744d1c6b4feSMark Brown #define WM831X_LDO4_HWC_VSEL 0x0400 /* LDO4_HWC_VSEL */ 745d1c6b4feSMark Brown #define WM831X_LDO4_HWC_VSEL_MASK 0x0400 /* LDO4_HWC_VSEL */ 746d1c6b4feSMark Brown #define WM831X_LDO4_HWC_VSEL_SHIFT 10 /* LDO4_HWC_VSEL */ 747d1c6b4feSMark Brown #define WM831X_LDO4_HWC_VSEL_WIDTH 1 /* LDO4_HWC_VSEL */ 748d1c6b4feSMark Brown #define WM831X_LDO4_HWC_MODE_MASK 0x0300 /* LDO4_HWC_MODE - [9:8] */ 749d1c6b4feSMark Brown #define WM831X_LDO4_HWC_MODE_SHIFT 8 /* LDO4_HWC_MODE - [9:8] */ 750d1c6b4feSMark Brown #define WM831X_LDO4_HWC_MODE_WIDTH 2 /* LDO4_HWC_MODE - [9:8] */ 751d1c6b4feSMark Brown #define WM831X_LDO4_FLT 0x0080 /* LDO4_FLT */ 752d1c6b4feSMark Brown #define WM831X_LDO4_FLT_MASK 0x0080 /* LDO4_FLT */ 753d1c6b4feSMark Brown #define WM831X_LDO4_FLT_SHIFT 7 /* LDO4_FLT */ 754d1c6b4feSMark Brown #define WM831X_LDO4_FLT_WIDTH 1 /* LDO4_FLT */ 755d1c6b4feSMark Brown #define WM831X_LDO4_SWI 0x0040 /* LDO4_SWI */ 756d1c6b4feSMark Brown #define WM831X_LDO4_SWI_MASK 0x0040 /* LDO4_SWI */ 757d1c6b4feSMark Brown #define WM831X_LDO4_SWI_SHIFT 6 /* LDO4_SWI */ 758d1c6b4feSMark Brown #define WM831X_LDO4_SWI_WIDTH 1 /* LDO4_SWI */ 759d1c6b4feSMark Brown #define WM831X_LDO4_LP_MODE 0x0001 /* LDO4_LP_MODE */ 760d1c6b4feSMark Brown #define WM831X_LDO4_LP_MODE_MASK 0x0001 /* LDO4_LP_MODE */ 761d1c6b4feSMark Brown #define WM831X_LDO4_LP_MODE_SHIFT 0 /* LDO4_LP_MODE */ 762d1c6b4feSMark Brown #define WM831X_LDO4_LP_MODE_WIDTH 1 /* LDO4_LP_MODE */ 763d1c6b4feSMark Brown 764d1c6b4feSMark Brown /* 765d1c6b4feSMark Brown * R16498 (0x4072) - LDO4 ON Control 766d1c6b4feSMark Brown */ 767d1c6b4feSMark Brown #define WM831X_LDO4_ON_SLOT_MASK 0xE000 /* LDO4_ON_SLOT - [15:13] */ 768d1c6b4feSMark Brown #define WM831X_LDO4_ON_SLOT_SHIFT 13 /* LDO4_ON_SLOT - [15:13] */ 769d1c6b4feSMark Brown #define WM831X_LDO4_ON_SLOT_WIDTH 3 /* LDO4_ON_SLOT - [15:13] */ 770d1c6b4feSMark Brown #define WM831X_LDO4_ON_MODE 0x0100 /* LDO4_ON_MODE */ 771d1c6b4feSMark Brown #define WM831X_LDO4_ON_MODE_MASK 0x0100 /* LDO4_ON_MODE */ 772d1c6b4feSMark Brown #define WM831X_LDO4_ON_MODE_SHIFT 8 /* LDO4_ON_MODE */ 773d1c6b4feSMark Brown #define WM831X_LDO4_ON_MODE_WIDTH 1 /* LDO4_ON_MODE */ 774d1c6b4feSMark Brown #define WM831X_LDO4_ON_VSEL_MASK 0x001F /* LDO4_ON_VSEL - [4:0] */ 775d1c6b4feSMark Brown #define WM831X_LDO4_ON_VSEL_SHIFT 0 /* LDO4_ON_VSEL - [4:0] */ 776d1c6b4feSMark Brown #define WM831X_LDO4_ON_VSEL_WIDTH 5 /* LDO4_ON_VSEL - [4:0] */ 777d1c6b4feSMark Brown 778d1c6b4feSMark Brown /* 779d1c6b4feSMark Brown * R16499 (0x4073) - LDO4 SLEEP Control 780d1c6b4feSMark Brown */ 781d1c6b4feSMark Brown #define WM831X_LDO4_SLP_SLOT_MASK 0xE000 /* LDO4_SLP_SLOT - [15:13] */ 782d1c6b4feSMark Brown #define WM831X_LDO4_SLP_SLOT_SHIFT 13 /* LDO4_SLP_SLOT - [15:13] */ 783d1c6b4feSMark Brown #define WM831X_LDO4_SLP_SLOT_WIDTH 3 /* LDO4_SLP_SLOT - [15:13] */ 784d1c6b4feSMark Brown #define WM831X_LDO4_SLP_MODE 0x0100 /* LDO4_SLP_MODE */ 785d1c6b4feSMark Brown #define WM831X_LDO4_SLP_MODE_MASK 0x0100 /* LDO4_SLP_MODE */ 786d1c6b4feSMark Brown #define WM831X_LDO4_SLP_MODE_SHIFT 8 /* LDO4_SLP_MODE */ 787d1c6b4feSMark Brown #define WM831X_LDO4_SLP_MODE_WIDTH 1 /* LDO4_SLP_MODE */ 788d1c6b4feSMark Brown #define WM831X_LDO4_SLP_VSEL_MASK 0x001F /* LDO4_SLP_VSEL - [4:0] */ 789d1c6b4feSMark Brown #define WM831X_LDO4_SLP_VSEL_SHIFT 0 /* LDO4_SLP_VSEL - [4:0] */ 790d1c6b4feSMark Brown #define WM831X_LDO4_SLP_VSEL_WIDTH 5 /* LDO4_SLP_VSEL - [4:0] */ 791d1c6b4feSMark Brown 792d1c6b4feSMark Brown /* 793d1c6b4feSMark Brown * R16500 (0x4074) - LDO5 Control 794d1c6b4feSMark Brown */ 795d1c6b4feSMark Brown #define WM831X_LDO5_ERR_ACT_MASK 0xC000 /* LDO5_ERR_ACT - [15:14] */ 796d1c6b4feSMark Brown #define WM831X_LDO5_ERR_ACT_SHIFT 14 /* LDO5_ERR_ACT - [15:14] */ 797d1c6b4feSMark Brown #define WM831X_LDO5_ERR_ACT_WIDTH 2 /* LDO5_ERR_ACT - [15:14] */ 798d1c6b4feSMark Brown #define WM831X_LDO5_HWC_SRC_MASK 0x1800 /* LDO5_HWC_SRC - [12:11] */ 799d1c6b4feSMark Brown #define WM831X_LDO5_HWC_SRC_SHIFT 11 /* LDO5_HWC_SRC - [12:11] */ 800d1c6b4feSMark Brown #define WM831X_LDO5_HWC_SRC_WIDTH 2 /* LDO5_HWC_SRC - [12:11] */ 801d1c6b4feSMark Brown #define WM831X_LDO5_HWC_VSEL 0x0400 /* LDO5_HWC_VSEL */ 802d1c6b4feSMark Brown #define WM831X_LDO5_HWC_VSEL_MASK 0x0400 /* LDO5_HWC_VSEL */ 803d1c6b4feSMark Brown #define WM831X_LDO5_HWC_VSEL_SHIFT 10 /* LDO5_HWC_VSEL */ 804d1c6b4feSMark Brown #define WM831X_LDO5_HWC_VSEL_WIDTH 1 /* LDO5_HWC_VSEL */ 805d1c6b4feSMark Brown #define WM831X_LDO5_HWC_MODE_MASK 0x0300 /* LDO5_HWC_MODE - [9:8] */ 806d1c6b4feSMark Brown #define WM831X_LDO5_HWC_MODE_SHIFT 8 /* LDO5_HWC_MODE - [9:8] */ 807d1c6b4feSMark Brown #define WM831X_LDO5_HWC_MODE_WIDTH 2 /* LDO5_HWC_MODE - [9:8] */ 808d1c6b4feSMark Brown #define WM831X_LDO5_FLT 0x0080 /* LDO5_FLT */ 809d1c6b4feSMark Brown #define WM831X_LDO5_FLT_MASK 0x0080 /* LDO5_FLT */ 810d1c6b4feSMark Brown #define WM831X_LDO5_FLT_SHIFT 7 /* LDO5_FLT */ 811d1c6b4feSMark Brown #define WM831X_LDO5_FLT_WIDTH 1 /* LDO5_FLT */ 812d1c6b4feSMark Brown #define WM831X_LDO5_SWI 0x0040 /* LDO5_SWI */ 813d1c6b4feSMark Brown #define WM831X_LDO5_SWI_MASK 0x0040 /* LDO5_SWI */ 814d1c6b4feSMark Brown #define WM831X_LDO5_SWI_SHIFT 6 /* LDO5_SWI */ 815d1c6b4feSMark Brown #define WM831X_LDO5_SWI_WIDTH 1 /* LDO5_SWI */ 816d1c6b4feSMark Brown #define WM831X_LDO5_LP_MODE 0x0001 /* LDO5_LP_MODE */ 817d1c6b4feSMark Brown #define WM831X_LDO5_LP_MODE_MASK 0x0001 /* LDO5_LP_MODE */ 818d1c6b4feSMark Brown #define WM831X_LDO5_LP_MODE_SHIFT 0 /* LDO5_LP_MODE */ 819d1c6b4feSMark Brown #define WM831X_LDO5_LP_MODE_WIDTH 1 /* LDO5_LP_MODE */ 820d1c6b4feSMark Brown 821d1c6b4feSMark Brown /* 822d1c6b4feSMark Brown * R16501 (0x4075) - LDO5 ON Control 823d1c6b4feSMark Brown */ 824d1c6b4feSMark Brown #define WM831X_LDO5_ON_SLOT_MASK 0xE000 /* LDO5_ON_SLOT - [15:13] */ 825d1c6b4feSMark Brown #define WM831X_LDO5_ON_SLOT_SHIFT 13 /* LDO5_ON_SLOT - [15:13] */ 826d1c6b4feSMark Brown #define WM831X_LDO5_ON_SLOT_WIDTH 3 /* LDO5_ON_SLOT - [15:13] */ 827d1c6b4feSMark Brown #define WM831X_LDO5_ON_MODE 0x0100 /* LDO5_ON_MODE */ 828d1c6b4feSMark Brown #define WM831X_LDO5_ON_MODE_MASK 0x0100 /* LDO5_ON_MODE */ 829d1c6b4feSMark Brown #define WM831X_LDO5_ON_MODE_SHIFT 8 /* LDO5_ON_MODE */ 830d1c6b4feSMark Brown #define WM831X_LDO5_ON_MODE_WIDTH 1 /* LDO5_ON_MODE */ 831d1c6b4feSMark Brown #define WM831X_LDO5_ON_VSEL_MASK 0x001F /* LDO5_ON_VSEL - [4:0] */ 832d1c6b4feSMark Brown #define WM831X_LDO5_ON_VSEL_SHIFT 0 /* LDO5_ON_VSEL - [4:0] */ 833d1c6b4feSMark Brown #define WM831X_LDO5_ON_VSEL_WIDTH 5 /* LDO5_ON_VSEL - [4:0] */ 834d1c6b4feSMark Brown 835d1c6b4feSMark Brown /* 836d1c6b4feSMark Brown * R16502 (0x4076) - LDO5 SLEEP Control 837d1c6b4feSMark Brown */ 838d1c6b4feSMark Brown #define WM831X_LDO5_SLP_SLOT_MASK 0xE000 /* LDO5_SLP_SLOT - [15:13] */ 839d1c6b4feSMark Brown #define WM831X_LDO5_SLP_SLOT_SHIFT 13 /* LDO5_SLP_SLOT - [15:13] */ 840d1c6b4feSMark Brown #define WM831X_LDO5_SLP_SLOT_WIDTH 3 /* LDO5_SLP_SLOT - [15:13] */ 841d1c6b4feSMark Brown #define WM831X_LDO5_SLP_MODE 0x0100 /* LDO5_SLP_MODE */ 842d1c6b4feSMark Brown #define WM831X_LDO5_SLP_MODE_MASK 0x0100 /* LDO5_SLP_MODE */ 843d1c6b4feSMark Brown #define WM831X_LDO5_SLP_MODE_SHIFT 8 /* LDO5_SLP_MODE */ 844d1c6b4feSMark Brown #define WM831X_LDO5_SLP_MODE_WIDTH 1 /* LDO5_SLP_MODE */ 845d1c6b4feSMark Brown #define WM831X_LDO5_SLP_VSEL_MASK 0x001F /* LDO5_SLP_VSEL - [4:0] */ 846d1c6b4feSMark Brown #define WM831X_LDO5_SLP_VSEL_SHIFT 0 /* LDO5_SLP_VSEL - [4:0] */ 847d1c6b4feSMark Brown #define WM831X_LDO5_SLP_VSEL_WIDTH 5 /* LDO5_SLP_VSEL - [4:0] */ 848d1c6b4feSMark Brown 849d1c6b4feSMark Brown /* 850d1c6b4feSMark Brown * R16503 (0x4077) - LDO6 Control 851d1c6b4feSMark Brown */ 852d1c6b4feSMark Brown #define WM831X_LDO6_ERR_ACT_MASK 0xC000 /* LDO6_ERR_ACT - [15:14] */ 853d1c6b4feSMark Brown #define WM831X_LDO6_ERR_ACT_SHIFT 14 /* LDO6_ERR_ACT - [15:14] */ 854d1c6b4feSMark Brown #define WM831X_LDO6_ERR_ACT_WIDTH 2 /* LDO6_ERR_ACT - [15:14] */ 855d1c6b4feSMark Brown #define WM831X_LDO6_HWC_SRC_MASK 0x1800 /* LDO6_HWC_SRC - [12:11] */ 856d1c6b4feSMark Brown #define WM831X_LDO6_HWC_SRC_SHIFT 11 /* LDO6_HWC_SRC - [12:11] */ 857d1c6b4feSMark Brown #define WM831X_LDO6_HWC_SRC_WIDTH 2 /* LDO6_HWC_SRC - [12:11] */ 858d1c6b4feSMark Brown #define WM831X_LDO6_HWC_VSEL 0x0400 /* LDO6_HWC_VSEL */ 859d1c6b4feSMark Brown #define WM831X_LDO6_HWC_VSEL_MASK 0x0400 /* LDO6_HWC_VSEL */ 860d1c6b4feSMark Brown #define WM831X_LDO6_HWC_VSEL_SHIFT 10 /* LDO6_HWC_VSEL */ 861d1c6b4feSMark Brown #define WM831X_LDO6_HWC_VSEL_WIDTH 1 /* LDO6_HWC_VSEL */ 862d1c6b4feSMark Brown #define WM831X_LDO6_HWC_MODE_MASK 0x0300 /* LDO6_HWC_MODE - [9:8] */ 863d1c6b4feSMark Brown #define WM831X_LDO6_HWC_MODE_SHIFT 8 /* LDO6_HWC_MODE - [9:8] */ 864d1c6b4feSMark Brown #define WM831X_LDO6_HWC_MODE_WIDTH 2 /* LDO6_HWC_MODE - [9:8] */ 865d1c6b4feSMark Brown #define WM831X_LDO6_FLT 0x0080 /* LDO6_FLT */ 866d1c6b4feSMark Brown #define WM831X_LDO6_FLT_MASK 0x0080 /* LDO6_FLT */ 867d1c6b4feSMark Brown #define WM831X_LDO6_FLT_SHIFT 7 /* LDO6_FLT */ 868d1c6b4feSMark Brown #define WM831X_LDO6_FLT_WIDTH 1 /* LDO6_FLT */ 869d1c6b4feSMark Brown #define WM831X_LDO6_SWI 0x0040 /* LDO6_SWI */ 870d1c6b4feSMark Brown #define WM831X_LDO6_SWI_MASK 0x0040 /* LDO6_SWI */ 871d1c6b4feSMark Brown #define WM831X_LDO6_SWI_SHIFT 6 /* LDO6_SWI */ 872d1c6b4feSMark Brown #define WM831X_LDO6_SWI_WIDTH 1 /* LDO6_SWI */ 873d1c6b4feSMark Brown #define WM831X_LDO6_LP_MODE 0x0001 /* LDO6_LP_MODE */ 874d1c6b4feSMark Brown #define WM831X_LDO6_LP_MODE_MASK 0x0001 /* LDO6_LP_MODE */ 875d1c6b4feSMark Brown #define WM831X_LDO6_LP_MODE_SHIFT 0 /* LDO6_LP_MODE */ 876d1c6b4feSMark Brown #define WM831X_LDO6_LP_MODE_WIDTH 1 /* LDO6_LP_MODE */ 877d1c6b4feSMark Brown 878d1c6b4feSMark Brown /* 879d1c6b4feSMark Brown * R16504 (0x4078) - LDO6 ON Control 880d1c6b4feSMark Brown */ 881d1c6b4feSMark Brown #define WM831X_LDO6_ON_SLOT_MASK 0xE000 /* LDO6_ON_SLOT - [15:13] */ 882d1c6b4feSMark Brown #define WM831X_LDO6_ON_SLOT_SHIFT 13 /* LDO6_ON_SLOT - [15:13] */ 883d1c6b4feSMark Brown #define WM831X_LDO6_ON_SLOT_WIDTH 3 /* LDO6_ON_SLOT - [15:13] */ 884d1c6b4feSMark Brown #define WM831X_LDO6_ON_MODE 0x0100 /* LDO6_ON_MODE */ 885d1c6b4feSMark Brown #define WM831X_LDO6_ON_MODE_MASK 0x0100 /* LDO6_ON_MODE */ 886d1c6b4feSMark Brown #define WM831X_LDO6_ON_MODE_SHIFT 8 /* LDO6_ON_MODE */ 887d1c6b4feSMark Brown #define WM831X_LDO6_ON_MODE_WIDTH 1 /* LDO6_ON_MODE */ 888d1c6b4feSMark Brown #define WM831X_LDO6_ON_VSEL_MASK 0x001F /* LDO6_ON_VSEL - [4:0] */ 889d1c6b4feSMark Brown #define WM831X_LDO6_ON_VSEL_SHIFT 0 /* LDO6_ON_VSEL - [4:0] */ 890d1c6b4feSMark Brown #define WM831X_LDO6_ON_VSEL_WIDTH 5 /* LDO6_ON_VSEL - [4:0] */ 891d1c6b4feSMark Brown 892d1c6b4feSMark Brown /* 893d1c6b4feSMark Brown * R16505 (0x4079) - LDO6 SLEEP Control 894d1c6b4feSMark Brown */ 895d1c6b4feSMark Brown #define WM831X_LDO6_SLP_SLOT_MASK 0xE000 /* LDO6_SLP_SLOT - [15:13] */ 896d1c6b4feSMark Brown #define WM831X_LDO6_SLP_SLOT_SHIFT 13 /* LDO6_SLP_SLOT - [15:13] */ 897d1c6b4feSMark Brown #define WM831X_LDO6_SLP_SLOT_WIDTH 3 /* LDO6_SLP_SLOT - [15:13] */ 898d1c6b4feSMark Brown #define WM831X_LDO6_SLP_MODE 0x0100 /* LDO6_SLP_MODE */ 899d1c6b4feSMark Brown #define WM831X_LDO6_SLP_MODE_MASK 0x0100 /* LDO6_SLP_MODE */ 900d1c6b4feSMark Brown #define WM831X_LDO6_SLP_MODE_SHIFT 8 /* LDO6_SLP_MODE */ 901d1c6b4feSMark Brown #define WM831X_LDO6_SLP_MODE_WIDTH 1 /* LDO6_SLP_MODE */ 902d1c6b4feSMark Brown #define WM831X_LDO6_SLP_VSEL_MASK 0x001F /* LDO6_SLP_VSEL - [4:0] */ 903d1c6b4feSMark Brown #define WM831X_LDO6_SLP_VSEL_SHIFT 0 /* LDO6_SLP_VSEL - [4:0] */ 904d1c6b4feSMark Brown #define WM831X_LDO6_SLP_VSEL_WIDTH 5 /* LDO6_SLP_VSEL - [4:0] */ 905d1c6b4feSMark Brown 906d1c6b4feSMark Brown /* 907d1c6b4feSMark Brown * R16506 (0x407A) - LDO7 Control 908d1c6b4feSMark Brown */ 909d1c6b4feSMark Brown #define WM831X_LDO7_ERR_ACT_MASK 0xC000 /* LDO7_ERR_ACT - [15:14] */ 910d1c6b4feSMark Brown #define WM831X_LDO7_ERR_ACT_SHIFT 14 /* LDO7_ERR_ACT - [15:14] */ 911d1c6b4feSMark Brown #define WM831X_LDO7_ERR_ACT_WIDTH 2 /* LDO7_ERR_ACT - [15:14] */ 912d1c6b4feSMark Brown #define WM831X_LDO7_HWC_SRC_MASK 0x1800 /* LDO7_HWC_SRC - [12:11] */ 913d1c6b4feSMark Brown #define WM831X_LDO7_HWC_SRC_SHIFT 11 /* LDO7_HWC_SRC - [12:11] */ 914d1c6b4feSMark Brown #define WM831X_LDO7_HWC_SRC_WIDTH 2 /* LDO7_HWC_SRC - [12:11] */ 915d1c6b4feSMark Brown #define WM831X_LDO7_HWC_VSEL 0x0400 /* LDO7_HWC_VSEL */ 916d1c6b4feSMark Brown #define WM831X_LDO7_HWC_VSEL_MASK 0x0400 /* LDO7_HWC_VSEL */ 917d1c6b4feSMark Brown #define WM831X_LDO7_HWC_VSEL_SHIFT 10 /* LDO7_HWC_VSEL */ 918d1c6b4feSMark Brown #define WM831X_LDO7_HWC_VSEL_WIDTH 1 /* LDO7_HWC_VSEL */ 919d1c6b4feSMark Brown #define WM831X_LDO7_HWC_MODE_MASK 0x0300 /* LDO7_HWC_MODE - [9:8] */ 920d1c6b4feSMark Brown #define WM831X_LDO7_HWC_MODE_SHIFT 8 /* LDO7_HWC_MODE - [9:8] */ 921d1c6b4feSMark Brown #define WM831X_LDO7_HWC_MODE_WIDTH 2 /* LDO7_HWC_MODE - [9:8] */ 922d1c6b4feSMark Brown #define WM831X_LDO7_FLT 0x0080 /* LDO7_FLT */ 923d1c6b4feSMark Brown #define WM831X_LDO7_FLT_MASK 0x0080 /* LDO7_FLT */ 924d1c6b4feSMark Brown #define WM831X_LDO7_FLT_SHIFT 7 /* LDO7_FLT */ 925d1c6b4feSMark Brown #define WM831X_LDO7_FLT_WIDTH 1 /* LDO7_FLT */ 926d1c6b4feSMark Brown #define WM831X_LDO7_SWI 0x0040 /* LDO7_SWI */ 927d1c6b4feSMark Brown #define WM831X_LDO7_SWI_MASK 0x0040 /* LDO7_SWI */ 928d1c6b4feSMark Brown #define WM831X_LDO7_SWI_SHIFT 6 /* LDO7_SWI */ 929d1c6b4feSMark Brown #define WM831X_LDO7_SWI_WIDTH 1 /* LDO7_SWI */ 930d1c6b4feSMark Brown 931d1c6b4feSMark Brown /* 932d1c6b4feSMark Brown * R16507 (0x407B) - LDO7 ON Control 933d1c6b4feSMark Brown */ 934d1c6b4feSMark Brown #define WM831X_LDO7_ON_SLOT_MASK 0xE000 /* LDO7_ON_SLOT - [15:13] */ 935d1c6b4feSMark Brown #define WM831X_LDO7_ON_SLOT_SHIFT 13 /* LDO7_ON_SLOT - [15:13] */ 936d1c6b4feSMark Brown #define WM831X_LDO7_ON_SLOT_WIDTH 3 /* LDO7_ON_SLOT - [15:13] */ 937d1c6b4feSMark Brown #define WM831X_LDO7_ON_MODE 0x0100 /* LDO7_ON_MODE */ 938d1c6b4feSMark Brown #define WM831X_LDO7_ON_MODE_MASK 0x0100 /* LDO7_ON_MODE */ 939d1c6b4feSMark Brown #define WM831X_LDO7_ON_MODE_SHIFT 8 /* LDO7_ON_MODE */ 940d1c6b4feSMark Brown #define WM831X_LDO7_ON_MODE_WIDTH 1 /* LDO7_ON_MODE */ 941d1c6b4feSMark Brown #define WM831X_LDO7_ON_VSEL_MASK 0x001F /* LDO7_ON_VSEL - [4:0] */ 942d1c6b4feSMark Brown #define WM831X_LDO7_ON_VSEL_SHIFT 0 /* LDO7_ON_VSEL - [4:0] */ 943d1c6b4feSMark Brown #define WM831X_LDO7_ON_VSEL_WIDTH 5 /* LDO7_ON_VSEL - [4:0] */ 944d1c6b4feSMark Brown 945d1c6b4feSMark Brown /* 946d1c6b4feSMark Brown * R16508 (0x407C) - LDO7 SLEEP Control 947d1c6b4feSMark Brown */ 948d1c6b4feSMark Brown #define WM831X_LDO7_SLP_SLOT_MASK 0xE000 /* LDO7_SLP_SLOT - [15:13] */ 949d1c6b4feSMark Brown #define WM831X_LDO7_SLP_SLOT_SHIFT 13 /* LDO7_SLP_SLOT - [15:13] */ 950d1c6b4feSMark Brown #define WM831X_LDO7_SLP_SLOT_WIDTH 3 /* LDO7_SLP_SLOT - [15:13] */ 951d1c6b4feSMark Brown #define WM831X_LDO7_SLP_MODE 0x0100 /* LDO7_SLP_MODE */ 952d1c6b4feSMark Brown #define WM831X_LDO7_SLP_MODE_MASK 0x0100 /* LDO7_SLP_MODE */ 953d1c6b4feSMark Brown #define WM831X_LDO7_SLP_MODE_SHIFT 8 /* LDO7_SLP_MODE */ 954d1c6b4feSMark Brown #define WM831X_LDO7_SLP_MODE_WIDTH 1 /* LDO7_SLP_MODE */ 955d1c6b4feSMark Brown #define WM831X_LDO7_SLP_VSEL_MASK 0x001F /* LDO7_SLP_VSEL - [4:0] */ 956d1c6b4feSMark Brown #define WM831X_LDO7_SLP_VSEL_SHIFT 0 /* LDO7_SLP_VSEL - [4:0] */ 957d1c6b4feSMark Brown #define WM831X_LDO7_SLP_VSEL_WIDTH 5 /* LDO7_SLP_VSEL - [4:0] */ 958d1c6b4feSMark Brown 959d1c6b4feSMark Brown /* 960d1c6b4feSMark Brown * R16509 (0x407D) - LDO8 Control 961d1c6b4feSMark Brown */ 962d1c6b4feSMark Brown #define WM831X_LDO8_ERR_ACT_MASK 0xC000 /* LDO8_ERR_ACT - [15:14] */ 963d1c6b4feSMark Brown #define WM831X_LDO8_ERR_ACT_SHIFT 14 /* LDO8_ERR_ACT - [15:14] */ 964d1c6b4feSMark Brown #define WM831X_LDO8_ERR_ACT_WIDTH 2 /* LDO8_ERR_ACT - [15:14] */ 965d1c6b4feSMark Brown #define WM831X_LDO8_HWC_SRC_MASK 0x1800 /* LDO8_HWC_SRC - [12:11] */ 966d1c6b4feSMark Brown #define WM831X_LDO8_HWC_SRC_SHIFT 11 /* LDO8_HWC_SRC - [12:11] */ 967d1c6b4feSMark Brown #define WM831X_LDO8_HWC_SRC_WIDTH 2 /* LDO8_HWC_SRC - [12:11] */ 968d1c6b4feSMark Brown #define WM831X_LDO8_HWC_VSEL 0x0400 /* LDO8_HWC_VSEL */ 969d1c6b4feSMark Brown #define WM831X_LDO8_HWC_VSEL_MASK 0x0400 /* LDO8_HWC_VSEL */ 970d1c6b4feSMark Brown #define WM831X_LDO8_HWC_VSEL_SHIFT 10 /* LDO8_HWC_VSEL */ 971d1c6b4feSMark Brown #define WM831X_LDO8_HWC_VSEL_WIDTH 1 /* LDO8_HWC_VSEL */ 972d1c6b4feSMark Brown #define WM831X_LDO8_HWC_MODE_MASK 0x0300 /* LDO8_HWC_MODE - [9:8] */ 973d1c6b4feSMark Brown #define WM831X_LDO8_HWC_MODE_SHIFT 8 /* LDO8_HWC_MODE - [9:8] */ 974d1c6b4feSMark Brown #define WM831X_LDO8_HWC_MODE_WIDTH 2 /* LDO8_HWC_MODE - [9:8] */ 975d1c6b4feSMark Brown #define WM831X_LDO8_FLT 0x0080 /* LDO8_FLT */ 976d1c6b4feSMark Brown #define WM831X_LDO8_FLT_MASK 0x0080 /* LDO8_FLT */ 977d1c6b4feSMark Brown #define WM831X_LDO8_FLT_SHIFT 7 /* LDO8_FLT */ 978d1c6b4feSMark Brown #define WM831X_LDO8_FLT_WIDTH 1 /* LDO8_FLT */ 979d1c6b4feSMark Brown #define WM831X_LDO8_SWI 0x0040 /* LDO8_SWI */ 980d1c6b4feSMark Brown #define WM831X_LDO8_SWI_MASK 0x0040 /* LDO8_SWI */ 981d1c6b4feSMark Brown #define WM831X_LDO8_SWI_SHIFT 6 /* LDO8_SWI */ 982d1c6b4feSMark Brown #define WM831X_LDO8_SWI_WIDTH 1 /* LDO8_SWI */ 983d1c6b4feSMark Brown 984d1c6b4feSMark Brown /* 985d1c6b4feSMark Brown * R16510 (0x407E) - LDO8 ON Control 986d1c6b4feSMark Brown */ 987d1c6b4feSMark Brown #define WM831X_LDO8_ON_SLOT_MASK 0xE000 /* LDO8_ON_SLOT - [15:13] */ 988d1c6b4feSMark Brown #define WM831X_LDO8_ON_SLOT_SHIFT 13 /* LDO8_ON_SLOT - [15:13] */ 989d1c6b4feSMark Brown #define WM831X_LDO8_ON_SLOT_WIDTH 3 /* LDO8_ON_SLOT - [15:13] */ 990d1c6b4feSMark Brown #define WM831X_LDO8_ON_MODE 0x0100 /* LDO8_ON_MODE */ 991d1c6b4feSMark Brown #define WM831X_LDO8_ON_MODE_MASK 0x0100 /* LDO8_ON_MODE */ 992d1c6b4feSMark Brown #define WM831X_LDO8_ON_MODE_SHIFT 8 /* LDO8_ON_MODE */ 993d1c6b4feSMark Brown #define WM831X_LDO8_ON_MODE_WIDTH 1 /* LDO8_ON_MODE */ 994d1c6b4feSMark Brown #define WM831X_LDO8_ON_VSEL_MASK 0x001F /* LDO8_ON_VSEL - [4:0] */ 995d1c6b4feSMark Brown #define WM831X_LDO8_ON_VSEL_SHIFT 0 /* LDO8_ON_VSEL - [4:0] */ 996d1c6b4feSMark Brown #define WM831X_LDO8_ON_VSEL_WIDTH 5 /* LDO8_ON_VSEL - [4:0] */ 997d1c6b4feSMark Brown 998d1c6b4feSMark Brown /* 999d1c6b4feSMark Brown * R16511 (0x407F) - LDO8 SLEEP Control 1000d1c6b4feSMark Brown */ 1001d1c6b4feSMark Brown #define WM831X_LDO8_SLP_SLOT_MASK 0xE000 /* LDO8_SLP_SLOT - [15:13] */ 1002d1c6b4feSMark Brown #define WM831X_LDO8_SLP_SLOT_SHIFT 13 /* LDO8_SLP_SLOT - [15:13] */ 1003d1c6b4feSMark Brown #define WM831X_LDO8_SLP_SLOT_WIDTH 3 /* LDO8_SLP_SLOT - [15:13] */ 1004d1c6b4feSMark Brown #define WM831X_LDO8_SLP_MODE 0x0100 /* LDO8_SLP_MODE */ 1005d1c6b4feSMark Brown #define WM831X_LDO8_SLP_MODE_MASK 0x0100 /* LDO8_SLP_MODE */ 1006d1c6b4feSMark Brown #define WM831X_LDO8_SLP_MODE_SHIFT 8 /* LDO8_SLP_MODE */ 1007d1c6b4feSMark Brown #define WM831X_LDO8_SLP_MODE_WIDTH 1 /* LDO8_SLP_MODE */ 1008d1c6b4feSMark Brown #define WM831X_LDO8_SLP_VSEL_MASK 0x001F /* LDO8_SLP_VSEL - [4:0] */ 1009d1c6b4feSMark Brown #define WM831X_LDO8_SLP_VSEL_SHIFT 0 /* LDO8_SLP_VSEL - [4:0] */ 1010d1c6b4feSMark Brown #define WM831X_LDO8_SLP_VSEL_WIDTH 5 /* LDO8_SLP_VSEL - [4:0] */ 1011d1c6b4feSMark Brown 1012d1c6b4feSMark Brown /* 1013d1c6b4feSMark Brown * R16512 (0x4080) - LDO9 Control 1014d1c6b4feSMark Brown */ 1015d1c6b4feSMark Brown #define WM831X_LDO9_ERR_ACT_MASK 0xC000 /* LDO9_ERR_ACT - [15:14] */ 1016d1c6b4feSMark Brown #define WM831X_LDO9_ERR_ACT_SHIFT 14 /* LDO9_ERR_ACT - [15:14] */ 1017d1c6b4feSMark Brown #define WM831X_LDO9_ERR_ACT_WIDTH 2 /* LDO9_ERR_ACT - [15:14] */ 1018d1c6b4feSMark Brown #define WM831X_LDO9_HWC_SRC_MASK 0x1800 /* LDO9_HWC_SRC - [12:11] */ 1019d1c6b4feSMark Brown #define WM831X_LDO9_HWC_SRC_SHIFT 11 /* LDO9_HWC_SRC - [12:11] */ 1020d1c6b4feSMark Brown #define WM831X_LDO9_HWC_SRC_WIDTH 2 /* LDO9_HWC_SRC - [12:11] */ 1021d1c6b4feSMark Brown #define WM831X_LDO9_HWC_VSEL 0x0400 /* LDO9_HWC_VSEL */ 1022d1c6b4feSMark Brown #define WM831X_LDO9_HWC_VSEL_MASK 0x0400 /* LDO9_HWC_VSEL */ 1023d1c6b4feSMark Brown #define WM831X_LDO9_HWC_VSEL_SHIFT 10 /* LDO9_HWC_VSEL */ 1024d1c6b4feSMark Brown #define WM831X_LDO9_HWC_VSEL_WIDTH 1 /* LDO9_HWC_VSEL */ 1025d1c6b4feSMark Brown #define WM831X_LDO9_HWC_MODE_MASK 0x0300 /* LDO9_HWC_MODE - [9:8] */ 1026d1c6b4feSMark Brown #define WM831X_LDO9_HWC_MODE_SHIFT 8 /* LDO9_HWC_MODE - [9:8] */ 1027d1c6b4feSMark Brown #define WM831X_LDO9_HWC_MODE_WIDTH 2 /* LDO9_HWC_MODE - [9:8] */ 1028d1c6b4feSMark Brown #define WM831X_LDO9_FLT 0x0080 /* LDO9_FLT */ 1029d1c6b4feSMark Brown #define WM831X_LDO9_FLT_MASK 0x0080 /* LDO9_FLT */ 1030d1c6b4feSMark Brown #define WM831X_LDO9_FLT_SHIFT 7 /* LDO9_FLT */ 1031d1c6b4feSMark Brown #define WM831X_LDO9_FLT_WIDTH 1 /* LDO9_FLT */ 1032d1c6b4feSMark Brown #define WM831X_LDO9_SWI 0x0040 /* LDO9_SWI */ 1033d1c6b4feSMark Brown #define WM831X_LDO9_SWI_MASK 0x0040 /* LDO9_SWI */ 1034d1c6b4feSMark Brown #define WM831X_LDO9_SWI_SHIFT 6 /* LDO9_SWI */ 1035d1c6b4feSMark Brown #define WM831X_LDO9_SWI_WIDTH 1 /* LDO9_SWI */ 1036d1c6b4feSMark Brown 1037d1c6b4feSMark Brown /* 1038d1c6b4feSMark Brown * R16513 (0x4081) - LDO9 ON Control 1039d1c6b4feSMark Brown */ 1040d1c6b4feSMark Brown #define WM831X_LDO9_ON_SLOT_MASK 0xE000 /* LDO9_ON_SLOT - [15:13] */ 1041d1c6b4feSMark Brown #define WM831X_LDO9_ON_SLOT_SHIFT 13 /* LDO9_ON_SLOT - [15:13] */ 1042d1c6b4feSMark Brown #define WM831X_LDO9_ON_SLOT_WIDTH 3 /* LDO9_ON_SLOT - [15:13] */ 1043d1c6b4feSMark Brown #define WM831X_LDO9_ON_MODE 0x0100 /* LDO9_ON_MODE */ 1044d1c6b4feSMark Brown #define WM831X_LDO9_ON_MODE_MASK 0x0100 /* LDO9_ON_MODE */ 1045d1c6b4feSMark Brown #define WM831X_LDO9_ON_MODE_SHIFT 8 /* LDO9_ON_MODE */ 1046d1c6b4feSMark Brown #define WM831X_LDO9_ON_MODE_WIDTH 1 /* LDO9_ON_MODE */ 1047d1c6b4feSMark Brown #define WM831X_LDO9_ON_VSEL_MASK 0x001F /* LDO9_ON_VSEL - [4:0] */ 1048d1c6b4feSMark Brown #define WM831X_LDO9_ON_VSEL_SHIFT 0 /* LDO9_ON_VSEL - [4:0] */ 1049d1c6b4feSMark Brown #define WM831X_LDO9_ON_VSEL_WIDTH 5 /* LDO9_ON_VSEL - [4:0] */ 1050d1c6b4feSMark Brown 1051d1c6b4feSMark Brown /* 1052d1c6b4feSMark Brown * R16514 (0x4082) - LDO9 SLEEP Control 1053d1c6b4feSMark Brown */ 1054d1c6b4feSMark Brown #define WM831X_LDO9_SLP_SLOT_MASK 0xE000 /* LDO9_SLP_SLOT - [15:13] */ 1055d1c6b4feSMark Brown #define WM831X_LDO9_SLP_SLOT_SHIFT 13 /* LDO9_SLP_SLOT - [15:13] */ 1056d1c6b4feSMark Brown #define WM831X_LDO9_SLP_SLOT_WIDTH 3 /* LDO9_SLP_SLOT - [15:13] */ 1057d1c6b4feSMark Brown #define WM831X_LDO9_SLP_MODE 0x0100 /* LDO9_SLP_MODE */ 1058d1c6b4feSMark Brown #define WM831X_LDO9_SLP_MODE_MASK 0x0100 /* LDO9_SLP_MODE */ 1059d1c6b4feSMark Brown #define WM831X_LDO9_SLP_MODE_SHIFT 8 /* LDO9_SLP_MODE */ 1060d1c6b4feSMark Brown #define WM831X_LDO9_SLP_MODE_WIDTH 1 /* LDO9_SLP_MODE */ 1061d1c6b4feSMark Brown #define WM831X_LDO9_SLP_VSEL_MASK 0x001F /* LDO9_SLP_VSEL - [4:0] */ 1062d1c6b4feSMark Brown #define WM831X_LDO9_SLP_VSEL_SHIFT 0 /* LDO9_SLP_VSEL - [4:0] */ 1063d1c6b4feSMark Brown #define WM831X_LDO9_SLP_VSEL_WIDTH 5 /* LDO9_SLP_VSEL - [4:0] */ 1064d1c6b4feSMark Brown 1065d1c6b4feSMark Brown /* 1066d1c6b4feSMark Brown * R16515 (0x4083) - LDO10 Control 1067d1c6b4feSMark Brown */ 1068d1c6b4feSMark Brown #define WM831X_LDO10_ERR_ACT_MASK 0xC000 /* LDO10_ERR_ACT - [15:14] */ 1069d1c6b4feSMark Brown #define WM831X_LDO10_ERR_ACT_SHIFT 14 /* LDO10_ERR_ACT - [15:14] */ 1070d1c6b4feSMark Brown #define WM831X_LDO10_ERR_ACT_WIDTH 2 /* LDO10_ERR_ACT - [15:14] */ 1071d1c6b4feSMark Brown #define WM831X_LDO10_HWC_SRC_MASK 0x1800 /* LDO10_HWC_SRC - [12:11] */ 1072d1c6b4feSMark Brown #define WM831X_LDO10_HWC_SRC_SHIFT 11 /* LDO10_HWC_SRC - [12:11] */ 1073d1c6b4feSMark Brown #define WM831X_LDO10_HWC_SRC_WIDTH 2 /* LDO10_HWC_SRC - [12:11] */ 1074d1c6b4feSMark Brown #define WM831X_LDO10_HWC_VSEL 0x0400 /* LDO10_HWC_VSEL */ 1075d1c6b4feSMark Brown #define WM831X_LDO10_HWC_VSEL_MASK 0x0400 /* LDO10_HWC_VSEL */ 1076d1c6b4feSMark Brown #define WM831X_LDO10_HWC_VSEL_SHIFT 10 /* LDO10_HWC_VSEL */ 1077d1c6b4feSMark Brown #define WM831X_LDO10_HWC_VSEL_WIDTH 1 /* LDO10_HWC_VSEL */ 1078d1c6b4feSMark Brown #define WM831X_LDO10_HWC_MODE_MASK 0x0300 /* LDO10_HWC_MODE - [9:8] */ 1079d1c6b4feSMark Brown #define WM831X_LDO10_HWC_MODE_SHIFT 8 /* LDO10_HWC_MODE - [9:8] */ 1080d1c6b4feSMark Brown #define WM831X_LDO10_HWC_MODE_WIDTH 2 /* LDO10_HWC_MODE - [9:8] */ 1081d1c6b4feSMark Brown #define WM831X_LDO10_FLT 0x0080 /* LDO10_FLT */ 1082d1c6b4feSMark Brown #define WM831X_LDO10_FLT_MASK 0x0080 /* LDO10_FLT */ 1083d1c6b4feSMark Brown #define WM831X_LDO10_FLT_SHIFT 7 /* LDO10_FLT */ 1084d1c6b4feSMark Brown #define WM831X_LDO10_FLT_WIDTH 1 /* LDO10_FLT */ 1085d1c6b4feSMark Brown #define WM831X_LDO10_SWI 0x0040 /* LDO10_SWI */ 1086d1c6b4feSMark Brown #define WM831X_LDO10_SWI_MASK 0x0040 /* LDO10_SWI */ 1087d1c6b4feSMark Brown #define WM831X_LDO10_SWI_SHIFT 6 /* LDO10_SWI */ 1088d1c6b4feSMark Brown #define WM831X_LDO10_SWI_WIDTH 1 /* LDO10_SWI */ 1089d1c6b4feSMark Brown 1090d1c6b4feSMark Brown /* 1091d1c6b4feSMark Brown * R16516 (0x4084) - LDO10 ON Control 1092d1c6b4feSMark Brown */ 1093d1c6b4feSMark Brown #define WM831X_LDO10_ON_SLOT_MASK 0xE000 /* LDO10_ON_SLOT - [15:13] */ 1094d1c6b4feSMark Brown #define WM831X_LDO10_ON_SLOT_SHIFT 13 /* LDO10_ON_SLOT - [15:13] */ 1095d1c6b4feSMark Brown #define WM831X_LDO10_ON_SLOT_WIDTH 3 /* LDO10_ON_SLOT - [15:13] */ 1096d1c6b4feSMark Brown #define WM831X_LDO10_ON_MODE 0x0100 /* LDO10_ON_MODE */ 1097d1c6b4feSMark Brown #define WM831X_LDO10_ON_MODE_MASK 0x0100 /* LDO10_ON_MODE */ 1098d1c6b4feSMark Brown #define WM831X_LDO10_ON_MODE_SHIFT 8 /* LDO10_ON_MODE */ 1099d1c6b4feSMark Brown #define WM831X_LDO10_ON_MODE_WIDTH 1 /* LDO10_ON_MODE */ 1100d1c6b4feSMark Brown #define WM831X_LDO10_ON_VSEL_MASK 0x001F /* LDO10_ON_VSEL - [4:0] */ 1101d1c6b4feSMark Brown #define WM831X_LDO10_ON_VSEL_SHIFT 0 /* LDO10_ON_VSEL - [4:0] */ 1102d1c6b4feSMark Brown #define WM831X_LDO10_ON_VSEL_WIDTH 5 /* LDO10_ON_VSEL - [4:0] */ 1103d1c6b4feSMark Brown 1104d1c6b4feSMark Brown /* 1105d1c6b4feSMark Brown * R16517 (0x4085) - LDO10 SLEEP Control 1106d1c6b4feSMark Brown */ 1107d1c6b4feSMark Brown #define WM831X_LDO10_SLP_SLOT_MASK 0xE000 /* LDO10_SLP_SLOT - [15:13] */ 1108d1c6b4feSMark Brown #define WM831X_LDO10_SLP_SLOT_SHIFT 13 /* LDO10_SLP_SLOT - [15:13] */ 1109d1c6b4feSMark Brown #define WM831X_LDO10_SLP_SLOT_WIDTH 3 /* LDO10_SLP_SLOT - [15:13] */ 1110d1c6b4feSMark Brown #define WM831X_LDO10_SLP_MODE 0x0100 /* LDO10_SLP_MODE */ 1111d1c6b4feSMark Brown #define WM831X_LDO10_SLP_MODE_MASK 0x0100 /* LDO10_SLP_MODE */ 1112d1c6b4feSMark Brown #define WM831X_LDO10_SLP_MODE_SHIFT 8 /* LDO10_SLP_MODE */ 1113d1c6b4feSMark Brown #define WM831X_LDO10_SLP_MODE_WIDTH 1 /* LDO10_SLP_MODE */ 1114d1c6b4feSMark Brown #define WM831X_LDO10_SLP_VSEL_MASK 0x001F /* LDO10_SLP_VSEL - [4:0] */ 1115d1c6b4feSMark Brown #define WM831X_LDO10_SLP_VSEL_SHIFT 0 /* LDO10_SLP_VSEL - [4:0] */ 1116d1c6b4feSMark Brown #define WM831X_LDO10_SLP_VSEL_WIDTH 5 /* LDO10_SLP_VSEL - [4:0] */ 1117d1c6b4feSMark Brown 1118d1c6b4feSMark Brown /* 1119d1c6b4feSMark Brown * R16519 (0x4087) - LDO11 ON Control 1120d1c6b4feSMark Brown */ 1121d1c6b4feSMark Brown #define WM831X_LDO11_ON_SLOT_MASK 0xE000 /* LDO11_ON_SLOT - [15:13] */ 1122d1c6b4feSMark Brown #define WM831X_LDO11_ON_SLOT_SHIFT 13 /* LDO11_ON_SLOT - [15:13] */ 1123d1c6b4feSMark Brown #define WM831X_LDO11_ON_SLOT_WIDTH 3 /* LDO11_ON_SLOT - [15:13] */ 1124d1c6b4feSMark Brown #define WM831X_LDO11_OFFENA 0x1000 /* LDO11_OFFENA */ 1125d1c6b4feSMark Brown #define WM831X_LDO11_OFFENA_MASK 0x1000 /* LDO11_OFFENA */ 1126d1c6b4feSMark Brown #define WM831X_LDO11_OFFENA_SHIFT 12 /* LDO11_OFFENA */ 1127d1c6b4feSMark Brown #define WM831X_LDO11_OFFENA_WIDTH 1 /* LDO11_OFFENA */ 1128d1c6b4feSMark Brown #define WM831X_LDO11_VSEL_SRC 0x0080 /* LDO11_VSEL_SRC */ 1129d1c6b4feSMark Brown #define WM831X_LDO11_VSEL_SRC_MASK 0x0080 /* LDO11_VSEL_SRC */ 1130d1c6b4feSMark Brown #define WM831X_LDO11_VSEL_SRC_SHIFT 7 /* LDO11_VSEL_SRC */ 1131d1c6b4feSMark Brown #define WM831X_LDO11_VSEL_SRC_WIDTH 1 /* LDO11_VSEL_SRC */ 1132d1c6b4feSMark Brown #define WM831X_LDO11_ON_VSEL_MASK 0x000F /* LDO11_ON_VSEL - [3:0] */ 1133d1c6b4feSMark Brown #define WM831X_LDO11_ON_VSEL_SHIFT 0 /* LDO11_ON_VSEL - [3:0] */ 1134d1c6b4feSMark Brown #define WM831X_LDO11_ON_VSEL_WIDTH 4 /* LDO11_ON_VSEL - [3:0] */ 1135d1c6b4feSMark Brown 1136d1c6b4feSMark Brown /* 1137d1c6b4feSMark Brown * R16520 (0x4088) - LDO11 SLEEP Control 1138d1c6b4feSMark Brown */ 1139d1c6b4feSMark Brown #define WM831X_LDO11_SLP_SLOT_MASK 0xE000 /* LDO11_SLP_SLOT - [15:13] */ 1140d1c6b4feSMark Brown #define WM831X_LDO11_SLP_SLOT_SHIFT 13 /* LDO11_SLP_SLOT - [15:13] */ 1141d1c6b4feSMark Brown #define WM831X_LDO11_SLP_SLOT_WIDTH 3 /* LDO11_SLP_SLOT - [15:13] */ 1142d1c6b4feSMark Brown #define WM831X_LDO11_SLP_VSEL_MASK 0x000F /* LDO11_SLP_VSEL - [3:0] */ 1143d1c6b4feSMark Brown #define WM831X_LDO11_SLP_VSEL_SHIFT 0 /* LDO11_SLP_VSEL - [3:0] */ 1144d1c6b4feSMark Brown #define WM831X_LDO11_SLP_VSEL_WIDTH 4 /* LDO11_SLP_VSEL - [3:0] */ 1145d1c6b4feSMark Brown 1146d1c6b4feSMark Brown /* 1147e4ee831fSMark Brown * R16526 (0x408E) - Power Good Source 1 1148e4ee831fSMark Brown */ 1149e4ee831fSMark Brown #define WM831X_DC4_OK 0x0008 /* DC4_OK */ 1150e4ee831fSMark Brown #define WM831X_DC4_OK_MASK 0x0008 /* DC4_OK */ 1151e4ee831fSMark Brown #define WM831X_DC4_OK_SHIFT 3 /* DC4_OK */ 1152e4ee831fSMark Brown #define WM831X_DC4_OK_WIDTH 1 /* DC4_OK */ 1153e4ee831fSMark Brown #define WM831X_DC3_OK 0x0004 /* DC3_OK */ 1154e4ee831fSMark Brown #define WM831X_DC3_OK_MASK 0x0004 /* DC3_OK */ 1155e4ee831fSMark Brown #define WM831X_DC3_OK_SHIFT 2 /* DC3_OK */ 1156e4ee831fSMark Brown #define WM831X_DC3_OK_WIDTH 1 /* DC3_OK */ 1157e4ee831fSMark Brown #define WM831X_DC2_OK 0x0002 /* DC2_OK */ 1158e4ee831fSMark Brown #define WM831X_DC2_OK_MASK 0x0002 /* DC2_OK */ 1159e4ee831fSMark Brown #define WM831X_DC2_OK_SHIFT 1 /* DC2_OK */ 1160e4ee831fSMark Brown #define WM831X_DC2_OK_WIDTH 1 /* DC2_OK */ 1161e4ee831fSMark Brown #define WM831X_DC1_OK 0x0001 /* DC1_OK */ 1162e4ee831fSMark Brown #define WM831X_DC1_OK_MASK 0x0001 /* DC1_OK */ 1163e4ee831fSMark Brown #define WM831X_DC1_OK_SHIFT 0 /* DC1_OK */ 1164e4ee831fSMark Brown #define WM831X_DC1_OK_WIDTH 1 /* DC1_OK */ 1165e4ee831fSMark Brown 1166d1c6b4feSMark Brown /* 1167d1c6b4feSMark Brown * R16527 (0x408F) - Power Good Source 2 1168d1c6b4feSMark Brown */ 1169d1c6b4feSMark Brown #define WM831X_LDO10_OK 0x0200 /* LDO10_OK */ 1170d1c6b4feSMark Brown #define WM831X_LDO10_OK_MASK 0x0200 /* LDO10_OK */ 1171d1c6b4feSMark Brown #define WM831X_LDO10_OK_SHIFT 9 /* LDO10_OK */ 1172d1c6b4feSMark Brown #define WM831X_LDO10_OK_WIDTH 1 /* LDO10_OK */ 1173d1c6b4feSMark Brown #define WM831X_LDO9_OK 0x0100 /* LDO9_OK */ 1174d1c6b4feSMark Brown #define WM831X_LDO9_OK_MASK 0x0100 /* LDO9_OK */ 1175d1c6b4feSMark Brown #define WM831X_LDO9_OK_SHIFT 8 /* LDO9_OK */ 1176d1c6b4feSMark Brown #define WM831X_LDO9_OK_WIDTH 1 /* LDO9_OK */ 1177d1c6b4feSMark Brown #define WM831X_LDO8_OK 0x0080 /* LDO8_OK */ 1178d1c6b4feSMark Brown #define WM831X_LDO8_OK_MASK 0x0080 /* LDO8_OK */ 1179d1c6b4feSMark Brown #define WM831X_LDO8_OK_SHIFT 7 /* LDO8_OK */ 1180d1c6b4feSMark Brown #define WM831X_LDO8_OK_WIDTH 1 /* LDO8_OK */ 1181d1c6b4feSMark Brown #define WM831X_LDO7_OK 0x0040 /* LDO7_OK */ 1182d1c6b4feSMark Brown #define WM831X_LDO7_OK_MASK 0x0040 /* LDO7_OK */ 1183d1c6b4feSMark Brown #define WM831X_LDO7_OK_SHIFT 6 /* LDO7_OK */ 1184d1c6b4feSMark Brown #define WM831X_LDO7_OK_WIDTH 1 /* LDO7_OK */ 1185d1c6b4feSMark Brown #define WM831X_LDO6_OK 0x0020 /* LDO6_OK */ 1186d1c6b4feSMark Brown #define WM831X_LDO6_OK_MASK 0x0020 /* LDO6_OK */ 1187d1c6b4feSMark Brown #define WM831X_LDO6_OK_SHIFT 5 /* LDO6_OK */ 1188d1c6b4feSMark Brown #define WM831X_LDO6_OK_WIDTH 1 /* LDO6_OK */ 1189d1c6b4feSMark Brown #define WM831X_LDO5_OK 0x0010 /* LDO5_OK */ 1190d1c6b4feSMark Brown #define WM831X_LDO5_OK_MASK 0x0010 /* LDO5_OK */ 1191d1c6b4feSMark Brown #define WM831X_LDO5_OK_SHIFT 4 /* LDO5_OK */ 1192d1c6b4feSMark Brown #define WM831X_LDO5_OK_WIDTH 1 /* LDO5_OK */ 1193d1c6b4feSMark Brown #define WM831X_LDO4_OK 0x0008 /* LDO4_OK */ 1194d1c6b4feSMark Brown #define WM831X_LDO4_OK_MASK 0x0008 /* LDO4_OK */ 1195d1c6b4feSMark Brown #define WM831X_LDO4_OK_SHIFT 3 /* LDO4_OK */ 1196d1c6b4feSMark Brown #define WM831X_LDO4_OK_WIDTH 1 /* LDO4_OK */ 1197d1c6b4feSMark Brown #define WM831X_LDO3_OK 0x0004 /* LDO3_OK */ 1198d1c6b4feSMark Brown #define WM831X_LDO3_OK_MASK 0x0004 /* LDO3_OK */ 1199d1c6b4feSMark Brown #define WM831X_LDO3_OK_SHIFT 2 /* LDO3_OK */ 1200d1c6b4feSMark Brown #define WM831X_LDO3_OK_WIDTH 1 /* LDO3_OK */ 1201d1c6b4feSMark Brown #define WM831X_LDO2_OK 0x0002 /* LDO2_OK */ 1202d1c6b4feSMark Brown #define WM831X_LDO2_OK_MASK 0x0002 /* LDO2_OK */ 1203d1c6b4feSMark Brown #define WM831X_LDO2_OK_SHIFT 1 /* LDO2_OK */ 1204d1c6b4feSMark Brown #define WM831X_LDO2_OK_WIDTH 1 /* LDO2_OK */ 1205d1c6b4feSMark Brown #define WM831X_LDO1_OK 0x0001 /* LDO1_OK */ 1206d1c6b4feSMark Brown #define WM831X_LDO1_OK_MASK 0x0001 /* LDO1_OK */ 1207d1c6b4feSMark Brown #define WM831X_LDO1_OK_SHIFT 0 /* LDO1_OK */ 1208d1c6b4feSMark Brown #define WM831X_LDO1_OK_WIDTH 1 /* LDO1_OK */ 1209d1c6b4feSMark Brown 12107716977bSMark Brown #define WM831X_ISINK_MAX_ISEL 55 1211d48acfd0SAxel Lin extern const unsigned int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1]; 1212698659d5SMark Brown 1213698659d5SMark Brown #endif 1214