max8649.h 976 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /*
  2. * Interface of Maxim max8649
  3. *
  4. * Copyright (C) 2009-2010 Marvell International Ltd.
  5. * Haojian Zhuang <haojian.zhuang@marvell.com>
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License version 2 as
  9. * published by the Free Software Foundation.
  10. */
  11. #ifndef __LINUX_REGULATOR_MAX8649_H
  12. #define __LINUX_REGULATOR_MAX8649_H
  13. #include <linux/regulator/machine.h>
  14. enum {
  15. MAX8649_EXTCLK_26MHZ = 0,
  16. MAX8649_EXTCLK_13MHZ,
  17. MAX8649_EXTCLK_19MHZ, /* 19.2MHz */
  18. };
  19. enum {
  20. MAX8649_RAMP_32MV = 0,
  21. MAX8649_RAMP_16MV,
  22. MAX8649_RAMP_8MV,
  23. MAX8649_RAMP_4MV,
  24. MAX8649_RAMP_2MV,
  25. MAX8649_RAMP_1MV,
  26. MAX8649_RAMP_0_5MV,
  27. MAX8649_RAMP_0_25MV,
  28. };
  29. struct max8649_platform_data {
  30. struct regulator_init_data *regulator;
  31. unsigned mode:2; /* bit[1:0] = VID1,VID0 */
  32. unsigned extclk_freq:2;
  33. unsigned extclk:1;
  34. unsigned ramp_timing:3;
  35. unsigned ramp_down:1;
  36. };
  37. #endif /* __LINUX_REGULATOR_MAX8649_H */