On Wed, Apr 17, 2024 at 10:45 AM Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > On Tue, Apr 16, 2024 at 11:07:58PM +0200, Bartosz Golaszewski wrote: > > On Tue, Apr 16, 2024 at 4:05 PM Andy Shevchenko > > <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > > > > > On Tue, Apr 16, 2024 at 02:22:09PM +0200, Linus Walleij wrote: > > > > On Fri, Apr 12, 2024 at 9:44 PM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > > > > > > > > > IIUC include/dt-bindings/ headers should only be used by DT sources > > > > > and code that parses the OF properties. > > > > > > > > That's what I have come to understand as well. > > > > > > > > I wonder if there is something that can be done to enforce it? > > > > > > > > Ideally the code that parses OF properties should have to > > > > opt in to get access to the <dt-bindings/*> namespace. > > > > > > Whatever you, guys, come up with as a solution, can it be fixed sooner than later? > > > I mean, I would appreciate if somebody got it done for v6.9-rcX/v6.10-rc1 so we don't > > > need to look into this again. > > > > I'm not sure you got what I was saying. I don't think this can be > > fixed quickly. This is just another bunch of technical debt that will > > have to be addressed carefully on a case-by-case basis and run through > > autobuilders in all possible configurations. > > > > This type of include-related issues is always brittle and will lead to > > build failures if we don't consider our moves. > > I proposed a quick fix which was rejected. I think this is still doable in a > few steps: > You having proposed a quick fix is not a reason for me to either apply it immediately OR equally promptly provide a proper solution myself. > - align constant values in DT and enum > - drop usage of DT in the kernel code (That's what you want IIUC, however > I disagree with this from technical perspective as DT constants can be used > in the code as long as they are mapped 1:1 to what code does. That's current > state of affairs. OTOH semantically this may be an issue.) It's against the convention of only using dt-bindings headers as I described before. I disagree with your proposition and it seems to me Linus backed me up on this. > - restore enum usage treewide (?) > > Again, the problem now is only in open source / open drain configurations > and there are only a few users of these flags _in kernel_. I do not see > why it can not be done in one or two evenings time range. > So you know what needs doing. I'm at a conference now, I'll be off for a week in April and I also have another conference scheduled for May. If you believe this needs addressing urgently, then I suggest you do it right. Otherwise, I'll get to it when I have the time. Unfortunately my TODO list runneth over. :( But I have to say, I suspect it won't be as easy as you present it because we have so many build configs that may fail. > P.S> > Most of the time I spent when prepared the proposed fix is digging the history > and trying to understand how comes that we have desynchronisation of the values > over the time. The output of that is the list of Fixes tags. > Thank you, this history is useful and should make its way into git history when we fix this issue. Bart