From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nikolay Dimitrov Date: Sat, 12 Apr 2014 02:53:59 +0300 Subject: [U-Boot] board/freescale/mx6slevk: Add support for SPI NOR on the Freescale MCIMX6SLEVK Board In-Reply-To: References: Message-ID: <53488097.8080508@mail.bg> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, From what I remember when working with imx6d, the ecspi controller had a special behavior that it insisted on toggling the CS line for each 8-bit transfer. U-Boot has a workaround for this: using additional pin as "bit-banged CS". Here's how it worked on a project of mine: static iomux_v3_cfg_t const spi1_pads[] = { MX6_PAD_KEY_ROW1__GPIO4_IO09 | MUX_PAD_CTRL(NO_PAD_CTRL), // <= this is the new CS MX6_PAD_KEY_COL1__ECSPI1_MISO | MUX_PAD_CTRL(SPI_PAD_CTRL), MX6_PAD_KEY_ROW0__ECSPI1_MOSI | MUX_PAD_CTRL(SPI_PAD_CTRL), MX6_PAD_KEY_COL0__ECSPI1_SCLK | MUX_PAD_CTRL(SPI_PAD_CTRL) }; ...and here's what I defined in my board-config-file: #define CONFIG_SF_DEFAULT_CS (0 | (IMX_GPIO_NR(4, 9) << 8)) Then you need to double-check your ecspi config options, like speed, mode. You can check with a scope whether the clock pulses are within supported timing of your SPI chip. Kind regards, Nikolay On 4/11/2014 8:55 AM, u-boot-request@lists.denx.de wrote: > Message: 28 Date: Thu, 10 Apr 2014 12:20:58 -0300 From: Fabio Estevam > Subject: Re: [U-Boot] board/freescale/mx6slevk: > Add support for SPI NOR on the Freescale MCIMX6SLEVK Board To: Sam > Catch Cc: Marek Va?ut , > U-Boot-Denx Message-ID: > > Content-Type: text/plain; charset=UTF-8 On Thu, Apr 10, 2014 at 12:05 > PM, Sam Catch wrote: >> >I hope this email is now in the right format. >> > >> >Hi All, >> > >> >I am trying to add support for the SPI NOR device on the Freescale >> >MCIMX6SLEVK Board. I have created a patch that should enable support but >> >the u-boot probe command still does not find the device. The process fails >> >during the ECSPI transfer. >> > >> >I have tried the following patch to the latest git master of u-boot: >> > >> >http://pastebin.com/hamK7Ybb >> > >> >U-Boot Output: >> > >> >=> sf probe >> >SF: Unsupported flash IDs: manuf 00, jedec 0000, ext_jedec 0000 >> >Failed to initialize SPI flash at 0:27392 >> > >> >Does anyone have any insight as to why the Probe may be failing? I modeled >> >the changes on the mx6sabresd board. > I see the same error here. I measured with a scope and the chip select > signal behaves very differently compared to the mx6qsabresd board. > > When I do 'sf probe' on a mx6qsabresd the chip select line stays low > for 10us and then stays high. > > On mx6slevk the chip select line stays low for 0.5us, then it goes > high, goes low for 2us and they stays high. > > So there is something very wrong with the timings on mx6sl, but I > haven't had a chance to debug this yet. > > Regards, > > Fabio Estevam