diff options
author | Santosh Shilimkar <santosh.shilimkar@ti.com> | 2013-05-29 12:38:01 -0400 |
---|---|---|
committer | Paul Walmsley <paul@pwsan.com> | 2013-06-08 13:02:20 -0400 |
commit | 9920eca858160ddee2c36bdc80687d841ffd7342 (patch) | |
tree | e982240855321577880e35157aa299a076ba2d97 | |
parent | d683b96b072dc4680fc74964eca77e6a23d1fa6e (diff) |
ARM: OMAP4+: PRM: Move function prototypes to common header for re-use
OMAP5 reuses OMAP4 PRM IP block which lets us re-use PRM functions.
So move the function prototypes from prm44xx.h to prm44xx_54xx.h
header. The suggestion came from Paul Walmsley as part of the
OMAP5 data file review.
This is preparatory patch to add OMAP5 PRM data file.
Cc: Paul Walmsley <paul@pwsan.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
-rw-r--r-- | arch/arm/mach-omap2/prm44xx.h | 33 | ||||
-rw-r--r-- | arch/arm/mach-omap2/prm44xx_54xx.h | 58 |
2 files changed, 59 insertions, 32 deletions
diff --git a/arch/arm/mach-omap2/prm44xx.h b/arch/arm/mach-omap2/prm44xx.h index 8ee1fbdec561..7db2422faa16 100644 --- a/arch/arm/mach-omap2/prm44xx.h +++ b/arch/arm/mach-omap2/prm44xx.h | |||
@@ -25,6 +25,7 @@ | |||
25 | #ifndef __ARCH_ARM_MACH_OMAP2_PRM44XX_H | 25 | #ifndef __ARCH_ARM_MACH_OMAP2_PRM44XX_H |
26 | #define __ARCH_ARM_MACH_OMAP2_PRM44XX_H | 26 | #define __ARCH_ARM_MACH_OMAP2_PRM44XX_H |
27 | 27 | ||
28 | #include "prm44xx_54xx.h" | ||
28 | #include "prcm-common.h" | 29 | #include "prcm-common.h" |
29 | #include "prm.h" | 30 | #include "prm.h" |
30 | 31 | ||
@@ -744,36 +745,4 @@ | |||
744 | #define OMAP4_PRM_VC_ERRST_OFFSET 0x00f8 | 745 | #define OMAP4_PRM_VC_ERRST_OFFSET 0x00f8 |
745 | #define OMAP4430_PRM_VC_ERRST OMAP44XX_PRM_REGADDR(OMAP4430_PRM_DEVICE_INST, 0x00f8) | 746 | #define OMAP4430_PRM_VC_ERRST OMAP44XX_PRM_REGADDR(OMAP4430_PRM_DEVICE_INST, 0x00f8) |
746 | 747 | ||
747 | /* Function prototypes */ | ||
748 | # ifndef __ASSEMBLER__ | ||
749 | |||
750 | extern u32 omap4_prm_read_inst_reg(s16 inst, u16 idx); | ||
751 | extern void omap4_prm_write_inst_reg(u32 val, s16 inst, u16 idx); | ||
752 | extern u32 omap4_prm_rmw_inst_reg_bits(u32 mask, u32 bits, s16 inst, s16 idx); | ||
753 | |||
754 | /* OMAP4-specific VP functions */ | ||
755 | u32 omap4_prm_vp_check_txdone(u8 vp_id); | ||
756 | void omap4_prm_vp_clear_txdone(u8 vp_id); | ||
757 | |||
758 | /* | ||
759 | * OMAP4 access functions for voltage controller (VC) and | ||
760 | * voltage proccessor (VP) in the PRM. | ||
761 | */ | ||
762 | extern u32 omap4_prm_vcvp_read(u8 offset); | ||
763 | extern void omap4_prm_vcvp_write(u32 val, u8 offset); | ||
764 | extern u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset); | ||
765 | |||
766 | extern void omap44xx_prm_reconfigure_io_chain(void); | ||
767 | |||
768 | /* PRM interrupt-related functions */ | ||
769 | extern void omap44xx_prm_read_pending_irqs(unsigned long *events); | ||
770 | extern void omap44xx_prm_ocp_barrier(void); | ||
771 | extern void omap44xx_prm_save_and_clear_irqen(u32 *saved_mask); | ||
772 | extern void omap44xx_prm_restore_irqen(u32 *saved_mask); | ||
773 | |||
774 | extern int __init omap44xx_prm_init(void); | ||
775 | extern u32 omap44xx_prm_get_reset_sources(void); | ||
776 | |||
777 | # endif | ||
778 | |||
779 | #endif | 748 | #endif |
diff --git a/arch/arm/mach-omap2/prm44xx_54xx.h b/arch/arm/mach-omap2/prm44xx_54xx.h new file mode 100644 index 000000000000..7cd22abb8f15 --- /dev/null +++ b/arch/arm/mach-omap2/prm44xx_54xx.h | |||
@@ -0,0 +1,58 @@ | |||
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 | |||
23 | #ifndef __ARCH_ARM_MACH_OMAP2_PRM44XX_54XX_H | ||
24 | #define __ARCH_ARM_MACH_OMAP2_PRM44XX_54XX_H | ||
25 | |||
26 | /* Function prototypes */ | ||
27 | #ifndef __ASSEMBLER__ | ||
28 | |||
29 | extern u32 omap4_prm_read_inst_reg(s16 inst, u16 idx); | ||
30 | extern void omap4_prm_write_inst_reg(u32 val, s16 inst, u16 idx); | ||
31 | extern u32 omap4_prm_rmw_inst_reg_bits(u32 mask, u32 bits, s16 inst, s16 idx); | ||
32 | |||
33 | /* OMAP4/OMAP5-specific VP functions */ | ||
34 | u32 omap4_prm_vp_check_txdone(u8 vp_id); | ||
35 | void omap4_prm_vp_clear_txdone(u8 vp_id); | ||
36 | |||
37 | /* | ||
38 | * OMAP4/OMAP5 access functions for voltage controller (VC) and | ||
39 | * voltage proccessor (VP) in the PRM. | ||
40 | */ | ||
41 | extern u32 omap4_prm_vcvp_read(u8 offset); | ||
42 | extern void omap4_prm_vcvp_write(u32 val, u8 offset); | ||
43 | extern u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset); | ||
44 | |||
45 | extern void omap44xx_prm_reconfigure_io_chain(void); | ||
46 | |||
47 | /* PRM interrupt-related functions */ | ||
48 | extern void omap44xx_prm_read_pending_irqs(unsigned long *events); | ||
49 | extern void omap44xx_prm_ocp_barrier(void); | ||
50 | extern void omap44xx_prm_save_and_clear_irqen(u32 *saved_mask); | ||
51 | extern void omap44xx_prm_restore_irqen(u32 *saved_mask); | ||
52 | |||
53 | extern int __init omap44xx_prm_init(void); | ||
54 | extern u32 omap44xx_prm_get_reset_sources(void); | ||
55 | |||
56 | #endif | ||
57 | |||
58 | #endif | ||