Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 77426
b: refs/heads/master
c: 884f5a6
h: refs/heads/master
v: v3
  • Loading branch information
Andrew Victor authored and Russell King committed Jan 26, 2008
1 parent c9fd689 commit a86fa91
Show file tree
Hide file tree
Showing 6 changed files with 230 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: e2920802351b3e01a3e70a26bb1bbb22f29da4cb
refs/heads/master: 884f5a6a8dc8646d5904f166adf3c558be57e1ab
47 changes: 47 additions & 0 deletions trunk/arch/arm/mach-at91/at91sam9260_devices.c
Original file line number Diff line number Diff line change
Expand Up @@ -538,6 +538,51 @@ void __init at91_add_device_spi(struct spi_board_info *devices, int nr_devices)
#endif


/* --------------------------------------------------------------------
* RTT
* -------------------------------------------------------------------- */

static struct resource rtt_resources[] = {
{
.start = AT91_BASE_SYS + AT91_RTT,
.end = AT91_BASE_SYS + AT91_RTT + SZ_16 - 1,
.flags = IORESOURCE_MEM,
}
};

static struct platform_device at91sam9260_rtt_device = {
.name = "at91_rtt",
.id = -1,
.resource = rtt_resources,
.num_resources = ARRAY_SIZE(rtt_resources),
};

static void __init at91_add_device_rtt(void)
{
platform_device_register(&at91sam9260_rtt_device);
}


/* --------------------------------------------------------------------
* Watchdog
* -------------------------------------------------------------------- */

#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
static struct platform_device at91sam9260_wdt_device = {
.name = "at91_wdt",
.id = -1,
.num_resources = 0,
};

static void __init at91_add_device_watchdog(void)
{
platform_device_register(&at91sam9260_wdt_device);
}
#else
static void __init at91_add_device_watchdog(void) {}
#endif


/* --------------------------------------------------------------------
* LEDs
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -898,6 +943,8 @@ void __init at91_add_device_serial(void) {}
*/
static int __init at91_add_standard_devices(void)
{
at91_add_device_rtt();
at91_add_device_watchdog();
return 0;
}

Expand Down
47 changes: 47 additions & 0 deletions trunk/arch/arm/mach-at91/at91sam9261_devices.c
Original file line number Diff line number Diff line change
Expand Up @@ -550,6 +550,51 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data) {}
#endif


/* --------------------------------------------------------------------
* RTT
* -------------------------------------------------------------------- */

static struct resource rtt_resources[] = {
{
.start = AT91_BASE_SYS + AT91_RTT,
.end = AT91_BASE_SYS + AT91_RTT + SZ_16 - 1,
.flags = IORESOURCE_MEM,
}
};

static struct platform_device at91sam9261_rtt_device = {
.name = "at91_rtt",
.id = -1,
.resource = rtt_resources,
.num_resources = ARRAY_SIZE(rtt_resources),
};

static void __init at91_add_device_rtt(void)
{
platform_device_register(&at91sam9261_rtt_device);
}


/* --------------------------------------------------------------------
* Watchdog
* -------------------------------------------------------------------- */

#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
static struct platform_device at91sam9261_wdt_device = {
.name = "at91_wdt",
.id = -1,
.num_resources = 0,
};

static void __init at91_add_device_watchdog(void)
{
platform_device_register(&at91sam9261_wdt_device);
}
#else
static void __init at91_add_device_watchdog(void) {}
#endif


/* --------------------------------------------------------------------
* LEDs
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -786,6 +831,8 @@ void __init at91_add_device_serial(void) {}
*/
static int __init at91_add_standard_devices(void)
{
at91_add_device_rtt();
at91_add_device_watchdog();
return 0;
}

Expand Down
63 changes: 63 additions & 0 deletions trunk/arch/arm/mach-at91/at91sam9263_devices.c
Original file line number Diff line number Diff line change
Expand Up @@ -781,6 +781,67 @@ void __init at91_add_device_isi(void) {}
#endif


/* --------------------------------------------------------------------
* RTT
* -------------------------------------------------------------------- */

static struct resource rtt0_resources[] = {
{
.start = AT91_BASE_SYS + AT91_RTT0,
.end = AT91_BASE_SYS + AT91_RTT0 + SZ_16 - 1,
.flags = IORESOURCE_MEM,
}
};

static struct platform_device at91sam9263_rtt0_device = {
.name = "at91_rtt",
.id = 0,
.resource = rtt0_resources,
.num_resources = ARRAY_SIZE(rtt0_resources),
};

static struct resource rtt1_resources[] = {
{
.start = AT91_BASE_SYS + AT91_RTT1,
.end = AT91_BASE_SYS + AT91_RTT1 + SZ_16 - 1,
.flags = IORESOURCE_MEM,
}
};

static struct platform_device at91sam9263_rtt1_device = {
.name = "at91_rtt",
.id = 1,
.resource = rtt1_resources,
.num_resources = ARRAY_SIZE(rtt1_resources),
};

