max77693_muic.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2013 Samsung Electronics
  4. * Piotr Wilczek <p.wilczek@samsung.com>
  5. */
  6. #ifndef __MAX77693_MUIC_H_
  7. #define __MAX77693_MUIC_H_
  8. #include <power/power_chrg.h>
  9. /*
  10. * MUIC REGISTER
  11. */
  12. #define MAX77693_MUIC_PREFIX "max77693-muic:"
  13. /* MAX77693_MUIC_STATUS1 */
  14. #define MAX77693_MUIC_ADC_MASK 0x1F
  15. /* MAX77693_MUIC_STATUS2 */
  16. #define MAX77693_MUIC_CHG_NO 0x00
  17. #define MAX77693_MUIC_CHG_USB 0x01
  18. #define MAX77693_MUIC_CHG_USB_D 0x02
  19. #define MAX77693_MUIC_CHG_TA 0x03
  20. #define MAX77693_MUIC_CHG_TA_500 0x04
  21. #define MAX77693_MUIC_CHG_TA_1A 0x05
  22. #define MAX77693_MUIC_CHG_MASK 0x07
  23. /* MAX77693_MUIC_CONTROL1 */
  24. #define MAX77693_MUIC_CTRL1_DN1DP2 ((0x1 << 3) | 0x1)
  25. #define MAX77693_MUIC_CTRL1_UT1UR2 ((0x3 << 3) | 0x3)
  26. #define MAX77693_MUIC_CTRL1_ADN1ADP2 ((0x4 << 3) | 0x4)
  27. #define MAX77693_MUIC_CTRL1_AUT1AUR2 ((0x5 << 3) | 0x5)
  28. #define MAX77693_MUIC_CTRL1_MASK 0xC0
  29. #define MUIC_PATH_USB 0
  30. #define MUIC_PATH_UART 1
  31. #define MUIC_PATH_CP 0
  32. #define MUIC_PATH_AP 1
  33. enum muic_path {
  34. MUIC_PATH_USB_CP,
  35. MUIC_PATH_USB_AP,
  36. MUIC_PATH_UART_CP,
  37. MUIC_PATH_UART_AP,
  38. };
  39. /* MAX 777693 MUIC registers */
  40. enum {
  41. MAX77693_MUIC_ID = 0x00,
  42. MAX77693_MUIC_INT1 = 0x01,
  43. MAX77693_MUIC_INT2 = 0x02,
  44. MAX77693_MUIC_INT3 = 0x03,
  45. MAX77693_MUIC_STATUS1 = 0x04,
  46. MAX77693_MUIC_STATUS2 = 0x05,
  47. MAX77693_MUIC_STATUS3 = 0x06,
  48. MAX77693_MUIC_INTMASK1 = 0x07,
  49. MAX77693_MUIC_INTMASK2 = 0x08,
  50. MAX77693_MUIC_INTMASK3 = 0x09,
  51. MAX77693_MUIC_CDETCTRL = 0x0A,
  52. MAX77693_MUIC_CONTROL1 = 0x0C,
  53. MAX77693_MUIC_CONTROL2 = 0x0D,
  54. MAX77693_MUIC_CONTROL3 = 0x0E,
  55. MUIC_NUM_OF_REGS = 0x0F,
  56. };
  57. #define MAX77693_MUIC_I2C_ADDR (0x4A >> 1)
  58. int power_muic_init(unsigned int bus);
  59. #endif /* __MAX77693_MUIC_H_ */