From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Sat, 24 Nov 2018 12:41:53 -0700 Subject: [U-Boot] [PATCH 00/93] dm: Move towards completing CONFIG_BLK migration In-Reply-To: <20181123193828.GG11247@bill-the-cat> References: <20181120133739.GQ11247@bill-the-cat> <2b6af462-05c1-f1d2-82e7-09583c212ac3@gmail.com> <20181120134236.GR11247@bill-the-cat> <20181120135312.GS11247@bill-the-cat> <20181121151003.GR11247@bill-the-cat> <20181122233127.GF11247@bill-the-cat> <20181123193828.GG11247@bill-the-cat> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Tom, On Fri, 23 Nov 2018 at 12:38, Tom Rini wrote: > > On Fri, Nov 23, 2018 at 05:04:46AM -0700, Simon Glass wrote: > > Hi Tom, > > > > On Thu, 22 Nov 2018 at 16:31, Tom Rini wrote: > > > > > > On Thu, Nov 22, 2018 at 01:50:34PM -0700, Simon Glass wrote: > > > > Hi Tom, > > > > > > > > On Wed, 21 Nov 2018 at 08:10, Tom Rini wrote: > > > > > > > > > > On Tue, Nov 20, 2018 at 08:53:12AM -0500, Tom Rini wrote: > > > > > > On Tue, Nov 20, 2018 at 02:45:24PM +0100, Marek Vasut wrote: > > > > > > > On 11/20/2018 02:42 PM, Tom Rini wrote: > > > > > > > > On Tue, Nov 20, 2018 at 02:40:43PM +0100, Marek Vasut wrote: > > > > > > > >> On 11/20/2018 02:37 PM, Tom Rini wrote: > > > > > > > >>> On Tue, Nov 20, 2018 at 01:42:15PM +0100, Soeren Moch wrote: > > > > > > > >>>> > > > > > > > >>>> > > > > > > > >>>> On 19.11.18 16:52, Simon Glass wrote: > > > > > > > >>>>> All boards should now be migrated to use CONFIG_BLK. This series removes > > > > > > > >>>>> those with build problems using this option. > > > > > > > >>>>> > > > > > > > >>>>> If maintainers want to keep these boards in they should send a patch in > > > > > > > >>>>> the next week or two. Otherwise the board will be removed in the next > > > > > > > >>>>> release, and will need to be added and re-reviewed later. > > > > > > > >>>> Fabio, Stefano, > > > > > > > >>>> > > > > > > > >>>> it seems (almost?) all i.mx6 boards should be removed within two weeks. > > > > > > > >>>> But would it not make more sense to convert the reference boards first > > > > > > > >>>> (mx6sabresd > > > > > > > >>>> in my case for tbs2910), and let hobbyist maintainers like me take this > > > > > > > >>>> as example for > > > > > > > >>>> their own modifications? > > > > > > > >>> > > > > > > > >>> So, I replied to the main thread earlier but no, we're not going to drop > > > > > > > >>> everything in 2 weeks, especially since there's a lot of false positives > > > > > > > >>> in this series. > > > > > > > >>> > > > > > > > >>>> Simon, Tom, > > > > > > > >>>> > > > > > > > >>>> is this really the usual u-boot working style to remove about hundred > > > > > > > >>>> boards within > > > > > > > >>>> two weeks without prior warning? As hobbyist board maintainer I try to > > > > > > > >>>> follow > > > > > > > >>>> new developments, and more than once I fixed up regressions introduced > > > > > > > >>>> by others > > > > > > > >>>> in general code. > > > > > > > >>>> But I cannot follow all development details without any heads-up. And > > > > > > > >>>> even the > > > > > > > >>>> NXP folks seem to be surprised about this. > > > > > > > >>>> > > > > > > > >>>> All problems with this transition seem to be located around usbstorage > > > > > > > >>>> and sata. > > > > > > > >>>> This is for sure not really very board specific. Is there any migration > > > > > > > >>>> guide, or > > > > > > > >>>> examples how other SoC architectures did this conversion? > > > > > > > >>> > > > > > > > >>> I'll admit this hasn't been our best notification. But, the deadline > > > > > > > >>> was discussed about a year ago (and then no, I didn't get a build-time > > > > > > > >>> warning in). Then around v2018.05 I said it wasn't going to be a > > > > > > > >>> removal type problem yet as we had a lot of boards to fixup still, and > > > > > > > >>> repeated that at v2018.07. That did lead to a lot of things getting > > > > > > > >>> addressed. But yes, we still have some large areas that after a few > > > > > > > >>> years still have not been converted, and that puts me in a hard spot > > > > > > > >>> too. > > > > > > > >> > > > > > > > >> Build time warning for a year would be good ? > > > > > > > > > > > > > > > > A year for this? No. New deadlines? That's not too far off from what > > > > > > > > we've done historically, so yes. > > > > > > > > > > > > > > Give people some sort of breathing space to get the conversion done. > > > > > > > Stressing people out by arbitrary deadlines will lead nowhere. > > > > > > > > > > > > Sure, agreed. I didn't say we're going to drop all these boards, nor > > > > > > are we going to drop SATA and USB Storage (if those are still all that's > > > > > > left to convert) for this release. But given that we proposed a > > > > > > deadline in August 2017, made email-but-not-build noise about it between > > > > > > May and July/August of this year, no, I also don't think setting a new > > > > > > deadline of November 2019 is the right call either. > > > > > > > > > > > > So, really, lets see what the fails to build boards are with BLK being > > > > > > on when we have block devices. Then assess what a good deadline is. > > > > > > > > > > > > > >> Maybe we need some generic Makefile macro to set those up. > > > > > > > > > > > > > > > > It would be nice, yes. I think the problem here is (or, was) the > > > > > > > > complex set of options that didn't work. > > > > > > > > > > > > > > The problem was many people didn't know about the conversion deadline or > > > > > > > simply forgot. And reminding them with a 100-patch series removing half > > > > > > > of the boards is like splashing icy water bucket in their sleeping faces. > > > > > > > > > > > > Alright. But we've already tried less shocking approaches to > > > > > > conversion, but in public (over the summer when Simon listed most of > > > > > > these boards in a series but I _think_ his script failed to CC the > > > > > > universe and didn't follow up with a repost that did email everyone) and > > > > > > perhaps private too (I honestly don't recall if I did, or just intended > > > > > > to, ask you about the USB side of this on IRC). > > > > > > > > > > And, for the record, the USB side I had in mind here was converted, and > > > > > I just forgot, my fault. In fact, as I go through some hack-and-slash > > > > > to see what needs a real conversion (either board updated, or drivers > > > > > updated) at least some part of this is needing to adjust dependencies to > > > > > force things on with BLK. For example, if we have MMC we must have > > > > > DM_MMC and BLK, and if we have USB we must have DM_USB and BLK. > > > > > > > > Well, once we are through the migration we can remove BLK. > > > > > > I don't think BLK the symbol goes away, really. We don't want more > > > objects built unconditionally and we will continue to have block > > > device-less builds. > > > > Yes that's right - but it becomes an optional feature rather than an > > indication of completed migration. > > > > > > > > > Yes all the block devices are related, and we should use DM for all of > > > > them to make this work. > > > > > > > > I am not sure if there is a better way to do this with Kconfig. > > > > > > > > Thanks for helping with all of this. I have found it quite tricky to > > > > plot a path forward which is why I am been putting it off for several > > > > months. > > > > > > Thanks for starting it off. I think part of the big problem we'll have > > > here is that unfortunately we can't key off of the BLK migration itself > > > as it's short-hand for having started using OF_CONTROL. What I'm > > > currently working through is being able to have all block drivers using > > > BLK and everything is still building / linking as unconverted drivers > > > now depend on BROKEN. This is showing we have a few widely used but > > > unconverted drivers over in Freescale/NXP land. > > > > That's a good idea. Does it work OK with DM_MMC and DM_USB? Is this a > > way we can keep unconverted boards around for a while without holding > > up migration? They won't work properly but will build? > > I have some worthwhile changes in my WIP branch I haven't yet posted, > but, I think the problem is that we can't make BLK conversion the next > hard deadline. In order to make BLK (and DM) hard requirements, all of > MMC needs to be switched over (along with all of USB block related and > SATA, but MMC is the big one). That in turn shows a _lot_ of different > problems. We have: > - Drivers used by platforms which are using DM for other things but > aren't converted > - Platforms that could be switched to using DM but haven't yet, and > sometimes their storage controller is converted and sometimes it > isn't. > - What feels like almost all of PowerPC/MPC85xx at least. > > So I think we should maybe try is: > - Pressing on the various folks that use MPC85xx/iMX to get some of > their drivers converted. This I think will allow us to fairly soon > mark SCSI/SATA as fully converted. > - I want to try re-working some of the Kconfig logic today so that we > have for example, DM_MMC pulling in BLK. > - Check in further with our iMX maintainers to see what they feel is > misssing before being able to fully convert. > - Check in with our Marvell maintainers to see what's missing before > they can fully convert. > - Check in with our USB maintainers to see what's missing before we can > fully convert them, aside from the PowerPC issue. So you are suggesting a more 'bottom-up' approach where driver owners do work before board owners? Anyway this seems reasonable to me. For the case where boards could be converted (drivers exist) but are not, perhaps a removal patch makes sense. Regards, Simon