From e3d92859c4351847a98e48746fb19d12fac16c6d Mon Sep 17 00:00:00 2001 From: Bob Johnston Date: Thu, 16 Aug 2012 10:52:14 -0400 Subject: E1853 BRINGUP Linux Snor: Micron Support Expanding NOR functionality to work with ADMUX and Burst mode for Micron Support in E1853. Bug 989919 Bug 966833 - Adding fields for picking MUX vs NONMUX and picking Async, Paging, Burst mode for reads - Added run time decision between them - 1853 specific settings for Async NOR - 1852 specific settings for NOR - 1853 NOR timings changed Reviewed-on: http://git-master/r/122286 (cherry picked from commit a242e7194c7de559d22fe5b275a8782086f10e50) Change-Id: I79de1d52d4c7199c83b380c2fa6d8cae6b35f09d Signed-off-by: Bob Johnston Reviewed-on: http://git-master/r/124946 Tested-by: Bob Johnston Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Sumeet Gupta Reviewed-by: Varun Wadekar --- include/linux/platform_data/tegra_nor.h | 46 ++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/linux/platform_data/tegra_nor.h b/include/linux/platform_data/tegra_nor.h index cd8faff2f1cd..4bd980d2195b 100644 --- a/include/linux/platform_data/tegra_nor.h +++ b/include/linux/platform_data/tegra_nor.h @@ -1,10 +1,5 @@ /* - * include/linux/platform_data/tegra_nor.h - * - * Copyright (C) 2010 - 2011 NVIDIA Corporation. - * - * Author: - * Raghavendra V K + * Copyright (C) 2010-2012, NVIDIA Corporation. All rights reserved. * * This software is licensed under the terms of the GNU General Public * License version 2, as published by the Free Software Foundation, and @@ -15,6 +10,11 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * + * include/linux/platform_data/tegra_nor.h + * + * Author: + * Raghavendra V K + * */ #ifndef __MACH_TEGRA_NOR_PDATA_H @@ -22,11 +22,45 @@ #include +typedef enum { + NorMuxMode_ADNonMux, + NorMuxMode_ADMux, +}NorMuxMode; + +typedef enum { + NorPageLength_Unsupported, + NorPageLength_4Word, + NorPageLength_8Word, +}NorPageLength; + +typedef enum { + NorBurstLength_CntBurst, + NorBurstLength_8Word, + NorBurstLength_16Word, + NorBurstLength_32Word, +}NorBurstLength; + +typedef enum { + NorReadMode_Async, + NorReadMode_Page, + NorReadMode_Burst, +}NorReadMode; + +typedef enum { + NorReadyActive_WithData, + NorReadyActive_BeforeData, +}NorReadyActive; + struct tegra_nor_chip_parms { struct { uint32_t timing0; uint32_t timing1; } timing_default, timing_read; + NorMuxMode MuxMode; + NorReadMode ReadMode; + NorPageLength PageLength; + NorBurstLength BurstLength; + NorReadyActive ReadyActive; }; struct tegra_nor_platform_data { -- cgit v1.2.3