Path: csiph.com!1.us.feeder.erje.net!2.us.feeder.erje.net!feeder.erje.net!1.eu.feeder.erje.net!weretis.net!feeder4.news.weretis.net!news.mixmin.net!aioe.org!news.servidellagleba.it!bofh.it!news.nic.it!robomod From: Masahiro Yamada Newsgroups: linux.kernel Subject: [RESEND PATCH v2 23/53] mtd: nand: denali: set DEVICES_CONNECTED 1 if not set Date: Wed, 22 Mar 2017 21:20:03 +0100 Message-ID: References: Dkim-Filter: OpenDKIM Filter v2.10.3 conuserg-07.nifty.com v2MK896D029452 Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1490213328; bh=lJjun7m07Up94XhckEfI9LGZQhK6861r5EIlvWfOCpk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tX8nqjDtkzjdRzDjHJmBEexHmpzZsMPfXmmR0KuJhsaMupYgIEA32ZKe8T81iLGYQ O8PeepUQc7g0qNZghpJ7B8Gl7U4t3dcbN1J577P2LgU3hJ4F6/SFM55/wGpNiAGLKN YTmwe129MzIl4xDoMaFa2YTN0sOoNBg4q5Cc4CznaEEMBtvUp5lA4CrIedImA4QB8k Y6vT/de5MymFIMwdKQ6/wOcOPj0eKtT27EnXzmApTMWAQq+VZ+lLeFIn/A7KFfH7dY AeHvszXF3Of7Q/4aztx+VCFLGpLz0FB4yv4rZ1V5bB+JJzetwqQ4kcRcQG72pIJoJZ DGN3zWZNtLbdQ== X-Nifty-Srcip: [111.169.71.157] X-Mailer: git-send-email 2.7.4 Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 35 Organization: linux.* mail to news gateway X-Original-Cc: laurent.monat@idquantique.com, thorsten.christiansson@idquantique.com, Enrico Jorns , Artem Bityutskiy , Dinh Nguyen , Boris Brezillon , Marek Vasut , Graham Moore , David Woodhouse , Masami Hiramatsu , Chuanxiao Dong , Jassi Brar , Masahiro Yamada , linux-kernel@vger.kernel.org, Brian Norris , Richard Weinberger , Cyrille Pitchen X-Original-Date: Thu, 23 Mar 2017 05:07:22 +0900 X-Original-Message-ID: <1490213273-8571-24-git-send-email-yamada.masahiro@socionext.com> X-Original-References: <1490213273-8571-1-git-send-email-yamada.masahiro@socionext.com> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1606970 Currently, the driver expects DEVICE_CONNECTED is automatically set by the hardware, but this feature is disabled in some cases. In such cases, it is the software's responsibility to set up the DEVICES_CONNECTED register. Signed-off-by: Masahiro Yamada --- Changes in v2: None drivers/mtd/nand/denali.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c index abf8997..3da0a0e 100644 --- a/drivers/mtd/nand/denali.c +++ b/drivers/mtd/nand/denali.c @@ -1472,6 +1472,15 @@ static int denali_multidev_fixup(struct denali_nand_info *denali) */ denali->devnum = ioread32(denali->flash_reg + DEVICES_CONNECTED); + /* + * On some SoCs, DEVICES_CONNECTED is not auto-detected. + * For those, DEVICES_CONNECTED is left to 0. Set 1 if it is the case. + */ + if (denali->devnum == 0) { + denali->devnum = 1; + iowrite32(1, denali->flash_reg + DEVICES_CONNECTED); + } + if (denali->devnum == 1) return 0; -- 2.7.4