diff options
author | Abhilash Kesavan <a.kesavan@samsung.com> | 2010-06-08 11:38:20 +0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2010-08-05 13:32:50 +0400 |
commit | db90005b5bdb7195b55e295548d7a7eb2014d94c (patch) | |
tree | aaaa5d9392b50eb8c470ca226b35b36ce2d68bd4 /arch/arm/plat-samsung/dev-ide.c | |
parent | 3911dab8ad582fd4db5e79eda5320c37c3dfb9bb (diff) | |
download | linux-db90005b5bdb7195b55e295548d7a7eb2014d94c.tar.xz |
ARM: SAMSUNG: Add Compact Flash device support for Samsung SoCs
Following has been added:
- Common CF Platform device definition
- Platform data strucure definition
- CF controller register definitions
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/plat-samsung/dev-ide.c')
-rw-r--r-- | arch/arm/plat-samsung/dev-ide.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/dev-ide.c b/arch/arm/plat-samsung/dev-ide.c new file mode 100644 index 000000000000..b497982795a7 --- /dev/null +++ b/arch/arm/plat-samsung/dev-ide.c @@ -0,0 +1,44 @@ +/* linux/arch/arm/plat-samsung/dev-ide.c + * + * Copyright (c) 2010 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * + * Samsung CF-ATA device definition. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. +*/ + +#include <linux/kernel.h> +#include <linux/interrupt.h> +#include <linux/platform_device.h> + +#include <mach/map.h> +#include <plat/ata.h> +#include <plat/devs.h> + +static struct resource s3c_cfcon_resource[] = { + [0] = { + .start = SAMSUNG_PA_CFCON, + .end = SAMSUNG_PA_CFCON + SZ_16K - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = IRQ_CFCON, + .end = IRQ_CFCON, + .flags = IORESOURCE_IRQ, + }, +}; + +struct platform_device s3c_device_cfcon = { + .id = 0, + .num_resources = ARRAY_SIZE(s3c_cfcon_resource), + .resource = s3c_cfcon_resource, +}; + +void s3c_ide_set_platdata(struct s3c_ide_platdata *pdata) +{ + s3c_set_platdata(pdata, sizeof(struct s3c_ide_platdata), + &s3c_device_cfcon); +} |