1cb199102SNishanth Menon /* 2cb199102SNishanth Menon * (C) Copyright 2012-2013 3cb199102SNishanth Menon * Texas Instruments, <www.ti.com> 4cb199102SNishanth Menon * 5cb199102SNishanth Menon * See file CREDITS for list of people who contributed to this 6cb199102SNishanth Menon * project. 7cb199102SNishanth Menon * 8cb199102SNishanth Menon * This program is free software; you can redistribute it and/or 9cb199102SNishanth Menon * modify it under the terms of the GNU General Public License as 10cb199102SNishanth Menon * published by the Free Software Foundation; either version 2 of 11cb199102SNishanth Menon * the License, or (at your option) any later version. 12cb199102SNishanth Menon * 13cb199102SNishanth Menon * This program is distributed in the hope that it will be useful, 14cb199102SNishanth Menon * but WITHOUT ANY WARRANTY; without even the implied warranty of 15cb199102SNishanth Menon * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16cb199102SNishanth Menon * GNU General Public License for more details. 17cb199102SNishanth Menon * 18cb199102SNishanth Menon * You should have received a copy of the GNU General Public License 19cb199102SNishanth Menon * along with this program; if not, write to the Free Software 20cb199102SNishanth Menon * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21cb199102SNishanth Menon * MA 02111-1307 USA 22cb199102SNishanth Menon */ 23cb199102SNishanth Menon 24cb199102SNishanth Menon #include <common.h> 25cb199102SNishanth Menon #include <i2c.h> 26cb199102SNishanth Menon 27cb199102SNishanth Menon /* I2C chip addresses */ 28cb199102SNishanth Menon #define PALMAS_CHIP_ADDR 0x48 29cb199102SNishanth Menon 30cb199102SNishanth Menon /* 0x1XY translates to page 1, register address 0xXY */ 31cb199102SNishanth Menon #define LDO9_CTRL 0x60 32cb199102SNishanth Menon #define LDO9_VOLTAGE 0x61 33cb199102SNishanth Menon 34cb199102SNishanth Menon /* Bit field definitions for LDOx_CTRL */ 35cb199102SNishanth Menon #define LDO_ON (1 << 4) 36cb199102SNishanth Menon #define LDO_MODE_SLEEP (1 << 2) 37cb199102SNishanth Menon #define LDO_MODE_ACTIVE (1 << 0) 38cb199102SNishanth Menon 39*ff2d57eaSNishanth Menon /* 40*ff2d57eaSNishanth Menon * Functions to read and write from TPS659038/TWL6035/TWL6037 41*ff2d57eaSNishanth Menon * or other Palmas family of TI PMICs 42*ff2d57eaSNishanth Menon */ 43*ff2d57eaSNishanth Menon static inline int palmas_i2c_write_u8(u8 chip_no, u8 reg, u8 val) 44*ff2d57eaSNishanth Menon { 45*ff2d57eaSNishanth Menon return i2c_write(chip_no, reg, 1, &val, 1); 46*ff2d57eaSNishanth Menon } 47*ff2d57eaSNishanth Menon 48*ff2d57eaSNishanth Menon static inline int palmas_i2c_read_u8(u8 chip_no, u8 reg, u8 *val) 49*ff2d57eaSNishanth Menon { 50*ff2d57eaSNishanth Menon return i2c_read(chip_no, reg, 1, val, 1); 51*ff2d57eaSNishanth Menon } 52*ff2d57eaSNishanth Menon 5312733881SNishanth Menon void palmas_init_settings(void); 54384bcae0SNishanth Menon int palmas_mmc1_poweron_ldo(void); 55