summaryrefslogtreecommitdiffstats
path: root/include/asm-arm/arch-omap/gpmc_nand.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-arm/arch-omap/gpmc_nand.h')
-rw-r--r--include/asm-arm/arch-omap/gpmc_nand.h121
1 files changed, 0 insertions, 121 deletions
diff --git a/include/asm-arm/arch-omap/gpmc_nand.h b/include/asm-arm/arch-omap/gpmc_nand.h
deleted file mode 100644
index c6c51d5d52..0000000000
--- a/include/asm-arm/arch-omap/gpmc_nand.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * @file
- * @brief This file contains exported structure for NAND
- *
- * FileName: include/asm-arm/arch-omap/gpmc_nand.h
- *
- * OMAP's General Purpose Memory Controller (GPMC) has a NAND controller
- * embedded. this file provides the platform data structure required to
- * hook on to it.
- *
- */
-/*
- * (C) Copyright 2008
- * Texas Instruments, <www.ti.com>
- * Nishanth Menon <x0nishan@ti.com>
- *
- * Originally from Linux kernel:
- * http://linux.omap.com/pub/kernel/3430zoom/linux-ldp-v1.3.tar.gz
- * include/asm-arm/arch-omap/nand.h
- *
- * Copyright (C) 2006 Micron Technology Inc.
- * Author: Shahrom Sharif-Kashani
- *
- * 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.
- */
-
-#ifndef __ASM_OMAP_NAND_GPMC_H
-#define __ASM_OMAP_NAND_GPMC_H
-
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/nand.h>
-#include <linux/mtd/nand_ecc.h>
-
-/** omap nand platform data structure */
-struct gpmc_nand_platform_data {
- /** Chip select you want to use */
- int cs;
- struct mtd_partition *parts;
- int nr_parts;
- /** If there are any special setups you'd want to do */
- int (*nand_setup) (struct gpmc_nand_platform_data *);
-
- /** set up if we want H/w ECC here and other
- * platform specific configs here
- */
- unsigned short plat_options;
- /** setup any special options */
- unsigned int options;
- /** set up device access as 8,16 as per GPMC config */
- char device_width;
- /** Set this to WAITx+1, so GPMC WAIT0 will be 1 and so on. */
- char wait_mon_pin;
- /** Set this to the max timeout for the device */
- uint64_t max_timeout;
-
- /* if you like a custom oob use this. */
- struct nand_ecclayout *oob;
- /** platform specific private data */
- void *priv;
-};
-
-/** Platform specific options definitions */
-/** plat_options: Wait montioring pin low */
-#define NAND_WAITPOL_LOW (0 << 0)
-/** plat_options: Wait montioring pin high */
-#define NAND_WAITPOL_HIGH (1 << 0)
-#define NAND_WAITPOL_MASK (1 << 0)
-
-#ifdef CONFIG_NAND_OMAP_GPMC_HWECC
-/** plat_options: hw ecc enabled */
-#define NAND_HWECC_ENABLE (1 << 1)
-#endif
-/** plat_options: hw ecc disabled */
-#define NAND_HWECC_DISABLE (0 << 1)
-#define NAND_HWECC_MASK (1 << 1)
-
-/* Typical BOOTROM oob layouts-requires hwecc **/
-#ifdef CONFIG_NAND_OMAP_GPMC_HWECC
-/** Large Page x8 NAND device Layout */
-#define GPMC_NAND_ECC_LP_x8_LAYOUT {\
- .eccbytes = 12,\
- .eccpos = {1, 2, 3, 4, 5, 6, 7, 8,\
- 9, 10, 11, 12},\
- .oobfree = {\
- {.offset = 60,\
- .length = 2 } } \
-}
-
-/** Large Page x16 NAND device Layout */
-#define GPMC_NAND_ECC_LP_x16_LAYOUT {\
- .eccbytes = 12,\
- .eccpos = {2, 3, 4, 5, 6, 7, 8, 9,\
- 10, 11, 12, 13},\
- .oobfree = {\
- {.offset = 60,\
- .length = 2 } } \
-}
-
-/** Small Page x8 NAND device Layout */
-#define GPMC_NAND_ECC_SP_x8_LAYOUT {\
- .eccbytes = 3,\
- .eccpos = {1, 2, 3},\
- .oobfree = {\
- {.offset = 14,\
- .length = 2 } } \
-}
-
-/** Small Page x16 NAND device Layout */
-#define GPMC_NAND_ECC_SP_x16_LAYOUT {\
- .eccbytes = 3,\
- .eccpos = {2, 3, 4},\
- .oobfree = {\
- {.offset = 14,\
- .length = 2 } } \
-}
-
-#endif /* CONFIG_NAND_OMAP_GPMC_HWECC */
-
-#endif /* __ASM_OMAP_NAND_GPMC_H */