static void __init at91_add_device_rtt(void)
{
platform_device_register(&at91sam9263_rtt0_device);
platform_device_register(&at91sam9263_rtt1_device);
}


/* --------------------------------------------------------------------
* Watchdog
* -------------------------------------------------------------------- */

#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
static struct platform_device at91sam9263_wdt_device = {
.name = "at91_wdt",
.id = -1,
.num_resources = 0,
};

static void __init at91_add_device_watchdog(void)
{
platform_device_register(&at91sam9263_wdt_device);
}
#else
static void __init at91_add_device_watchdog(void) {}
#endif


/* --------------------------------------------------------------------
* LEDs
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -1021,6 +1082,8 @@ void __init at91_add_device_serial(void) {}
*/
static int __init at91_add_standard_devices(void)
{
at91_add_device_rtt();
at91_add_device_watchdog();
return 0;
}

Expand Down
68 changes: 68 additions & 0 deletions trunk/arch/arm/mach-at91/at91sam9rl_devices.c
Original file line number Diff line number Diff line change
Expand Up @@ -383,6 +383,71 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data) {}
#endif


/* --------------------------------------------------------------------
* RTC
* -------------------------------------------------------------------- */

#if defined(CONFIG_RTC_DRV_AT91RM9200) || defined(CONFIG_RTC_DRV_AT91RM9200_MODULE)
static struct platform_device at91sam9rl_rtc_device = {
.name = "at91_rtc",
.id = -1,
.num_resources = 0,
};

static void __init at91_add_device_rtc(void)
{
platform_device_register(&at91sam9rl_rtc_device);
}
#else
static void __init at91_add_device_rtc(void) {}
#endif


/* --------------------------------------------------------------------
* RTT
* -------------------------------------------------------------------- */

static struct resource rtt_resources[] = {
{
.start = AT91_BASE_SYS + AT91_RTT,
.end = AT91_BASE_SYS + AT91_RTT + SZ_16 - 1,
.flags = IORESOURCE_MEM,
}
};

static struct platform_device at91sam9rl_rtt_device = {
.name = "at91_rtt",
.id = -1,
.resource = rtt_resources,
.num_resources = ARRAY_SIZE(rtt_resources),
};

static void __init at91_add_device_rtt(void)
{
platform_device_register(&at91sam9rl_rtt_device);
}


/* --------------------------------------------------------------------
* Watchdog
* -------------------------------------------------------------------- */

#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
static struct platform_device at91sam9rl_wdt_device = {
.name = "at91_wdt",
.id = -1,
.num_resources = 0,
};

static void __init at91_add_device_watchdog(void)
{
platform_device_register(&at91sam9rl_wdt_device);
}
#else
static void __init at91_add_device_watchdog(void) {}
#endif


/* --------------------------------------------------------------------
* LEDs
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -659,6 +724,9 @@ void __init at91_add_device_serial(void) {}
*/
static int __init at91_add_standard_devices(void)
{
at91_add_device_rtc();
at91_add_device_rtt();
at91_add_device_watchdog();
return 0;
}

Expand Down
8 changes: 4 additions & 4 deletions trunk/include/asm-arm/arch-at91/at91_rtt.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,19 @@
#ifndef AT91_RTT_H
#define AT91_RTT_H

#define AT91_RTT_MR (AT91_RTT + 0x00) /* Real-time Mode Register */
#define AT91_RTT_MR 0x00 /* Real-time Mode Register */
#define AT91_RTT_RTPRES (0xffff << 0) /* Real-time Timer Prescaler Value */
#define AT91_RTT_ALMIEN (1 << 16) /* Alarm Interrupt Enable */
#define AT91_RTT_RTTINCIEN (1 << 17) /* Real Time Timer Increment Interrupt Enable */
#define AT91_RTT_RTTRST (1 << 18) /* Real Time Timer Restart */

#define AT91_RTT_AR (AT91_RTT + 0x04) /* Real-time Alarm Register */
#define AT91_RTT_AR 0x04 /* Real-time Alarm Register */
#define AT91_RTT_ALMV (0xffffffff) /* Alarm Value */

#define AT91_RTT_VR (AT91_RTT + 0x08) /* Real-time Value Register */
#define AT91_RTT_VR 0x08 /* Real-time Value Register */
#define AT91_RTT_CRTV (0xffffffff) /* Current Real-time Value */

#define AT91_RTT_SR (AT91_RTT + 0x0c) /* Real-time Status Register */
#define AT91_RTT_SR 0x0c /* Real-time Status Register */
#define AT91_RTT_ALMS (1 << 0) /* Real-time Alarm Status */
#define AT91_RTT_RTTINC (1 << 1) /* Real-time Timer Increment */

Expand Down

0 comments on commit a86fa91

Please sign in to comment.