On Wed, Jan 9, 2019 at 10:21 PM Boris Brezillon <bbrezillon@xxxxxxxxxx> wrote: > On Wed, 9 Jan 2019 21:55:30 +0100 > Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > > This patch keeps the CE (chip enable, the only chip select) > > signal from the FSMC block enabled from the first command > > after probe() or resume() until the driver either suspend() > > or remove(). Create a state variable to track this. > > I just read the Spear600 reference manual, and I'm not sure the > BANK_ENABLE bit controls the CE line. My understanding is that it just > marks the bank as active and CE line is asserted when you actually > access the AHB mem bank range (probably after making sure the FSMC bus > is idle). The Nomadik STn8815 says (for this bit): PBKEN PC-card/NAND-Flash chip-select enable. Enables the corresponding chip-select. If a disabled chip-select is accessed, an HRESP = ERROR is generated on the AHB bus. 0: disabled (default after reset) 1: enabled The same for Nomadik STn8820 and the Ux500 variants. So "enable" might very well have the meaning you say above, it's just very unclear and confusing. > If I'm correct, I'd recommend dropping fsmc_ce_ctrl() and marking the > bank enabled at probe time. This already happens in fsmc_nand_setup() so we just need to delete some code then. But maybe we should disable it during remove() at least? Yours, Linus Walleij ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/