diff options
author | Afzal Mohammed <afzal@ti.com> | 2012-10-05 11:39:54 +0530 |
---|---|---|
committer | Afzal Mohammed <afzal@ti.com> | 2012-10-15 14:41:59 +0530 |
commit | eb77b6a78ac7f63985a3f592baf80ff33d213c48 (patch) | |
tree | 2e77450150a5db8f27f8a58efa954b5b9c97e353 | |
parent | 4ea1e4ba7bec0a3d490a846376140643e4860536 (diff) | |
download | op-kernel-dev-eb77b6a78ac7f63985a3f592baf80ff33d213c48.zip op-kernel-dev-eb77b6a78ac7f63985a3f592baf80ff33d213c48.tar.gz |
ARM: OMAP2+: onenand: connected soc info in pdata
onenand driver needs to know whether soc is falling under
34xx family to properly handle onenand. But driver is not
supposed to do cpu_is_* check, hence educate platform data
with this information. Driver can make use of it to avoid
cpu_is_* check.
Signed-off-by: Afzal Mohammed <afzal@ti.com>
-rw-r--r-- | arch/arm/mach-omap2/gpmc-onenand.c | 5 | ||||
-rw-r--r-- | include/linux/platform_data/mtd-onenand-omap2.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/gpmc-onenand.c b/arch/arm/mach-omap2/gpmc-onenand.c index 06fd846..4a1c0b7 100644 --- a/arch/arm/mach-omap2/gpmc-onenand.c +++ b/arch/arm/mach-omap2/gpmc-onenand.c @@ -428,6 +428,11 @@ void __init gpmc_onenand_init(struct omap_onenand_platform_data *_onenand_data) gpmc_onenand_data->flags |= ONENAND_SYNC_READ; } + if (cpu_is_omap34xx()) + gpmc_onenand_data->flags |= ONENAND_IN_OMAP34XX; + else + gpmc_onenand_data->flags &= ~ONENAND_IN_OMAP34XX; + err = gpmc_cs_request(gpmc_onenand_data->cs, ONENAND_IO_SIZE, (unsigned long *)&gpmc_onenand_resource.start); if (err < 0) { diff --git a/include/linux/platform_data/mtd-onenand-omap2.h b/include/linux/platform_data/mtd-onenand-omap2.h index 21bb0ff..ef9c60d 100644 --- a/include/linux/platform_data/mtd-onenand-omap2.h +++ b/include/linux/platform_data/mtd-onenand-omap2.h @@ -14,6 +14,7 @@ #define ONENAND_SYNC_READ (1 << 0) #define ONENAND_SYNC_READWRITE (1 << 1) +#define ONENAND_IN_OMAP34XX (1 << 2) struct omap_onenand_platform_data { int cs; |