From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Permerror (SPF Permanent Error: Void lookup limit of 2 exceeded) identity=mailfrom; client-ip=2a01:111:f400:fe07::60b; helo=eur02-am5-obe.outbound.protection.outlook.com; envelope-from=meenakshi.aggarwal@nxp.com; receiver=edk2-devel@lists.01.org Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-am5eur02on060b.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe07::60b]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 03855223230CB for ; Fri, 16 Feb 2018 00:48:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Tqc4azEdpuA6svLoyKvRSy0rDoHjZufnJbmCx9+Zre4=; b=lAPARbwXbnnsh6aMHSMq7/AwF1PpWM1u1im8wIs46k7O3LmeSnQXao6kp69BlXt6dGUQMhR0Zi/3mxwFPH4iUaWbjO/qyGUqtVQTqEBz63jFdxXaywACaVl0EGPgsSmgyzrm0h+GmzmSsc4oGMF+WG9dQ5N4M4j7VGi6HEMluA0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=meenakshi.aggarwal@nxp.com; Received: from idcbfarm.ap.freescale.net (192.88.169.1) by VI1PR04MB1008.eurprd04.prod.outlook.com (2a01:111:e400:5090::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.485.10; Fri, 16 Feb 2018 08:54:35 +0000 From: Meenakshi To: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org, michael.d.kinney@intel.com, edk2-devel@lists.01.org Date: Fri, 16 Feb 2018 14:20:24 +0530 Message-Id: <1518771035-6733-29-git-send-email-meenakshi.aggarwal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1518771035-6733-1-git-send-email-meenakshi.aggarwal@nxp.com> References: <1518771035-6733-1-git-send-email-meenakshi.aggarwal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [192.88.169.1] X-ClientProxiedBy: HK2PR02CA0172.apcprd02.prod.outlook.com (2603:1096:201:1f::32) To VI1PR04MB1008.eurprd04.prod.outlook.com (2a01:111:e400:5090::28) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: d6ff289e-b41f-4f24-47c1-08d5751ae90f X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603307)(7153060)(7193020); SRVR:VI1PR04MB1008; X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB1008; 3:zqmFE7ffeOaiBU6CKUubfQvGJlvml0AEDKoagVN3y34C3h5hPXSGAMJrgXoFEszNszmByhjGwrpAg47QVUGBHM6jacJB6UjfkEUQix4GH+jDAv2+W2CGYsaBJU4ZXduYT3x4prHRppWaRA/M0fbhBw+e1+959sx9n6aW83yg2mL2FCytbvYlhAEMot5LripTzpvquotzgw3VGuExTsZECTWRsqJPWUqdYlSVmwdZofEgHpCye9kX5JqQ/fH0cLfE; 25:gE3WpUBppMFm5VfDdHIQqjkgI8+0MyncUqYQC3nhbee/imQ2cLwnMKqmOxFCW5lhC+0Wklfv4L4LPn0IdSAVF+Z5hv6cbZXWwyj+Mr+QIVCD0n21j4W42HZMeRG2fnnaRmAZdPXf7heMP1ERtxqrNy8KqvbyLQf8XqHJj9Cw88A+Xia1Wvke099BGmTKW0nNkrNUGKuGkT/D0dHt26ivYlplZNIRvxawof9wGHNvXtKyFKacolq1igZwjvzSax4yvSuFu+zgw+eopv9NKAOkWOG57T1NZE3whm8zrV1VJw6jxz3m2LkeYWhOGDE6OdbCZLejtW1E4Y56/Vfg7wWhCw==; 31:0w3E0P3Ie1FBmGWsDpZpSKZWaVxqlmp9Vh1kE654kF1cQcs3c4lHhIhZc4gk10x571zAoeljmp3m6/Brx4tWxWsngNt1a32emAIdwPNmT8OF1jCc2U4kGhEbzWZrjW0wKaR6c3yeQWB2d6+lcp+Xc5BbdV93q2FplckxKDAiYVkGsOTv4jsfTdbGbAmFmLgrfDpdsRw/sjmlTb4H92dHocTqdQSUgKUlfKLt3hQEDv4= X-MS-TrafficTypeDiagnostic: VI1PR04MB1008: X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB1008; 20:qqaVDCeH9ldiTk2t0B9ahB43e9qUhWPyYan10yHbgMbFyNfMq1inhc2dWl5GdxsQC36vXQuZw28ogRW+yvXxi0Esba+jgy5eSkslfx83R0VXbHTRwpoTr/AI3jmEHre3oYVKBw/+QOOhsguajJon3I1O2qcjfHqyEqoe079cIItyRox6Bd3DHcHR/IjRzWmMCSZ/2lvT+SsMkOnaLUgxKBOpUEpbMgHHTsVp+6EaYB3LrVGHtSmYt2AntSF5PBDwvjeIbS2YuCMeFqki0P6/xRaCxrGDSF4k+AdnRht8r6Igz+BECh92L9HEYt4B9mdoxBAeBNTrymiu47jWrP+mP549ls0uR/x7WiYFHJ9jydrarf2xxtA1JyCId4HR1bqjgTdxEkTLeyUcdtuLL/QiyBkMHSvlzPXBLVR/oSgHOSrNkVeYwoTNaqpwWwslvGA6Kb8q6K0HpH1OK8VzPv6EQIu2SYFxucr1FHkm72U2zIaSPiPvlLQpSNuUYBMkI3fz; 4:2iV+fNpfPrRAdslHIJtuvKkUSdYY1xbaAvXCz28elheXiFrsPHNfxoAg7vvYk4Jh3lX+aaa+sfyuPwf6t1GNWxtPCMtbeqKeBKgg64Q97s3GWLY1xmMfbo7WgI1ST3J6waNLl8aGeAvL9M0/wGxMrzeMtvSatMgkTVwXFcqMOpVyQ/IBGQDplzGpIzSkgCzX+6SaYb2C0+A+epJBofTYYlnJ2cpZPTY8/2X6eJHxGu25oWOE1sVpOI/FXi+EFc2bW8k/0sTJR5045kThuyfGpOafBja+4PgNDbPDcmiBY42bwpGDsRVdOJDfQpH6qxa3 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231101)(944501161)(6055026)(6041288)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:VI1PR04MB1008; BCL:0; PCL:0; RULEID:; SRVR:VI1PR04MB1008; X-Forefront-PRVS: 0585417D7B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39380400002)(396003)(39860400002)(366004)(199004)(189003)(86362001)(575784001)(6486002)(8676002)(76176011)(36756003)(53376002)(966005)(4326008)(6116002)(15188155005)(16799955002)(7736002)(386003)(68736007)(186003)(26005)(53936002)(305945005)(16526019)(81156014)(3846002)(6506007)(478600001)(50226002)(16586007)(8936002)(2950100002)(316002)(2906002)(25786009)(97736004)(50466002)(48376002)(105586002)(52116002)(47776003)(81166006)(51416003)(5660300001)(6666003)(106356001)(66066001)(6306002)(6512007)(19627235001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR04MB1008; H:idcbfarm.ap.freescale.net; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR04MB1008; 23:cZAcz4yQIu//Vk9YO7lQFX6NRHI6dhGVfMz1Tn9LP?= =?us-ascii?Q?2/DFxHlVhExu8Vg5gOAWfczwOb7QF1F6gawhKswcUWWlwtQgh26ey2lVuPUf?= =?us-ascii?Q?nQW+mu09KRpNE3Wmr1ng163g6j32o0nQ1WWVXAFyvPdFvhDcMohX4FpK31Eu?= =?us-ascii?Q?GUJqFQ2pTIduePQ+Vecj6aOpKviQXSIgd4gEOlwWe6VsbM8VI2Mt8CGuHrlm?= =?us-ascii?Q?fJOvLjzvwaDGAlEFSkpum6dN4VqwQWD+mnAc2cftFLE/aflCao+T2MynC0A9?= =?us-ascii?Q?iN/YRYjtgPQdDx+y9vUogUdCJpmOKOKvpbJEvwSCuiez+r25JCr/r0PAwMC+?= =?us-ascii?Q?8zTd8r5hffB3HdNzt3J6MSPzUJgpFebUIkxHc9YcpDNPszSewUyr5LrcjjgJ?= =?us-ascii?Q?Goeu75aYzxZoz4zwNhnfk360zY9n06+ck+Z7phn67xra5Nzsb0zId375vgg1?= =?us-ascii?Q?SrTtIf7TN2zQuS3CvjwSsmWrQ40FNrMEB25RL90sH3xkz2Mp/ocDDac5mWf0?= =?us-ascii?Q?iaAf33qsfjEE8B1rKTJe0gi6VMa7WJNoRQHs3pBsUXT4vSnQ5RmeiXf2cpIE?= =?us-ascii?Q?xXOMdiYMlOvEroV3Voqfl8SGwOE0DemllBs9thuvXqBYaPma3zPEMc3JfgrM?= =?us-ascii?Q?RZDVZskKPmKOuuwi6ACbdJkBF/Q7g9rLvDWRGi0S+tU9+OnK0rQDfotUKQwJ?= =?us-ascii?Q?rM57kRyPIFAq0QKHLWsGpMLfjnT6aXoepK8X2V+g2vHJueuSpfbFLoQc7A/+?= =?us-ascii?Q?+D3HIXarDSwh77Q2XRrkXN0C0hrZq7MAO1zX+RSY9qMyA2Yg4AqUENdCuIva?= =?us-ascii?Q?uXpYBhBcnVrxlNCexsfyjp/yMaYgZPDRgcxSmle7o22LO/YB9syHg2pP3nTu?= =?us-ascii?Q?m8meX1+6vPt2nQZ24MlzK9a7beZaQydAo4Xein/OvuUhlT8HwBOIt/lCejt5?= =?us-ascii?Q?9Az8tWgdaT2jsitzCheHHBiuN9gXkQydNTFtVZIQTsZSDQhXFSwDyGLLHP/q?= =?us-ascii?Q?czUYjFce3IMyI5TtB/ATmhtQ/7NqBIgFIm5mirhPusNBS0cAot2kdpJTwkAj?= =?us-ascii?Q?MMEqGOdIFw+p93T8jKrMSQD0CHmmDfVJHgRjzQo9D/5ZORIIECoJbGkgrCDk?= =?us-ascii?Q?ONmtu389d0x1peiZ/YvKQYEhVoPibztlAoCO+OY35XhTgqWmrQy4w9+8TfBg?= =?us-ascii?Q?/JphFakusxH94LK8GNWfRVY2B9KUdZYXkKqvS43X57Z6L0f7sLgQRN6WSd5I?= =?us-ascii?Q?xsjCw6sMxziNFfSQV0=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR04MB1008; 6:7U4TwatfwHihdcf8USjcKtEYWO8QbNEJ7DEyW6xDfWFZ2SnohXdQuws3B/hNHFGcnRLOUJ1mmz5UyOjr14G75+kWHZK91fvRA4baImRNS6T36GqhFwvRR0EEE6g+hZNZFQCfQGuUH/78hxHK2a+xyKQg2jTr846WHW63IiOJ6SsVCZ5v6AFxwgcZNt6AUbYf24XV1VGNDEzi+98vA+8o8NJwL0hC1UbywyB2FKgmweD/GsSmZHHVTpD27t/IRfLH2F6U7oq1P3OmiicWPyk2Z03Q1l5I+eb4UI4XmKuDJXEyEJtxOeIVPipPiYSv64L6CAfnDYN1IuR3dsfiz6nCz4Mat1xDo2yCZdQ3IOi1EU0=; 5:NdSgrUQwfZx5FLrzKZ3vokaojYUkVnzzx7lDW9pxxH5fgXDIsyqmKsJLHhA3PnznbnFzWeS5Rp5PV87UrZWjalliElb4/GYumssyUFH6LDvpZleMiCHAKHe87HlPQHKiBA2QTaNrdBF9uxXjWt6jM4FtSZ90vZMzC4/o81j//p4=; 24:pKINgWM6hOwMG6sMnhmNo3s83fXgbZ3+roEcIKM7z7nH/qcJnw+zMe+MpXFNlQciIvOtsnWuHXif6AWWp546yaYEOFdc7UL96nm639l37GY=; 7:J4ZeFmHLT5ngTFH5JodRUeoOUMWix807GfRxs1EREW6Az6+ZigIhgMp0Tz+9zDp7hj7YfS1Jlxnk2gO46TzihT6vmXtYTJCipcIugWkX0K2zTnz/aH8leFd3OSRS/t18YVxU1tp2F9WXJExzzJKn7w/JviuvGFtpQNqazJ6DPQsU7FPHsF7rWB3TaqHXPy2tctBgEvTzmLjS3Vf72kjStNqMoHPZtUCyjzKO7/wjvw6Wm1TxoiEuNBb8XqBIgGW5 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Feb 2018 08:54:35.3891 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d6ff289e-b41f-4f24-47c1-08d5751ae90f X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB1008 Subject: [PATCH edk2-platforms 28/39] Platform/NXP: LS2088A RDB Board Library X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Feb 2018 08:48:48 -0000 Content-Type: text/plain From: Wasim Khan Library to provide board specific timings for LS2088ARDB board with interfacing to IFC controller for accessing NOR, NAND and FPGA. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Wasim Khan --- .../NXP/LS2088aRdbPkg/Include/IfcBoardSpecific.h | 114 +++++++++++++++++++++ .../NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.c | 69 +++++++++++++ .../LS2088aRdbPkg/Library/BoardLib/BoardLib.inf | 28 +++++ 3 files changed, 211 insertions(+) create mode 100644 Platform/NXP/LS2088aRdbPkg/Include/IfcBoardSpecific.h create mode 100644 Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.c create mode 100644 Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.inf diff --git a/Platform/NXP/LS2088aRdbPkg/Include/IfcBoardSpecific.h b/Platform/NXP/LS2088aRdbPkg/Include/IfcBoardSpecific.h new file mode 100644 index 0000000..174a242 --- /dev/null +++ b/Platform/NXP/LS2088aRdbPkg/Include/IfcBoardSpecific.h @@ -0,0 +1,114 @@ +/** IfcBoardSpecificLib.h + + IFC Flash Board Specific Macros and structure + + Copyright 2017-2018 NXP + + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ +#ifndef __IFC__BOARD_SPECIFIC_H__ +#define __IFC__BOARD_SPECIFIC_H__ + +#include + +// On board flash support +#define IFC_NAND_BUF_BASE 0x530000000ULL + +// On board Inegrated flash Controller chip select configuration +#define IFC_NOR_CS IFC_CS0 +#define IFC_NAND_CS IFC_CS2 +#define IFC_FPGA_CS IFC_CS3 + + +/* board-specific NAND timing */ +#define NAND_FTIM0 (IFC_FTIM0_NAND_TCCST(0x0e) | \ + IFC_FTIM0_NAND_TWP(0x30) | \ + IFC_FTIM0_NAND_TWCHT(0x0e) | \ + IFC_FTIM0_NAND_TWH(0x14)) + +#define NAND_FTIM1 (IFC_FTIM1_NAND_TADLE(0x64) | \ + IFC_FTIM1_NAND_TWBE(0xab) | \ + IFC_FTIM1_NAND_TRR(0x1c) | \ + IFC_FTIM1_NAND_TRP(0x30)) + +#define NAND_FTIM2 (IFC_FTIM2_NAND_TRAD(0x1e) | \ + IFC_FTIM2_NAND_TREH(0x14) | \ + IFC_FTIM2_NAND_TWHRE(0x3c)) + +#define NAND_FTIM3 0x0 + +#define IFC_NAND_BASE_PHYS 0x30000000 +#define NAND_CSPR (IFC_CSPR_PHYS_ADDR(IFC_NAND_BASE_PHYS) \ + | IFC_CSPR_PORT_SIZE_8 \ + | IFC_CSPR_MSEL_NAND \ + | IFC_CSPR_V) + +#define NAND_CSPR_EXT 0x0 +#define NAND_AMASK 0xFFFF0000 + +#define NAND_CSOR (IFC_CSOR_NAND_ECC_ENC_EN /* ECC on encode */ \ + | IFC_CSOR_NAND_ECC_DEC_EN /* ECC on decode */ \ + | IFC_CSOR_NAND_ECC_MODE_4 /* 4-bit ECC */ \ + | IFC_CSOR_NAND_RAL_3 /* RAL = 3 Bytes */ \ + | IFC_CSOR_NAND_PGS_4K /* Page Size = 4K */ \ + | IFC_CSOR_NAND_SPRZ_224 /* Spare size = 224 */ \ + | IFC_CSOR_NAND_PB(7)) /* 2^7 Pages Per Block */ + +// board-specific NOR timing +#define NOR_FTIM0 (IFC_FTIM0_NOR_TACSE(0x4) | \ + IFC_FTIM0_NOR_TEADC(0x5) | \ + IFC_FTIM0_NOR_TEAHC(0x5)) + +#define NOR_FTIM1 (IFC_FTIM1_NOR_TACO(0x35) | \ + IFC_FTIM1_NOR_TRAD_NOR(0x1a) | \ + IFC_FTIM1_NOR_TSEQRAD_NOR(0x13)) + +#define NOR_FTIM2 (IFC_FTIM2_NOR_TCS(0x4) | \ + IFC_FTIM2_NOR_TCH(0x4) | \ + IFC_FTIM2_NOR_TWPH(0xe) | \ + IFC_FTIM2_NOR_TWP(0x1c)) + +#define NOR_FTIM3 0x04000000 + +#define IFC_FLASH_BASE_PHYS 0x80000000 +#define NOR_CSPR (IFC_CSPR_PHYS_ADDR(IFC_FLASH_BASE_PHYS) \ + | IFC_CSPR_PORT_SIZE_16 \ + | IFC_CSPR_MSEL_NOR \ + | IFC_CSPR_V) + +#define NOR_CSPR_EXT 0x0 +#define NOR_AMASK IFC_AMASK(128*1024*1024) +#define NOR_CSOR IFC_CSOR_NOR_ADM_SHIFT(12) + +// board-specific fpga timing +#define FPGA_BASE_PHYS 0x20000000 +#define FPGA_CSPR_EXT 0x0 +#define FPGA_CSPR (IFC_CSPR_PHYS_ADDR(FPGA_BASE_PHYS) | \ + IFC_CSPR_PORT_SIZE_8 | \ + IFC_CSPR_MSEL_GPCM | \ + IFC_CSPR_V) + +#define FPGA_AMASK IFC_AMASK(64 * 1024) +#define FPGA_CSOR IFC_CSOR_NOR_ADM_SHIFT(12) + +#define FPGA_FTIM0 (IFC_FTIM0_GPCM_TACSE(0xe) | \ + IFC_FTIM0_GPCM_TEADC(0xe) | \ + IFC_FTIM0_GPCM_TEAHC(0xe)) + +#define FPGA_FTIM1 (IFC_FTIM1_GPCM_TACO(0xff) | \ + IFC_FTIM1_GPCM_TRAD(0x3f)) + +#define FPGA_FTIM2 (IFC_FTIM2_GPCM_TCS(0xf) | \ + IFC_FTIM2_GPCM_TCH(0xf) | \ + IFC_FTIM2_GPCM_TWP(0x3e)) + +#define FPGA_FTIM3 0x0 + +#endif //__IFC__BOARD_SPECIFIC_H__ diff --git a/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.c b/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.c new file mode 100644 index 0000000..936b789 --- /dev/null +++ b/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.c @@ -0,0 +1,69 @@ +/** @file + + Copyright 2017-2018 NXP + + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#include + +VOID +GetIfcNorFlashTimings ( + IN IFC_TIMINGS * NorIfcTimings + ) +{ + NorIfcTimings->Ftim[0] = NOR_FTIM0; + NorIfcTimings->Ftim[1] = NOR_FTIM1; + NorIfcTimings->Ftim[2] = NOR_FTIM2; + NorIfcTimings->Ftim[3] = NOR_FTIM3; + NorIfcTimings->Cspr = NOR_CSPR; + NorIfcTimings->CsprExt = NOR_CSPR_EXT; + NorIfcTimings->Amask = NOR_AMASK; + NorIfcTimings->Csor = NOR_CSOR; + NorIfcTimings->CS = IFC_NOR_CS; + + return ; +} + +VOID +GetIfcFpgaTimings ( + IN IFC_TIMINGS *FpgaIfcTimings + ) +{ + FpgaIfcTimings->Ftim[0] = FPGA_FTIM0; + FpgaIfcTimings->Ftim[1] = FPGA_FTIM1; + FpgaIfcTimings->Ftim[2] = FPGA_FTIM2; + FpgaIfcTimings->Ftim[3] = FPGA_FTIM3; + FpgaIfcTimings->Cspr = FPGA_CSPR; + FpgaIfcTimings->CsprExt = FPGA_CSPR_EXT; + FpgaIfcTimings->Amask = FPGA_AMASK; + FpgaIfcTimings->Csor = FPGA_CSOR; + FpgaIfcTimings->CS = IFC_FPGA_CS; + + return; +} + +VOID +GetIfcNandFlashTimings ( + IN IFC_TIMINGS * NandIfcTimings + ) +{ + NandIfcTimings->Ftim[0] = NAND_FTIM0; + NandIfcTimings->Ftim[1] = NAND_FTIM1; + NandIfcTimings->Ftim[2] = NAND_FTIM2; + NandIfcTimings->Ftim[3] = NAND_FTIM3; + NandIfcTimings->Cspr = NAND_CSPR; + NandIfcTimings->CsprExt = NAND_CSPR_EXT; + NandIfcTimings->Amask = NAND_AMASK; + NandIfcTimings->Csor = NAND_CSOR; + NandIfcTimings->CS = IFC_NAND_CS; + + return; +} diff --git a/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.inf b/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.inf new file mode 100644 index 0000000..5df84b1 --- /dev/null +++ b/Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.inf @@ -0,0 +1,28 @@ +# @file +# +# Copyright 2017-2018 NXP +# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# + +[Defines] + INF_VERSION = 0x0001001A + BASE_NAME = BoardLib + FILE_GUID = 13eacf2a-4338-48f4-88de-6ce4618e1a53 + MODULE_TYPE = BASE + VERSION_STRING = 1.0 + LIBRARY_CLASS = BoardLib + +[Sources.common] + BoardLib.c + +[Packages] + MdePkg/MdePkg.dec + Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dec + Silicon/NXP/NxpQoriqLs.dec -- 1.9.1