Skip to content

Commit

Permalink
[ARM] pxa: separate definitions from pxa-regs.h and remove it finally
Browse files Browse the repository at this point in the history
The remaining registers are separated into:

   - <mach/regs-ost.h>
   - <mach/regs-rtc.h>
   - <mach/regs-intc.h>

and then we can remove pxa-regs.h completely. Instead of #include this
file, let's:

1. include the specific <mach/regs-*.h> with care (if that's absolutely
   necessary)

2. define the registers in the driver, make cleanly defined API to expose
   the register access to external with sufficient reason

Signed-off-by: Eric Miao <eric.miao@marvell.com>
  • Loading branch information
Eric Miao committed Mar 9, 2009
1 parent b74d196 commit 5bf3df3
Show file tree
Hide file tree
Showing 22 changed files with 92 additions and 102 deletions.
2 changes: 1 addition & 1 deletion arch/arm/common/sharpsl_pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@
#include <mach/hardware.h>
#include <asm/irq.h>
#include <mach/pm.h>
#include <mach/pxa-regs.h>
#include <mach/pxa2xx-regs.h>
#include <mach/regs-rtc.h>
#include <mach/sharpsl.h>
#include <asm/hardware/sharpsl_pm.h>

Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/corgi_lcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
#include <linux/string.h>
#include <mach/corgi.h>
#include <mach/hardware.h>
#include <mach/pxa-regs.h>
#include <mach/sharpsl.h>
#include <mach/spitz.h>
#include <asm/hardware/scoop.h>
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/corgi_ssp.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
#include <asm/mach-types.h>

#include <mach/ssp.h>
#include <mach/pxa-regs.h>
#include <mach/pxa2xx-gpio.h>
#include <mach/regs-ssp.h>
#include "sharpsl.h"
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/mach-pxa/include/mach/mtd-xip.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
#ifndef __ARCH_PXA_MTD_XIP_H__
#define __ARCH_PXA_MTD_XIP_H__

#include <mach/hardware.h>
#include <mach/pxa-regs.h>
#include <mach/regs-ost.h>
#include <mach/regs-intc.h>

#define xip_irqpending() (ICIP & ICMR)

Expand Down
82 changes: 0 additions & 82 deletions arch/arm/mach-pxa/include/mach/pxa-regs.h

This file was deleted.

2 changes: 1 addition & 1 deletion arch/arm/mach-pxa/include/mach/pxa2xx-regs.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#ifndef __PXA2XX_REGS_H
#define __PXA2XX_REGS_H

#include <mach/pxa-regs.h>
#include <mach/hardware.h>

/*
* PXA Chip selects
Expand Down
23 changes: 23 additions & 0 deletions arch/arm/mach-pxa/include/mach/regs-intc.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#ifndef __ASM_MACH_REGS_INTC_H
#define __ASM_MACH_REGS_INTC_H

#include <mach/hardware.h>

/*
* Interrupt Controller
*/

#define ICIP __REG(0x40D00000) /* Interrupt Controller IRQ Pending Register */
#define ICMR __REG(0x40D00004) /* Interrupt Controller Mask Register */
#define ICLR __REG(0x40D00008) /* Interrupt Controller Level Register */
#define ICFP __REG(0x40D0000C) /* Interrupt Controller FIQ Pending Register */
#define ICPR __REG(0x40D00010) /* Interrupt Controller Pending Register */
#define ICCR __REG(0x40D00014) /* Interrupt Controller Control Register */

#define ICIP2 __REG(0x40D0009C) /* Interrupt Controller IRQ Pending Register 2 */
#define ICMR2 __REG(0x40D000A0) /* Interrupt Controller Mask Register 2 */
#define ICLR2 __REG(0x40D000A4) /* Interrupt Controller Level Register 2 */
#define ICFP2 __REG(0x40D000A8) /* Interrupt Controller FIQ Pending Register 2 */
#define ICPR2 __REG(0x40D000AC) /* Interrupt Controller Pending Register 2 */

#endif /* __ASM_MACH_REGS_INTC_H */
34 changes: 34 additions & 0 deletions arch/arm/mach-pxa/include/mach/regs-ost.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#ifndef __ASM_MACH_REGS_OST_H
#define __ASM_MACH_REGS_OST_H

#include <mach/hardware.h>

/*
* OS Timer & Match Registers
*/

#define OSMR0 __REG(0x40A00000) /* */
#define OSMR1 __REG(0x40A00004) /* */
#define OSMR2 __REG(0x40A00008) /* */
#define OSMR3 __REG(0x40A0000C) /* */
#define OSMR4 __REG(0x40A00080) /* */
#define OSCR __REG(0x40A00010) /* OS Timer Counter Register */
#define OSCR4 __REG(0x40A00040) /* OS Timer Counter Register */
#define OMCR4 __REG(0x40A000C0) /* */
#define OSSR __REG(0x40A00014) /* OS Timer Status Register */
#define OWER __REG(0x40A00018) /* OS Timer Watchdog Enable Register */
#define OIER __REG(0x40A0001C) /* OS Timer Interrupt Enable Register */

#define OSSR_M3 (1 << 3) /* Match status channel 3 */
#define OSSR_M2 (1 << 2) /* Match status channel 2 */
#define OSSR_M1 (1 << 1) /* Match status channel 1 */
#define OSSR_M0 (1 << 0) /* Match status channel 0 */

#define OWER_WME (1 << 0) /* Watchdog Match Enable */

