prm44xx_54xx.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * OMAP44xx and 54xx PRM common functions
  3. *
  4. * Copyright (C) 2009-2013 Texas Instruments, Inc.
  5. * Copyright (C) 2009-2010 Nokia Corporation
  6. *
  7. * Paul Walmsley (paul@pwsan.com)
  8. * Rajendra Nayak (rnayak@ti.com)
  9. * Benoit Cousson (b-cousson@ti.com)
  10. *
  11. * This file is automatically generated from the OMAP hardware databases.
  12. * We respectfully ask that any modifications to this file be coordinated
  13. * with the public linux-omap@vger.kernel.org mailing list and the
  14. * authors above to ensure that the autogeneration scripts are kept
  15. * up-to-date with the file contents.
  16. *
  17. * This program is free software; you can redistribute it and/or modify
  18. * it under the terms of the GNU General Public License version 2 as
  19. * published by the Free Software Foundation.
  20. *
  21. */
  22. #ifndef __ARCH_ARM_MACH_OMAP2_PRM44XX_54XX_H
  23. #define __ARCH_ARM_MACH_OMAP2_PRM44XX_54XX_H
  24. /* Function prototypes */
  25. #ifndef __ASSEMBLER__
  26. extern u32 omap4_prm_read_inst_reg(s16 inst, u16 idx);
  27. extern void omap4_prm_write_inst_reg(u32 val, s16 inst, u16 idx);
  28. extern u32 omap4_prm_rmw_inst_reg_bits(u32 mask, u32 bits, s16 inst, s16 idx);
  29. /* OMAP4/OMAP5-specific VP functions */
  30. u32 omap4_prm_vp_check_txdone(u8 vp_id);
  31. void omap4_prm_vp_clear_txdone(u8 vp_id);
  32. /*
  33. * OMAP4/OMAP5 access functions for voltage controller (VC) and
  34. * voltage proccessor (VP) in the PRM.
  35. */
  36. extern u32 omap4_prm_vcvp_read(u8 offset);
  37. extern void omap4_prm_vcvp_write(u32 val, u8 offset);
  38. extern u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset);
  39. extern void omap44xx_prm_reconfigure_io_chain(void);
  40. /* PRM interrupt-related functions */
  41. extern void omap44xx_prm_read_pending_irqs(unsigned long *events);
  42. extern void omap44xx_prm_ocp_barrier(void);
  43. extern void omap44xx_prm_save_and_clear_irqen(u32 *saved_mask);
  44. extern void omap44xx_prm_restore_irqen(u32 *saved_mask);
  45. extern int __init omap44xx_prm_init(void);
  46. extern u32 omap44xx_prm_get_reset_sources(void);
  47. #endif
  48. #endif