ARM: sunxi: Move watchdog register definitions to separate file

On later Allwinner SoCs, the watchdog hardware is by all means a
separate hardware block, with its own address range and interrupt
line.

Move the register definitions to a separate file to facilitate
supporting newer SoCs.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
This commit is contained in:
Chen-Yu Tsai 2014-10-04 20:37:26 +08:00 committed by Hans de Goede
parent 41f8e9f5c4
commit 2b679f9fa4
2 changed files with 27 additions and 14 deletions

View File

@ -11,14 +11,10 @@
#ifndef _SUNXI_TIMER_H_
#define _SUNXI_TIMER_H_
#define WDT_CTRL_RESTART (0x1 << 0)
#define WDT_CTRL_KEY (0x0a57 << 1)
#define WDT_MODE_EN (0x1 << 0)
#define WDT_MODE_RESET_EN (0x1 << 1)
#ifndef __ASSEMBLY__
#include <linux/types.h>
#include <asm/arch/watchdog.h>
/* General purpose timer */
struct sunxi_timer {
@ -43,12 +39,6 @@ struct sunxi_64cnt {
u32 hi; /* 0xa8 */
};
/* Watchdog */
struct sunxi_wdog {
u32 ctl; /* 0x90 */
u32 mode; /* 0x94 */
};
/* Rtc */
struct sunxi_rtc {
u32 ctl; /* 0x100 */
@ -77,9 +67,8 @@ struct sunxi_timer_reg {
struct sunxi_timer timer[6]; /* We have 6 timers */
u8 res2[16];
struct sunxi_avs avs;
struct sunxi_wdog wdog;
u8 res3[8];
struct sunxi_64cnt cnt64;
struct sunxi_wdog wdog; /* 0x90 */
struct sunxi_64cnt cnt64; /* 0xa0 */
u8 res4[0x58];
struct sunxi_rtc rtc;
struct sunxi_alarm alarm;

View File

@ -0,0 +1,24 @@
/*
* (C) Copyright 2014
* Chen-Yu Tsai <wens@csie.org>
*
* Watchdog register definitions
*
* SPDX-License-Identifier: GPL-2.0+
*/
#ifndef _SUNXI_WATCHDOG_H_
#define _SUNXI_WATCHDOG_H_
#define WDT_CTRL_RESTART (0x1 << 0)
#define WDT_CTRL_KEY (0x0a57 << 1)
#define WDT_MODE_EN (0x1 << 0)
#define WDT_MODE_RESET_EN (0x1 << 1)
struct sunxi_wdog {
u32 ctl; /* 0x00 */
u32 mode; /* 0x04 */
u32 res[2];
};
#endif /* _SUNXI_WATCHDOG_H_ */