pfuze3000_pmic.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2015 Freescale Semiconductor, Inc
  4. * Peng Fan <Peng.Fan@freescale.com>
  5. */
  6. #ifndef __PFUZE3000_PMIC_H_
  7. #define __PFUZE3000_PMIC_H_
  8. /* PFUZE3000 registers */
  9. enum {
  10. PFUZE3000_DEVICEID = 0x00,
  11. PFUZE3000_REVID = 0x03,
  12. PFUZE3000_FABID = 0x04,
  13. PFUZE3000_INTSTAT0 = 0x05,
  14. PFUZE3000_INTMASK0 = 0x06,
  15. PFUZE3000_INTSENSE0 = 0x07,
  16. PFUZE3000_INTSTAT1 = 0x08,
  17. PFUZE3000_INTMASK1 = 0x09,
  18. PFUZE3000_INTSENSE1 = 0x0A,
  19. PFUZE3000_INTSTAT3 = 0x0E,
  20. PFUZE3000_INTMASK3 = 0x0F,
  21. PFUZE3000_INTSENSE3 = 0x10,
  22. PFUZE3000_INTSTAT4 = 0x11,
  23. PFUZE3000_INTMASK4 = 0x12,
  24. PFUZE3000_INTSENSE4 = 0x13,
  25. PFUZE3000_COINCTL = 0x1A,
  26. PFUZE3000_PWRCTL = 0x1B,
  27. PFUZE3000_MEMA = 0x1C,
  28. PFUZE3000_MEMB = 0x1D,
  29. PFUZE3000_MEMC = 0x1E,
  30. PFUZE3000_MEMD = 0x1F,
  31. PFUZE3000_SW1AVOLT = 0x20,
  32. PFUZE3000_SW1ASTBY = 0x21,
  33. PFUZE3000_SW1AOFF = 0x22,
  34. PFUZE3000_SW1AMODE = 0x23,
  35. PFUZE3000_SW1ACONF = 0x24,
  36. PFUZE3000_SW1BVOLT = 0x2E,
  37. PFUZE3000_SW1BSTBY = 0x2F,
  38. PFUZE3000_SW1BOFF = 0x30,
  39. PFUZE3000_SW1BMODE = 0x31,
  40. PFUZE3000_SW1BCONF = 0x32,
  41. PFUZE3000_SW2VOLT = 0x35,
  42. PFUZE3000_SW2STBY = 0x36,
  43. PFUZE3000_SW2OFF = 0x37,
  44. PFUZE3000_SW2MODE = 0x38,
  45. PFUZE3000_SW2CONF = 0x39,
  46. PFUZE3000_SW3VOLT = 0x3C,
  47. PFUZE3000_SW3STBY = 0x3D,
  48. PFUZE3000_SW3OFF = 0x3E,
  49. PFUZE3000_SW3MODE = 0x3F,
  50. PFUZE3000_SW3CONF = 0x40,
  51. PFUZE3000_SWBSTCTL = 0x66,
  52. PFUZE3000_LDOGCTL = 0x69,
  53. PFUZE3000_VREFDDRCTL = 0x6A,
  54. PFUZE3000_VSNVSCTL = 0x6B,
  55. PFUZE3000_VLDO1CTL = 0x6C,
  56. PFUZE3000_VLDO2CTL = 0x6D,
  57. PFUZE3000_VCC_SDCTL = 0x6E,
  58. PFUZE3000_V33CTL = 0x6F,
  59. PFUZE3000_VLDO3CTL = 0x70,
  60. PFUZE3000_VLD4CTL = 0x71,
  61. PFUZE3000_NUM_OF_REGS = 0x100,
  62. };
  63. int power_pfuze3000_init(unsigned char bus);
  64. /* Voltage Configuration */
  65. #define PFUZE3000_SW1AB_SETP(x) ((x - 7000) / 250)
  66. #define PFUZE3000_SW3_SETP(x) ((x - 9000) / 500)
  67. #define PFUZE3000_VLDO_SETP(x) ((x - 8000) / 500)
  68. #endif