Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753539AbdHKQ2z (ORCPT ); Fri, 11 Aug 2017 12:28:55 -0400 Received: from mail-by2nam03on0054.outbound.protection.outlook.com ([104.47.42.54]:11025 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752724AbdHKQ2x (ORCPT ); Fri, 11 Aug 2017 12:28:53 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=alex.g@adaptrum.com; Subject: Re: [PATCH v2 2/5] reset: socfpga: use the reset-simple driver To: Philipp Zabel , linux-kernel@vger.kernel.org References: <20170811130618.3676-1-p.zabel@pengutronix.de> <20170811130618.3676-3-p.zabel@pengutronix.de> Cc: Andre Przywara , Maxime Coquelin , Alexandre Torgue , Maxime Ripard , Chen-Yu Tsai , Baoyou Xie , Eugeniy Paltsev , Steffen Trumtrar , Dinh Nguyen , linux-arm-kernel@lists.infradead.org, kernel@pengutronix.de From: Alexandru Gagniuc Message-ID: Date: Fri, 11 Aug 2017 09:28:44 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <20170811130618.3676-3-p.zabel@pengutronix.de> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [198.0.218.81] X-ClientProxiedBy: DM5PR13CA0042.namprd13.prod.outlook.com (10.168.240.156) To MWHPR04MB0848.namprd04.prod.outlook.com (10.172.168.146) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1a709bce-f2b0-44bd-1f5c-08d4e0d60c07 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(2017082002075)(300000503095)(300135400095)(201703131423075)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:MWHPR04MB0848; X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0848;3:lVHsXgIKeToaLXvSulrd62UNtb5fT1kcu7Md21i2WWNfd+TwvUGRB3tutevd6sT6n0buZDAI0/TWlwDDK2iKp12ELno7W9NHdomBHjEu8tSOvpxYm3tJaawfIBRZOdk6HeyoTWkryEpBoVWsIF+BLmt1EiReVPrn8YtZgVtK/PHIy5xCcRZw3t8WHBkqLRv96uL7BIH4Q6G5Ln7034sVWAm6nA2ekcACrgNJqKXPP+Xw7K+AnJF6TAnDvwT/vnCi;25:IyMjQmhQJ4aIamxlAzgGrm97Cfb7wNIPQ+bu2nhFyDrAuwviOghuqVdW/91LKnOk7exOj8FxT7rZDiupiHxNQMRPCXLQ4ZcT+hSrcjX03xYWPOwyUzoUpHJhyyUYN72qm26ptbLAEh0LN8v6yeTruTurITkxHc1+FSu1qusCuyqmyURZ/WcMNN6jAxrQr5ZnYjJ44SdAhdvOwX6OaHF9OcemfYRYk0GgmXlFevOIUaTRK3AAy5AaduKIpC6klpUKbzhJ2UmKDbnjUky9UhWRa2XN9C2mP0Yesnx5FFdtRIk+gg5J5b5p0xDNN8gFdb9UU+mVAUZlmlcStV+5Raep2Q==;31:0MlhUp5v/8+ivj6ePysAIl2EylwjXbTfqqGCmSHlcTUT6W6HKVZNqqtIyT4Mms1nsyuuz5PGULvjqBY/51F8aARQfdIdrZP/+KUXNNFoqZSRxnIpr1diLd1D6ABRlWOSduxW1TCnOa+v+KqQ9AdcqMulyGBp6oM0MoTH8eFt5F3Bt/J3ZEw8cw76L/VOp7QcfLXwZ0LOe+rf6Zmj8ULII0ubMYRYfLqz+00ftjJgQpQ= X-MS-TrafficTypeDiagnostic: MWHPR04MB0848: X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123555025)(20161123560025)(2016111802025)(20161123558100)(6072148)(6043046)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:MWHPR04MB0848;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:MWHPR04MB0848; X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0848;4:2X5I2op1APt2rJsuAOxBzCiv0DUzpMDWDDQWbdZ3vUhREc8L1Xhjt3imaVZUwxnTjBbIytZHMDcUvfwPuRX30sRop7QWcsIK1iQYTKRadEf4/Ye99LC4wGfPOELBJxnmYTTEX9+Nj3f9MPmFwBuuOfi5ESeJZYmoUeoov8AHycEQJTw3y6nmz2QIliCWmT+rTtdA5K8XzWE51f7Jz2r/uhaWkkOf6VnzHxUEOKruxZXoXo/u+YQ4un7KcO9M9f3V X-Forefront-PRVS: 03965EFC76 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(7370300001)(4630300001)(6009001)(39830400002)(24454002)(189002)(377454003)(199003)(53546010)(31696002)(7416002)(42186005)(4001350100001)(105586002)(53936002)(5660300001)(54356999)(50986999)(76176999)(7736002)(83506001)(33646002)(305945005)(6486002)(65826007)(6116002)(7350300001)(6506006)(230700001)(101416001)(3846002)(31686004)(50466002)(189998001)(229853002)(6666003)(23746002)(47776003)(2906002)(2950100002)(68736007)(110136004)(36756003)(65806001)(64126003)(4326008)(6246003)(97736004)(54906002)(81166006)(66066001)(86362001)(478600001)(8676002)(81156014)(65956001)(106356001)(6512007)(25786009);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR04MB0848;H:dev2.adaptrum;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;MWHPR04MB0848;23:rvg+kWmmFH+Q0VIibWwRUWAxyzKVDUgp/XnKB?= =?Windows-1252?Q?Ijw9dQzysUn+qV2jBnQyT6q93cfNXnJ26oop8NpBGy81RdrzoO3xOLJJ?= =?Windows-1252?Q?oL7sqP7mFGagHSm5FpOv3X2oT8GiRuyyxYkeIQ6ajIG3npYwzsoMb/dH?= =?Windows-1252?Q?P03D63Utlp94dl+OjPdahIw7XlUfNo87dVlCoQ4R0IewoBRhYw51a0Fp?= =?Windows-1252?Q?z5t5Ra1fA1WRnU+qRqM+TgP80YHdIabmptURHfGSg3uWfPtrAv7PKZHY?= =?Windows-1252?Q?5/Jk/TwEMUwW62viHrO1wVEfhatGA5VQulRcJbB6Tw2EWbxLcXbYRSxT?= =?Windows-1252?Q?YfxPy0cHvZNgTea/JRTLp7M45el2OE6t2koJZLD89y95wKNHcCExlzOY?= =?Windows-1252?Q?ohFjTuAGDeiKYiziotNqaHZGC3hCnLtXUhyZGPuTu5RgZgPBYopgaICK?= =?Windows-1252?Q?Y3HH5UE8qDCt799lF1vhMSMTLAbxCYrrY5281ELqhPKX0lEzPRaWIEbs?= =?Windows-1252?Q?rlJQ+t5OQVIbTNv5BGY5I7sjCGsYEflBbUC+/+LAopDyCBuE+WF87X+r?= =?Windows-1252?Q?iRAlkJ3/kCoE00Pqs5SkcQhmuzGH3lYuSfuxy0qUnTPJOoHSsNJqIk/O?= =?Windows-1252?Q?/lx23FbND/yfp5Z9f+KFabgs24rS+yq+X30oW4upLnYnBk7rF3lIROuj?= =?Windows-1252?Q?9fmZqXFmNnoGGJKaBk3ToIsmgZAPW9yfJhDsSQ6ZP7ngQ6eI2qDGpnNY?= =?Windows-1252?Q?o0sqQnbw9zz3kRwkoxHOhV5nwS/8KAuvJfvN1d4w1CpDmL2RappPOKR9?= =?Windows-1252?Q?H/+3zaRs1FllIL5iJs6e0mpFwWkTOppskqGVinBabcAP84Xg7fzwMmFb?= =?Windows-1252?Q?45HVRn5hFyDbMl22iGJ8vsmXi2AxpultfY5dnkIrftYYfn6yyeLPIWpq?= =?Windows-1252?Q?td6BvrJkfbHgCS57C3w3Riv2nG48BYtA6RUcpAPnkDJl0Xltzt11s6ay?= =?Windows-1252?Q?cxtRzd1N3kTEDF+0jVqySoRT1Yaya6wDKwjxMI3/YjroP/9g1wkgpsna?= =?Windows-1252?Q?2cetEKwYjdV5J53vFd6he5P2e6PqXojd6z9Q+Esw1gPQyJbZEqov+dXx?= =?Windows-1252?Q?BF/6FOMaUT2LgbAOS23eiInP1dw/ciDxsCU2N85rK97p+x01tTLniVMP?= =?Windows-1252?Q?2HITbXlCUOlL5otPIF3WVUtMXlHwPeFkMGaLg+sw9uBHGqlXvCkRRbnc?= =?Windows-1252?Q?fohfgdSjwUINRZLU2cClCuTdCz9EeAQ9FRpQIwKtj4NkbnmLL/tmWT5q?= =?Windows-1252?Q?q2IDzBDQ6zFMw0DBNhTAiZbdh3oFbG0HDE867ZysKbwPicLsLWiZ15XV?= =?Windows-1252?Q?76LoiBz0r+oUdNaQhsl28zI38xTYiPZdy9RnrgdXUfxCSS49edKJLyCN?= =?Windows-1252?Q?2yYjalS5g+nTh1TC8yfIo9r0yvlG/qj/zE5Mi6um2zHKJ8r3i5YTCYay?= =?Windows-1252?Q?ozCXi2UhwJoQvwtOPFOgenSjjdztoeQ3ajqlceEWwz/Ec1h9w=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0848;6:BLF0FZQ1sD0Gx3tsFIJTQ9gCilKS567jBafJk/uiio6zJvHPZ1VWS5qZVaNf+fFd0MFEZYPdmoF7tokpHCi5bUpx5PU14ILVUzaAlXhHYBMyGlkJhu+BJJs80ISegBCl8hQdLP6DAxPKU6xR9PU+3meYEzAnldJWs41yBQP9InVpkToVcdI+79080l/pk89NfZ1Bf4jQvD9KM3my3tNYL5sMc4B9hkzlUg+kwo6OaVpRd9MT29reRfo+RDBYvxaFtfxNZ30Xa3BCcKli0UuEBj6PLodbllo1KdCmzba3Pk1r62Ji3bwlxeDPvs7sIXPMvh/W9S9QsddRGEGDhqrBGQ==;5:jNaJH4VH9PgVQR7pWme/JJp/Yj9PFAoiBbqsxaxYkifouWcx6eBNW2GCT/Zh5QvP6r4SCs4sO5EaMWNcGBD/VBa4sxX/y8WGKyPwuyhY47SqNhIy4Lf6nreX5nVxQRsYFQCknlDhESmq7y8/JsMR+A==;24:P1saQkcWMYB5BtZZPdAgwMg7qf8nabCrzw2K1Nx0xnwJl+MHEmtwuHK39HWhBPaPjl0+V/rncEf8/qu95eaqSV21u7tjEwLAh5p4tpMbkfs=;7:n+MroJOraYvxeWbZq6WuVewZ+OH5aKOawAQNoS7iIa/tziFNw51AuLzo2Dp13iFcKZ+3GoI5OGdiFL+uHg+E5JUC5XecbJA7jvgDQ7LCbuIvHAzliaIwPgkqhyZgKfNqgmdZkPkfIlwVaLZRRco6L5UC/7b1a37UZtY/dJpjZKpXIByPT44Zm6+seSxjZ7m8GE1xFsVaowUzx10aKSd+knJDXRqAfR7zuLApgGI7bcQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: adaptrum.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Aug 2017 16:28:48.1436 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0848 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1437 Lines: 46 Hi Phillip, On 08/11/2017 06:06 AM, Philipp Zabel wrote: [snip] > @@ -113,8 +137,33 @@ static int reset_simple_probe(struct platform_device *pdev) > data->rcdev.ops = &reset_simple_ops; > data->rcdev.of_node = dev->of_node; > > - if (devdata) > + if (devdata == &reset_simple_socfpga) { This sort of special-case handling opens the gate to adding special-case handling for any new device, which somewhat defeats the purpose of a generic driver. > + u32 modrst_offset; > + > + /* > + * The binding was mainlined without the required property. > + * Do not continue, when we encounter an old DT. > + */ > + if (!of_find_property(dev->of_node, "#reset-cells", NULL)) { > + dev_err(dev, "%pOF missing #reset-cells property\n", > + dev->of_node); > + return -EINVAL; > + } Is the check still required in this context, since (devm_)reset_control_get() complains really loudly if #reset-cells is missing? > + > + if (of_property_read_u32(dev->of_node, "altr,modrst-offset", > + &modrst_offset)) { > + dev_warn(dev, "missing altr,modrst-offset property, assuming 0x10!\n"); > + modrst_offset = 0x10; > + } This can be a generic "reg-offset" property. If and until the devicetrees are updated, "altr,modrst-offset" would also have to be read as an alternative. Since a platform data already exists, reset_simple_devdata could be a better place to store the default offset of 0x10 for socfpga. Alex