Received: by 2002:ac0:a679:0:0:0:0:0 with SMTP id p54csp599615imp; Wed, 20 Feb 2019 05:54:17 -0800 (PST) X-Google-Smtp-Source: AHgI3IaS/T4JePkRveGZWq4aauuuBDeC9eoY7rkysWnvuU7Q263OHKTsXDnpn7RXa595gs3IEjob X-Received: by 2002:a63:d810:: with SMTP id b16mr28867916pgh.220.1550670857510; Wed, 20 Feb 2019 05:54:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550670857; cv=none; d=google.com; s=arc-20160816; b=yZYfBD7jg6d7ine+Dl9gl+q1cE3PJAp4YeHPTyXWsyI2LToeN2wjsH47qrBp74gH9p kn/UU+aziek9T1kYxotEb4O4y1Y7BsMZcbICv+XZj45eis159aqn1+PR7DqK+t6/CQ71 Hgk1aWOwnYP4pVxHUZIVhxJpIniKx8wtNCcoEi6y7Vyz8syAaP2UXAev1R+ATF2gCV2x MERGwVA6hzFCyxp8+bCVf92St8tfD2UdzWR1ZG6dR0uv2OsFURPeYgHNWXYbYJ7mgkJq PyMHN87ZU7GcsxOACeGQbJcuXcKyz+uiJGu/UOCCV3IfxzCFNpZevA/F008NRKvSCW6U +dwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=p+UsrNm1hELcKiS34/V+nF+BYac7WGjvl3EmSOZE5IQ=; b=NXdA4FcaxwVvCtH5JMj8PX42h70f5b8JZeO9jkwiJs4e0bnqGw0cMFghS/fMKSO1V8 5lF3rvsaJrdte388czIWxYsSyTFBjySWcOl+WL8XtPH+zSNrEPUwdqjuyL1Wep7L7JSI V/GSLITKXQzyQvPBKu4dp1HE0IU5oGVu7ymjgXaFPJLl7NOXtLGlvTiQx9jytZG97vsc lyIzbrAbTYGODGR66mPmEciBNzlpqTqOkZZB6toPfETHAeSp5vF9MMqJnSCIWTPfvoQK XNK+aJw2/C5adCBL99vqnWV1oY5LpeyLVuJ/JMlae1mhUpfueefMun/NCiToMw4r1or1 AlcA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t23si2869520pgv.63.2019.02.20.05.54.02; Wed, 20 Feb 2019 05:54:17 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726307AbfBTNwp (ORCPT + 99 others); Wed, 20 Feb 2019 08:52:45 -0500 Received: from metis.ext.pengutronix.de ([85.220.165.71]:45869 "EHLO metis.ext.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725822AbfBTNwn (ORCPT ); Wed, 20 Feb 2019 08:52:43 -0500 Received: from pty.hi.pengutronix.de ([2001:67c:670:100:1d::c5]) by metis.ext.pengutronix.de with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gwSIc-0001hh-3E; Wed, 20 Feb 2019 14:52:34 +0100 Received: from mfe by pty.hi.pengutronix.de with local (Exim 4.89) (envelope-from ) id 1gwSIa-00029H-T3; Wed, 20 Feb 2019 14:52:32 +0100 Date: Wed, 20 Feb 2019 14:52:32 +0100 From: Marco Felsch To: Lucas Stach Cc: Aisheng Dong , Anson Huang , "robh+dt@kernel.org" , "mark.rutland@arm.com" , "shawnguo@kernel.org" , "s.hauer@pengutronix.de" , "kernel@pengutronix.de" , "festevam@gmail.com" , "ulf.hansson@linaro.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , dl-linux-imx Subject: Re: [PATCH] dt-bindings: imx: update scu resource id headfile Message-ID: <20190220135232.4drv77tbkfwjeapl@pengutronix.de> References: <20190219125211.2pg2bqxner4klcb5@pengutronix.de> <20190219144808.qqpaubjcsb4huoml@pengutronix.de> <20190220081650.cu3yzausx55jefb6@pengutronix.de> <20190220105249.u2hcvk6ut3cycvqs@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Sent-From: Pengutronix Hildesheim X-URL: http://www.pengutronix.de/ X-IRC: #ptxdist @freenode X-Accept-Language: de,en X-Accept-Content-Type: text/plain X-Uptime: 14:09:17 up 32 days, 17:51, 40 users, load average: 0.01, 0.04, 0.00 User-Agent: NeoMutt/20170113 (1.7.2) X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c5 X-SA-Exim-Mail-From: mfe@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 19-02-20 13:11, Lucas Stach wrote: > Am Mittwoch, den 20.02.2019, 11:21 +0000 schrieb Aisheng Dong: > > Hi Marco, > > > > > From: Marco Felsch [mailto:m.felsch@pengutronix.de] > > > Sent: Wednesday, February 20, 2019 6:53 PM > > > > > > Hi Aisheng, > > > > > > On 19-02-20 09:49, Aisheng Dong wrote: > > > > > From: Marco Felsch [mailto:m.felsch@pengutronix.de] > > > > > Sent: Wednesday, February 20, 2019 4:17 PM On 19-02-20 03:38, > > > > > Aisheng Dong wrote: > > > > > > [...] > > > > > > > > > > > > > > I don't like droping some ID's (e.g. IMX_SC_R_DC_0_CAPTURE0) > > > > > > > > by mark them as unused or even worse give them a other > > > > > > > > meaning. IMHO the scu-api should be stable since day 1 and the > > > > > > > > ID's should only be > > > > > extended. > > > > > > > > Marking ID's as deprecated is much better than moving them around. > > > > > > > > > > > > > > I agree the SCU APIs should be stable since day 1 and the ID > > > > > > > should ONLY be extended, but that is the best cases, the reality > > > > > > > is, there are different SoCs/Revision, some revisions may remove > > > > > > > the resources ID defined in pre-coded SCU firmware, like the > > > > > > > IMX_SC_R_DC_0_CAPTURE0 etc., so SCU APIs removes them after real > > > > > > > silicon arrived, now latest SCU firmware marks them as UNUSED, > > > > > > > they could be replaced by some other new resources in later new > > > > > > > SoC, I am NOT sure, but if it happens, this resource ID table > > > > > > > should be updated anyway, leaving the out-of-date resource ID > > > > > > > table there will have > > > > > issues, since it is NOT sync with SCU firmware. > > > > > > > So how to resolve such issue? We hope the SCU firmware should be > > > > > > > stable since day 1, but the truth is NOT, could be still some > > > > > > > updates but NOT very often. And I believe the updates will NOT > > > > > > > break old > > > > > kernel version. > > > > > > > > > > Hi Anson, > > > > > > > > > > Please don't mix the dt-bindings and the kernel related stuff. > > > > > Unfortunately the bindings are within the kernel repo which in fact > > > > > is great for us kernel developer but the bindings are also used in > > > > > other projects such as barebox or other kernels (don't know the BSD > > > > > guys). So you can't ensure that your change will break something. Please > > > keep that in mind. > > > > > IMHO solving that issue should be done by the scu firmware. I tought > > > > > the scu is a cortex-m4 with a bunch of embedded flash and ram (I > > > > > don't know that much about the scu since it is closed/black-boxed). > > > > > Why do you don't use a translation table within the scu? As I said > > > > > earlier I don't like the redefinition of ID's since they are now part of the > > > dt-bindings. > > > > > The bindings can store up to 32bit values which is a large number ;) > > > > > IMHO wasting some ID's in favour of stability is a better solution. > > > > > > > > > > > > > As far as I know, those remove resource IDs are pre-defined and has > > > > never been used and won't be used anymore by SC firmware. (Anson can > > > > double check it) So I think it's safe to remove them or mark them as > > > deprecated. > > > > > > I think marking them as deprecated by a commentar is better than redefining > > > bits to be unused. As I said the bindings not only linux related they are used in > > > other projects too. > > > > > > > For other projects, the result is same because SC firmware does not support those > > Resource IDs. > > > > > > Personally I may prefer to remove them as they never worked to avoid > > > > confusing, especially at this early stage for mx8. > > > > > > So why they are there if they never worked? Wouldn't it a better approach to > > > start with a basic and working ID file and extend this rather than adding id's > > > because maybe the will work.. > > > > Ideally yes, but may be hard in reality. > > > > SC firmware code usually is developed quite early before silicon comes. > > But the real chip may changes, e.g. removed or added something. > > > > AFAIK those resource IDs removed have never worked in SC firmware, > > and they're likely to come out of pre-silicon definition. But chip changes > > later. > > > > > Sorry but this seems wrong to me too. > > > I know the approach from driver development, adding a driver specific *_reg.h > > > file and later figuring out that those bits won't work as aspected. As I said this > > > will be driver and only linux related so we can change them as many times as > > > we want. But in your case we are talking about dt-bindings and this approach > > > won't work. > > > > I would agree with you if those resource IDs have worked before. > > But they never worked. > > Should we keep a thing never worked in device tree just because > > It makes us look like keeping compatibility? > > > > If that, I'd rather removing them to avoid confusing in the future. Life is long, right? > > I don't want people to bother with those unmeaning things anymore when they > > look at it. > > Removing things is totally fine if they have never worked. Re-using the > now "free" IDs is what is problematic. Only ever use previously unused > IDs when introducing new stuff into the SCU firmware. This is something > you need to communicate quite clearly with the SCU firmware developers. I'm fine with removing too then there would be a gap. Don't know if it is better to have a gap or a comment that those ID isn't supported since fw-revision XYZ / silicon version ZYX. Just some toughts: The gap will then suggest that this ID is free and was never assigned to some functionality. In real it was assigned previously and now gets redefined. Also as far as I can see there are no gaps currently. Let's wait for Rob's feedback. As Lucas mentioned using IMX_SC_R_UNUSED* ID's for new functionality is totaly fine but redefine ID's seems wrong to me. Regards, Marco > > Regards, > Lucas > >