Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 192118
b: refs/heads/master
c: 1bcd38a
h: refs/heads/master
v: v3
  • Loading branch information
Cyril Chemparathy authored and Kevin Hilman committed May 13, 2010
1 parent 1cbdbc4 commit c6edd4d
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 18 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: 3347db8392486a1b52aab980cc445cf505c36d45
refs/heads/master: 1bcd38ad2de4c1cd30387c588dfb28d637d4111d
4 changes: 2 additions & 2 deletions trunk/arch/arm/mach-davinci/da830.c
Original file line number Diff line number Diff line change
Expand Up @@ -1159,14 +1159,14 @@ static struct davinci_id da830_ids[] = {

static struct davinci_timer_instance da830_timer_instance[2] = {
{
.base = IO_ADDRESS(DA8XX_TIMER64P0_BASE),
.base = DA8XX_TIMER64P0_BASE,
.bottom_irq = IRQ_DA8XX_TINT12_0,
.top_irq = IRQ_DA8XX_TINT34_0,
.cmp_off = DA830_CMP12_0,
.cmp_irq = IRQ_DA830_T12CMPINT0_0,
},
{
.base = IO_ADDRESS(DA8XX_TIMER64P1_BASE),
.base = DA8XX_TIMER64P1_BASE,
.bottom_irq = IRQ_DA8XX_TINT12_1,
.top_irq = IRQ_DA8XX_TINT34_1,
.cmp_off = DA830_CMP12_0,
Expand Down
8 changes: 4 additions & 4 deletions trunk/arch/arm/mach-davinci/da850.c
Original file line number Diff line number Diff line change
Expand Up @@ -800,22 +800,22 @@ static struct davinci_id da850_ids[] = {

static struct davinci_timer_instance da850_timer_instance[4] = {
{
.base = IO_ADDRESS(DA8XX_TIMER64P0_BASE),
.base = DA8XX_TIMER64P0_BASE,
.bottom_irq = IRQ_DA8XX_TINT12_0,
.top_irq = IRQ_DA8XX_TINT34_0,
},
{
.base = IO_ADDRESS(DA8XX_TIMER64P1_BASE),
.base = DA8XX_TIMER64P1_BASE,
.bottom_irq = IRQ_DA8XX_TINT12_1,
.top_irq = IRQ_DA8XX_TINT34_1,
},
{
.base = IO_ADDRESS(DA850_TIMER64P2_BASE),
.base = DA850_TIMER64P2_BASE,
.bottom_irq = IRQ_DA850_TINT12_2,
.top_irq = IRQ_DA850_TINT34_2,
},
{
.base = IO_ADDRESS(DA850_TIMER64P3_BASE),
.base = DA850_TIMER64P3_BASE,
.bottom_irq = IRQ_DA850_TINT12_3,
.top_irq = IRQ_DA850_TINT34_3,
},
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/arm/mach-davinci/devices.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,12 +297,12 @@ static void davinci_init_wdt(void)

struct davinci_timer_instance davinci_timer_instance[2] = {
{
.base = IO_ADDRESS(DAVINCI_TIMER0_BASE),
.base = DAVINCI_TIMER0_BASE,
.bottom_irq = IRQ_TINT0_TINT12,
.top_irq = IRQ_TINT0_TINT34,
},
{
.base = IO_ADDRESS(DAVINCI_TIMER1_BASE),
.base = DAVINCI_TIMER1_BASE,
.bottom_irq = IRQ_TINT1_TINT12,
.top_irq = IRQ_TINT1_TINT34,
},
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/arm/mach-davinci/include/mach/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ extern void __iomem *davinci_intc_base;
extern int davinci_intc_type;

struct davinci_timer_instance {
void __iomem *base;
u32 base;
u32 bottom_irq;
u32 top_irq;
unsigned long cmp_off;
Expand Down
22 changes: 14 additions & 8 deletions trunk/arch/arm/mach-davinci/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -197,32 +197,36 @@ static void __init timer_init(void)
{
struct davinci_soc_info *soc_info = &davinci_soc_info;
struct davinci_timer_instance *dtip = soc_info->timer_info->timers;
void __iomem *base[2];
int i;

/* Global init of each 64-bit timer as a whole */
for(i=0; i<2; i++) {
u32 tgcr;
void __iomem *base = dtip[i].base;

base[i] = ioremap(dtip[i].base, SZ_4K);
if (WARN_ON(!base[i]))
continue;

/* Disabled, Internal clock source */
__raw_writel(0, base + TCR);
__raw_writel(0, base[i] + TCR);

/* reset both timers, no pre-scaler for timer34 */
tgcr = 0;
__raw_writel(tgcr, base + TGCR);
__raw_writel(tgcr, base[i] + TGCR);

/* Set both timers to unchained 32-bit */
tgcr = TGCR_TIMMODE_32BIT_UNCHAINED << TGCR_TIMMODE_SHIFT;
__raw_writel(tgcr, base + TGCR);
__raw_writel(tgcr, base[i] + TGCR);

/* Unreset timers */
tgcr |= (TGCR_UNRESET << TGCR_TIM12RS_SHIFT) |
(TGCR_UNRESET << TGCR_TIM34RS_SHIFT);
__raw_writel(tgcr, base + TGCR);
__raw_writel(tgcr, base[i] + TGCR);

/* Init both counters to zero */
__raw_writel(0, base + TIM12);
__raw_writel(0, base + TIM34);
__raw_writel(0, base[i] + TIM12);
__raw_writel(0, base[i] + TIM34);
}

/* Init of each timer as a 32-bit timer */
Expand All @@ -231,7 +235,9 @@ static void __init timer_init(void)
int timer = ID_TO_TIMER(t->id);
u32 irq;

t->base = dtip[timer].base;
t->base = base[timer];
if (!t->base)
continue;

if (IS_TIMER_BOT(t->id)) {
t->enamode_shift = 6;
Expand Down

0 comments on commit c6edd4d

Please sign in to comment.