1 /* linux/arch/arm/plat-samsung/dev-pwm.c
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com
6 * Copyright (c) 2007 Ben Dooks
7 * Copyright (c) 2008 Simtec Electronics
8 * Ben Dooks <ben@simtec.co.uk>, <ben-linux@fluff.org>
10 * S3C series device definition for the PWM timer
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
17 #include <linux/kernel.h>
18 #include <linux/platform_device.h>
20 #include <mach/irqs.h>
22 #include <plat/devs.h>
24 #define TIMER_RESOURCE_SIZE (1)
26 #define TIMER_RESOURCE(_tmr, _irq) \
27 (struct resource [TIMER_RESOURCE_SIZE]) { \
31 .flags = IORESOURCE_IRQ \
35 #define DEFINE_S3C_TIMER(_tmr_no, _irq) \
36 .name = "s3c24xx-pwm", \
38 .num_resources = TIMER_RESOURCE_SIZE, \
39 .resource = TIMER_RESOURCE(_tmr_no, _irq), \
42 * since we already have an static mapping for the timer,
43 * we do not bother setting any IO resource for the base.
46 struct platform_device s3c_device_timer
[] = {
47 [0] = { DEFINE_S3C_TIMER(0, IRQ_TIMER0
) },
48 [1] = { DEFINE_S3C_TIMER(1, IRQ_TIMER1
) },
49 [2] = { DEFINE_S3C_TIMER(2, IRQ_TIMER2
) },
50 [3] = { DEFINE_S3C_TIMER(3, IRQ_TIMER3
) },
51 [4] = { DEFINE_S3C_TIMER(4, IRQ_TIMER4
) },
53 EXPORT_SYMBOL(s3c_device_timer
);