Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752365AbbFDEyt (ORCPT ); Thu, 4 Jun 2015 00:54:49 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:33563 "EHLO mail-wi0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750770AbbFDEym (ORCPT ); Thu, 4 Jun 2015 00:54:42 -0400 MIME-Version: 1.0 In-Reply-To: <201506040058.52882.marex@denx.de> References: <36e315552c849a4d22ac0fcff7958f6ffcafb160.1433364398.git.hramrach@gmail.com> <201506040058.52882.marex@denx.de> From: Michal Suchanek Date: Thu, 4 Jun 2015 06:54:00 +0200 Message-ID: Subject: Re: [PATCH 04/11] mtd: ofpart: do not fail probe when no partitions exist To: Marek Vasut Cc: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Russell King , Kukjin Kim , Krzysztof Kozlowski , Vinod Koul , Dan Williams , David Woodhouse , Brian Norris , Han Xu , Mark Brown , Geert Uytterhoeven , =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= , Alison Chaiken , Huang Shijie , Ben Hutchings , Knut Wohlrab , =?UTF-8?B?QmVhbiBIdW8g6ZyN5paM5paMIChiZWFuaHVvKQ==?= , "grmoore@altera.com" , devicetree , Linux Kernel Mailing List , "linux-arm-kernel@lists.infradead.org" , linux-samsung-soc , dmaengine , linux-mtd@lists.infradead.org, linux-spi Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2038 Lines: 59 On 4 June 2015 at 00:58, Marek Vasut wrote: > On Wednesday, June 03, 2015 at 11:26:40 PM, Michal Suchanek wrote: >> On Exynos it is necessary to set SPI controller parameters that apply to >> a SPI slave in a DT subnode of the slave device. The ofpart code returns >> an error when there are subnodes of the SPI flash but no partitions are >> found. Change this condition to a warning so that flash without >> partitions can be accessed on Exynos. > > I have to admit the rationale for this patch is not very clear to me, sorry. > Can you please explain this a bit more ? This is how the DT entry for SPI slave looks with s3c64xx: flash: m25p80@0 { #address-cells = <1>; #size-cells = <1>; compatible = "jedec,spi-nor"; reg = <0>; spi-max-frequency = <40000000>; linux,max_tx_len = <65536>; m25p,fast-read; controller-data { samsung,spi-feedback-delay = <0>; }; }; this is example of flash partitions: flash@0 { #address-cells = <1>; #size-cells = <1>; partition@0 { label = "u-boot"; reg = <0x0000000 0x100000>; read-only; }; uimage@100000 { reg = <0x0100000 0x200000>; }; }; The parser ignores any flash without subnodes and returns 0 (no partititon). When there is a subnode it assumes the flash is partitioned and tries to parse the subnodes as partitions. When there are subnodes and none parses as partition an error is returned. As shown above it is valid to have subnodes on unpartitioned flash. When an error is returned from a partition parser the mtdpart code passes on this error to the flash probe function and the proble of the flash fails. Thanks Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/