From patchwork Tue Jan 19 10:55:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gong Qianyu X-Patchwork-Id: 569925 X-Patchwork-Delegate: yorksun@freescale.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 092C0140307 for ; Tue, 19 Jan 2016 22:04:06 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id A08454BE32; Tue, 19 Jan 2016 12:04:04 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id H36BDztK6AZs; Tue, 19 Jan 2016 12:04:04 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id AF96B4BE1D; Tue, 19 Jan 2016 12:04:01 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id C1AB44BC15 for ; Tue, 19 Jan 2016 12:03:47 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yAooXZQ0ICny for ; Tue, 19 Jan 2016 12:03:47 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1bon0093.outbound.protection.outlook.com [157.56.111.93]) by theia.denx.de (Postfix) with ESMTPS id 107A34BC1B for ; Tue, 19 Jan 2016 12:03:46 +0100 (CET) Received: from BN3PR0301CA0057.namprd03.prod.outlook.com (10.160.152.153) by DM2PR0301MB1264.namprd03.prod.outlook.com (10.160.220.11) with Microsoft SMTP Server (TLS) id 15.1.361.13; Tue, 19 Jan 2016 11:03:44 +0000 Received: from BN1BFFO11FD012.protection.gbl (2a01:111:f400:7c10::1:136) by BN3PR0301CA0057.outlook.office365.com (2a01:111:e400:401e::25) with Microsoft SMTP Server (TLS) id 15.1.365.19 via Frontend Transport; Tue, 19 Jan 2016 11:03:44 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; freescale.mail.onmicrosoft.com; dmarc=none action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1BFFO11FD012.mail.protection.outlook.com (10.58.144.75) with Microsoft SMTP Server (TLS) id 15.1.355.15 via Frontend Transport; Tue, 19 Jan 2016 11:03:43 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id u0JB3YG7012172; Tue, 19 Jan 2016 04:03:39 -0700 From: Gong Qianyu To: Date: Tue, 19 Jan 2016 18:55:20 +0800 Message-ID: <1453200921-800-2-git-send-email-Qianyu.Gong@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1453200921-800-1-git-send-email-Qianyu.Gong@nxp.com> References: <1453200921-800-1-git-send-email-Qianyu.Gong@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 130976750240766823; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD012; 1:D/+l7dwBZLftyswxSySNMyI99fIH6R1C0WgD423+cvarXXzsjfu8Z6GKBk3CJNKRgktalb5MX4F4OeiHzv0dvLpZPjiS/nAknvAYGUBkio/kkstMQ48qTFkkTgLQ3megJu54JJjvCCb8v075RhQBB9wHyP1l1yQ4cbRBfM766zhV4eoRCTOqhtuIaLaRgk9y+SM+aGcTUdlAciLz/EPEA51yL4vhtRg02g8GreISvEG4xuiv99rZc51My4EeEKDbeZ7kOSF1ymqQLsKQKKkBCVrioFLWqEz7jEXdnGjm1hnKdl6DOMj5aI6iBtJUjW87rIxfi/pKow0QgBAzGSyGcQY5GDxt4iJ3iLx+e13SI7EhopBD5wGyDw1uqCRP4c9yPLVjrfhBS7E/4yfFw5o2g6GysMDz6Fk1mUdnCPzcFDbENBScQXGmM1g9Grdv/RPo7hvqWAhAqFA2pGgKte7h0MyLSioShUP7oAJNp6LaeBADYnEe5YEq12XNYIIk2Bvc X-Forefront-Antispam-Report: CIP:192.88.168.50; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(19580405001)(2950100001)(19580395003)(107886002)(77096005)(86362001)(76176999)(5003940100001)(5008740100001)(48376002)(229853001)(105606002)(50466002)(50986999)(36756003)(47776003)(87936001)(586003)(6806005)(4001430100002)(11100500001)(110136002)(5001960100002)(2351001)(2906002)(106466001)(1096002)(50226001)(4326007)(189998001)(81156007)(1220700001)(92566002)(97736004)(85426001)(104016004); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR0301MB1264; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB1264; 2:Q1/5OGGa+zREZPQEGRxZbx+KNeWCkVxBcRBaGYQrdandA+n2M+dQRfNh72mzH8EAd4JHnk/CImrLm5y/AwGYU09HTJqxPu50CUj0yF86g2Y3A7vlCDbgbHuGky/nDy12Kk1krqbnXidzOayLs/cCFw==; 3:Vp2kGEN67lBN7jfTjxPFJQOlaeZHFBxJPTC8oB0W1lV4fhjls/c6c5b5OaiLqFXMLmX5dThNsxBsXhMouGypWJQI2mlfPKc8o4Nv9GyO6h/FB/DmRr7iM34NyiVAQ2laQUOEGRC1Gh5v0CiskNCCUOMs7FR+rZdSR5LAt4hP9Tky5AXmh9hVLBtfhkp7XOwcoFUfKoAWdj360q/tfh1CYq2cOgaQoaPC22yS5fOGUsk=; 25:iIs+Iae65cWvBoR5lAcHc74PU/qlvDZX1H8ODpinaRSUDht5G4HFqWrua6xkM56n37eF1uNDWtco9nzGJsjjqT5MtL9jvLQTbJh9vDjHs6N/xXQ3XEHX1YtNUtGjoYJBZlR8AsmBrqDX/bTYpXVHg0yY3YU7bboMLXTasgJ4ES0mR2jc27QuyjxFZvEfoZAxJFUKwEFGn70Riq++QN5BuVfmRVDAFSWPkhUT6OtouqOCteSslvP6CIA8RCL3mjMy X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM2PR0301MB1264; X-MS-Office365-Filtering-Correlation-Id: 3323bcb3-bc69-4a6a-3a06-08d320c03264 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(101931422205132); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(13017025)(5005006)(13018025)(13023025)(520078)(13024025)(13015025)(8121501046)(10201501046)(3002001); SRVR:DM2PR0301MB1264; BCL:0; PCL:0; RULEID:(400006); SRVR:DM2PR0301MB1264; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB1264; 4:8WmhaK8n+G1XUsVqXtq7OTPBrz1Ked2vC1Tz0GYZoiTItGbcyB37M2kgEYt5mQL4cPCISxdKoLV6NyMo+qxmq6FSK7V9OyfmiuLORgaxG6WQ938Kww523lVnfGBBudUNUQoCA6EQuYF0jl3bjBLvbKZOazXc8r7r9k3iGRjA0sKjtdrIkf7UzwZTo5JbKZHhV1krA15F3aOp89PtBKR+K2soP+wwGmm0q5Cmg189FpIDtOKgo4BUljQ8wAlT7X15/IDoQTLipsBy+9JtvKzAIpuL9GJDxixGd6mB3vFdyts30pqsCM7/Crwa+FuR4EZPSSSuQALnfvHvZ5T2o/he1rcWYZwvZAus/9XvOBI5z7SfwqCzq1OBM6ykDnUSqDsIbVlOpmkNOJvcdMzNxOA0067vEYSkKMAFBhwhaA4f1LrDhI5MDJTRU45ypw2JZeM3hAwu6vLG5Uw1nDDGjLj2By0Eq/1bOly6HzqBSpqiFDpyAhkEnikNn8yh8bhIqgjVNHreBlb8EbECEFbp3mLUvg== X-Forefront-PRVS: 0826B2F01B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM2PR0301MB1264; 23:ULeuxBttwUEwheL2ofzGh+RyFYgXbU+3nFaAno3?= =?us-ascii?Q?4SzQzPk5Vyf9OXKcJIsstMPaZA11jgG+xC3RNBVSLwbY3TDuhn5UChoAVFJB?= =?us-ascii?Q?M9D+REmAPrJuBXCaDclQ09I3M31AYNJ6hEU3eug+w1tCJOPbKrlEMl8y76IG?= =?us-ascii?Q?qkLGCxMeJ3ZpEGKRlO+Eyt7hTxkkzXpjtMZGkw5mWiXWiD+7T/xl9Pf7+iSq?= =?us-ascii?Q?KsJ3cn1LvDAcJsf8yIft2AFcYQDsMeOQYA87CJ3Qr82//4VxQs5WOTZcDKcW?= =?us-ascii?Q?1yXMjLrc2zjb25CcBAyWUUv3aPEM7xwIEhY/0YZM/DAYTu07ZdMr8S7cKURw?= =?us-ascii?Q?A5aJi9IW1jSaQGprdgB0kgdxnzUo3kpm2KmU81x6yAtQLoANopVIMZmuNW33?= =?us-ascii?Q?57w0A0sIV8F8P4OTV4jB+4RnE41QsNm4jnwWeMXub83fqOViqdYVLiDs4FZS?= =?us-ascii?Q?fY+qmBso/Q7B5IWXaJwWEX5c9WytAu7fstWdgRJBwa33yMkXLAEpP5OOLIRy?= =?us-ascii?Q?tmbFpCSXSMtUDm+utYQEUCtS59LumDbyDDH59x1VS+MRHhQp3ZDIyN2xF+pm?= =?us-ascii?Q?nFVJFcfYXc3+5Pl+uBWAPGxFU8BGpGYdjHkRFcKwbFZ9Km3t2Y48bQUxkoGU?= =?us-ascii?Q?XrXcd/6mzBKIIGi85JsdOG+7hvaPQWH+TpDlQhrfHK3y5aYE3ESwloEX63oS?= =?us-ascii?Q?4N3tp/yPm3JmwSMjXmSWWQLavmzDm04amiozbXU3uHwgcRHJHp4An4mqBUrx?= =?us-ascii?Q?zCJX4fcw3+eFJlWY9g5mnWm9OxXpFKqvpkqsHGq1Tow1nqCz52Rt1QLck6VV?= =?us-ascii?Q?NynYGbc/IYWmEi4S50Ztg8wLHWXUhPZbl5K9IpDWGk0ErsUOKEWGt2MnGO4y?= =?us-ascii?Q?aOOT3UZHC44WVFpKjXoI2zdI7yjll9Fk8xnfVk8IMihHmdjaLXXfTq5YGk1y?= =?us-ascii?Q?XpiHFKw1a825M8J/WXW26AC+yHyrQJbgAWKgfvd8imuE74AqRaIe2qqstM2T?= =?us-ascii?Q?86GKe08rzMV7KtyOu+pKUYrLpoNn5HSL+dqbaeSwtDETo1TuBZdx7hn5a6bq?= =?us-ascii?Q?U7h8YTQu/VapPBpLYqe4rDi1ML0rkpmiln4LX5QAaYIuaiCa76O/WCLKe7zf?= =?us-ascii?Q?kXG/HYklcj9IBV5PIrxfDXUhJ88ZgNUy1?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB1264; 5:URI45LXPeJxUDkrkGMfbqZLp2Dw9poyIwUOKSbovo7VdLgHOYJgJ6lOqIJoCRx4njg82XTSVWDbsf7CYoAHI1f3+jJasbcqjfZGmeqbuhCwDgUDo0lGqWO9Jn3eG5j+rbyWRT9tbdBBghUqivseL+HE3scbjLgd43wzfbfPll1M=; 24:CX6gP3NxyRANa6MzDFl0g6KRZltSvoCuhMPYwwH0jOr/OG4btbuW1yf357y6HMBMs2VbU9aHEkl1QCafUwspO5QtkhoAiGgx18srqKLbs2w= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2016 11:03:43.4214 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0301MB1264 Cc: B07421@freescale.com, Gong Qianyu , B48286@freescale.com, Wenbin.Song@freescale.com Subject: [U-Boot] [Patch V4 2/3] armv8/ls1043aqds: add QSPI support in SD boot X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" From: Gong Qianyu QSPI and IFC are pin-multiplexed on LS1043A. So we use ls1043aqds_sdcard_ifc_defconfig to support IFC in SD boot and ls1043aqds_sdcard_qspi_defconfig to support QSPI in SD boot. Signed-off-by: Gong Qianyu --- V4: - No change. V3: - Remove the fixup for IFC. V2: - Modified rcw file to change core frequency to 1600MHz for SD_BOOT_QSPI. arch/arm/cpu/armv8/fsl-layerscape/soc.c | 3 +++ arch/arm/dts/fsl-ls1043a-qds.dts | 14 +++++++++++++ arch/arm/dts/fsl-ls1043a.dtsi | 11 +++++++++++ board/freescale/ls1043aqds/MAINTAINERS | 1 + .../ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg | 8 ++++++++ configs/ls1043aqds_sdcard_qspi_defconfig | 10 ++++++++++ include/configs/ls1043a_common.h | 13 ++++++++++++ include/configs/ls1043aqds.h | 23 ++++++++++++++++++++++ 8 files changed, 83 insertions(+) arch/arm/cpu/armv8/fsl-layerscape/soc.c | 3 +++ arch/arm/dts/fsl-ls1043a-qds.dts | 14 +++++++++++++ arch/arm/dts/fsl-ls1043a.dtsi | 11 +++++++++++ board/freescale/ls1043aqds/MAINTAINERS | 1 + .../ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg | 8 ++++++++ configs/ls1043aqds_sdcard_qspi_defconfig | 10 ++++++++++ include/configs/ls1043a_common.h | 13 ++++++++++++ include/configs/ls1043aqds.h | 23 ++++++++++++++++++++++ 8 files changed, 83 insertions(+) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c index 23d6b73..4b1f792 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c @@ -219,6 +219,9 @@ void fsl_lsch2_early_init_f(void) init_early_memctl_regs(); /* tighten IFC timing */ #endif +#ifdef CONFIG_FSL_QSPI + out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL); +#endif /* Make SEC reads and writes snoopable */ setbits_be32(&scfg->snpcnfgcr, SCFG_SNPCNFGCR_SECRDSNP | SCFG_SNPCNFGCR_SECWRSNP); diff --git a/arch/arm/dts/fsl-ls1043a-qds.dts b/arch/arm/dts/fsl-ls1043a-qds.dts index 93d73a6..9916f1b 100644 --- a/arch/arm/dts/fsl-ls1043a-qds.dts +++ b/arch/arm/dts/fsl-ls1043a-qds.dts @@ -16,6 +16,7 @@ / { model = "LS1043A QDS Board"; aliases { + spi0 = &qspi; spi1 = &dspi0; }; }; @@ -49,6 +50,19 @@ }; }; +&qspi { + bus-num = <0>; + status = "okay"; + + qflash0: s25fl128s@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "spi-flash"; + spi-max-frequency = <20000000>; + reg = <0>; + }; +}; + &i2c0 { status = "okay"; pca9547@77 { diff --git a/arch/arm/dts/fsl-ls1043a.dtsi b/arch/arm/dts/fsl-ls1043a.dtsi index 85ea81e..f83cc3e 100644 --- a/arch/arm/dts/fsl-ls1043a.dtsi +++ b/arch/arm/dts/fsl-ls1043a.dtsi @@ -182,5 +182,16 @@ interrupts = <0 55 0x4>; clocks = <&clockgen 4 0>; }; + + qspi: quadspi@1550000 { + compatible = "fsl,vf610-qspi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x1550000 0x10000>, + <0x40000000 0x4000000>; + num-cs = <2>; + big-endian; + status = "disabled"; + }; }; }; diff --git a/board/freescale/ls1043aqds/MAINTAINERS b/board/freescale/ls1043aqds/MAINTAINERS index 0c7f648..868bb72 100644 --- a/board/freescale/ls1043aqds/MAINTAINERS +++ b/board/freescale/ls1043aqds/MAINTAINERS @@ -7,3 +7,4 @@ F: configs/ls1043aqds_defconfig F: configs/ls1043aqds_nor_ddr3_defconfig F: configs/ls1043aqds_nand_defconfig F: configs/ls1043aqds_sdcard_ifc_defconfig +F: configs/ls1043aqds_sdcard_qspi_defconfig diff --git a/board/freescale/ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg b/board/freescale/ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg new file mode 100644 index 0000000..7783521 --- /dev/null +++ b/board/freescale/ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg @@ -0,0 +1,8 @@ +#PBL preamble and RCW header +aa55aa55 01ee0100 +# RCW +# Enable QSPI; disable IFC +08100010 0a000000 00000000 00000000 +14550002 80004012 60040000 c1002000 +00000000 00000000 00000000 00038800 +20124000 00001100 00000096 00000001 diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig new file mode 100644 index 0000000..37e8b3c --- /dev/null +++ b/configs/ls1043aqds_sdcard_qspi_defconfig @@ -0,0 +1,10 @@ +CONFIG_ARM=y +CONFIG_TARGET_LS1043AQDS=y +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI" +CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds" +CONFIG_SYS_NS16550=y +CONFIG_OF_CONTROL=y +CONFIG_DM=y +CONFIG_SPI_FLASH=y +CONFIG_DM_SPI=y diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h index 38e5b9b..707405c 100644 --- a/include/configs/ls1043a_common.h +++ b/include/configs/ls1043a_common.h @@ -121,6 +121,7 @@ #endif /* IFC */ +#ifndef CONFIG_SD_BOOT_QSPI #define CONFIG_FSL_IFC /* * CONFIG_SYS_FLASH_BASE has the final address (core view) @@ -139,6 +140,7 @@ #define CONFIG_SYS_FLASH_QUIET_TEST #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ #endif +#endif /* I2C */ #define CONFIG_CMD_I2C @@ -205,18 +207,29 @@ #define CONFIG_SPI_FLASH_STMICRO /* cs0 */ #define CONFIG_SPI_FLASH_SST /* cs1 */ #define CONFIG_SPI_FLASH_EON /* cs2 */ +#ifndef CONFIG_SD_BOOT_QSPI #define CONFIG_SF_DEFAULT_BUS 1 #define CONFIG_SF_DEFAULT_CS 0 #endif +#endif /* FMan ucode */ #define CONFIG_SYS_DPAA_FMAN #ifdef CONFIG_SYS_DPAA_FMAN #define CONFIG_SYS_FM_MURAM_SIZE 0x60000 +#ifdef CONFIG_SD_BOOT_QSPI +#define CONFIG_SYS_QE_FW_IN_SPIFLASH +#define CONFIG_SYS_FMAN_FW_ADDR 0x400d0000 +#define CONFIG_ENV_SPI_BUS 0 +#define CONFIG_ENV_SPI_CS 0 +#define CONFIG_ENV_SPI_MAX_HZ 1000000 +#define CONFIG_ENV_SPI_MODE 0x03 +#else #define CONFIG_SYS_QE_FMAN_FW_IN_NOR /* FMan fireware Pre-load address */ #define CONFIG_SYS_FMAN_FW_ADDR 0x60300000 +#endif #define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000 #define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) #endif diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h index 43107b0..cb519e1 100644 --- a/include/configs/ls1043aqds.h +++ b/include/configs/ls1043aqds.h @@ -85,8 +85,12 @@ unsigned long get_board_ddr_clk(void); #endif #ifdef CONFIG_SD_BOOT +#ifdef CONFIG_SD_BOOT_QSPI +#define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1043aqds/ls1043aqds_rcw_sd_qspi.cfg +#else #define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1043aqds/ls1043aqds_rcw_sd_ifc.cfg #endif +#endif /* SATA */ #define CONFIG_LIBATA @@ -108,6 +112,7 @@ unsigned long get_board_ddr_clk(void); /* * IFC Definitions */ +#ifndef CONFIG_SD_BOOT_QSPI #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ CSPR_PORT_SIZE_16 | \ @@ -191,6 +196,7 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_CMD_NAND #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) +#endif #ifdef CONFIG_NAND_BOOT #define CONFIG_SPL_PAD_TO 0x20000 /* block aligned */ @@ -198,6 +204,12 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_NAND_U_BOOT_SIZE (640 << 10) #endif +#ifdef CONFIG_SD_BOOT_QSPI +#define CONFIG_QIXIS_I2C_ACCESS +#define CONFIG_SYS_NO_FLASH +#undef CONFIG_CMD_IMLS +#endif + /* * QIXIS Definitions */ @@ -214,6 +226,7 @@ unsigned long get_board_ddr_clk(void); #define QIXIS_LBMAP_ALTBANK 0x04 #define QIXIS_LBMAP_NAND 0x09 #define QIXIS_LBMAP_SD 0x00 +#define QIXIS_LBMAP_SD_QSPI 0xff #define QIXIS_RCW_SRC_NAND 0x106 #define QIXIS_RCW_SRC_SD 0x040 #define QIXIS_RST_CTL_RESET 0x41 @@ -342,6 +355,16 @@ unsigned long get_board_ddr_clk(void); #define VDD_MV_MIN 819 #define VDD_MV_MAX 1212 +/* QSPI device */ +#ifdef CONFIG_SD_BOOT_QSPI +#define CONFIG_FSL_QSPI +#ifdef CONFIG_FSL_QSPI +#define CONFIG_SPI_FLASH_SPANSION +#define FSL_QSPI_FLASH_SIZE (1 << 24) +#define FSL_QSPI_FLASH_NUM 2 +#endif +#endif + /* * Miscellaneous configurable options */