#define OIER_E3 (1 << 3) /* Interrupt enable channel 3 */
#define OIER_E2 (1 << 2) /* Interrupt enable channel 2 */
#define OIER_E1 (1 << 1) /* Interrupt enable channel 1 */
#define OIER_E0 (1 << 0) /* Interrupt enable channel 0 */

#endif /* __ASM_MACH_REGS_OST_H */
23 changes: 23 additions & 0 deletions arch/arm/mach-pxa/include/mach/regs-rtc.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#ifndef __ASM_MACH_REGS_RTC_H
#define __ASM_MACH_REGS_RTC_H

#include <mach/hardware.h>

/*
* Real Time Clock
*/

#define RCNR __REG(0x40900000) /* RTC Count Register */
#define RTAR __REG(0x40900004) /* RTC Alarm Register */
#define RTSR __REG(0x40900008) /* RTC Status Register */
#define RTTR __REG(0x4090000C) /* RTC Timer Trim Register */
#define PIAR __REG(0x40900038) /* Periodic Interrupt Alarm Register */

#define RTSR_PICE (1 << 15) /* Periodic interrupt count enable */
#define RTSR_PIALE (1 << 14) /* Periodic interrupt Alarm enable */
#define RTSR_HZE (1 << 3) /* HZ interrupt enable */
#define RTSR_ALE (1 << 2) /* RTC alarm interrupt enable */
#define RTSR_HZ (1 << 1) /* HZ rising-edge detected */
#define RTSR_AL (1 << 0) /* RTC alarm detected */

#endif /* __ASM_MACH_REGS_RTC_H */
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/include/mach/system.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
#include <asm/proc-fns.h>
#include "hardware.h"
#include "pxa2xx-regs.h"
#include "pxa-regs.h"

static inline void arch_idle(void)
{
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-pxa/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
#include <mach/hardware.h>
#include <asm/irq.h>
#include <asm/mach/irq.h>
#include <mach/pxa-regs.h>
#include <mach/gpio.h>
#include <mach/regs-intc.h>

#include "generic.h"

Expand Down
1 change: 1 addition & 0 deletions arch/arm/mach-pxa/mioa701.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
#include <asm/mach/arch.h>

#include <mach/pxa27x.h>
#include <mach/regs-rtc.h>
#include <mach/pxa27x_keypad.h>
#include <mach/pxafb.h>
#include <mach/mmc.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-pxa/reset.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include <linux/io.h>
#include <asm/proc-fns.h>

#include <mach/pxa-regs.h>
#include <mach/regs-ost.h>
#include <mach/reset.h>

unsigned int reset_status;
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/sharpsl_pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
#include <mach/hardware.h>
#include <asm/mach-types.h>
#include <mach/pm.h>
#include <mach/pxa-regs.h>
#include <mach/pxa2xx-gpio.h>
#include <mach/sharpsl.h>
#include "sharpsl.h"
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/sleep.S
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
#include <asm/assembler.h>
#include <mach/hardware.h>

#include <mach/pxa-regs.h>
#include <mach/pxa2xx-regs.h>

#define MDREFR_KDIV 0x200a4000 // all banks
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/spitz_pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@

#include <mach/sharpsl.h>
#include <mach/spitz.h>
#include <mach/pxa-regs.h>
#include <mach/pxa2xx-regs.h>
#include <mach/pxa2xx-gpio.h>
#include "sharpsl.h"
Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-pxa/standby.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
#include <asm/assembler.h>
#include <mach/hardware.h>

#include <mach/pxa-regs.h>
#include <mach/pxa2xx-regs.h>

.text
Expand Down
3 changes: 1 addition & 2 deletions arch/arm/mach-pxa/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,7 @@
#include <asm/div64.h>
#include <asm/mach/irq.h>
#include <asm/mach/time.h>
#include <mach/hardware.h>
#include <mach/pxa-regs.h>
#include <mach/regs-ost.h>

/*
* This is PXA's sched_clock implementation. This has a resolution
Expand Down
1 change: 0 additions & 1 deletion drivers/input/touchscreen/corgi_ts.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@

#include <mach/sharpsl.h>
#include <mach/hardware.h>
#include <mach/pxa-regs.h>
#include <mach/pxa2xx-gpio.h>


Expand Down
3 changes: 1 addition & 2 deletions drivers/net/irda/pxaficp_ir.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,8 @@

#include <mach/dma.h>
#include <mach/irda.h>
#include <mach/hardware.h>
#include <mach/pxa-regs.h>
#include <mach/regs-uart.h>
#include <mach/regs-ost.h>

#define FICP __REG(0x40800000) /* Start of FICP area */
#define ICCR0 __REG(0x40800000) /* ICP Control Register 0 */
Expand Down
3 changes: 2 additions & 1 deletion drivers/rtc/rtc-sa1100.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@
#include <asm/irq.h>

#ifdef CONFIG_ARCH_PXA
#include <mach/pxa-regs.h>
#include <mach/regs-rtc.h>
#include <mach/regs-ost.h>
#endif

#define RTC_DEF_DIVIDER 32768 - 1
Expand Down
2 changes: 1 addition & 1 deletion drivers/watchdog/sa1100_wdt.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
#include <linux/timex.h>

#ifdef CONFIG_ARCH_PXA
#include <mach/pxa-regs.h>
#include <mach/regs-ost.h>
#endif

#include <mach/reset.h>
Expand Down

0 comments on commit 5bf3df3

Please sign in to comment.