In-tree Python tools (patman, buildman, binman, etc.)

Tom Rini trini at konsulko.com
Fri May 22 20:00:11 CEST 2026


On Wed, May 20, 2026 at 07:38:17PM -0500, Simon Glass wrote:
> Hi,
> 
> On Mon, 4 May 2026 at 07:16, Simon Glass <sjg at chromium.org> wrote:
> >
> > Hi,
> >
> > As you know, I maintain several tools which are part of the U-Boot tree.
> >
> > Tom has previously suggested that it would be better to move patman
> > out of the U-Boot tree, e.g. to its own Github project. It is a
> > general tool which can be used with Linux and other
> > mailing-list/patchwork-based projects. I have never been keen on
> > taking on the extra effort required, but I've recently added more
> > features and am wondering whether now might be a good time to do this.
> >
> > Buildman is quite obviously designed specifically for U-Boot. I have
> > made some improvements recently (a large code refactor and distributed
> > builds). I would like to push those changes to mainline. Do people
> > think it should be in a separate tree somewhere?
> >
> > Binman was written with U-Boot in mind but supports other projects
> > (such as Zephyr). It is generic enough that it could be separated. The
> > impact would be harder code review.
> >
> > We also have smaller things like qconfig (which I have substantially
> > rewritten to make it fast) and dtoc, which is very tailored to U-Boot.
> >
> > What do people think? Of all of these, patman would be the easiest to
> > move, with the least impact on existing workflows.
> 
> Thank you to those who have commented on this thread.
> 
> Quentin, I think there is a mailing-list patch for the pygit2 problem. For
> qconfig, your feature should be easy enough to implement. If you suggest a
> syntax I could take a look.
> 
> I am considering moving all the major tools I wrote out of U-Boot, each
> into its own project. As Neha points out, Binman is useful as a general
> tool. Patman clearly is too. This leaves Buildman which is U-Boot-specific
> in many ways, but it hardly seems sensible to keep just that one in-tree,
> plus I have a substantial code-refactor and new feature to figure out how
> to upstream. With some adjustments it could be used in other projects. The
> qconfig tool is in a similar boat, particularly now that it can rebuild the
> database in two seconds instead of a minute.
> 
> I also have some other tools I have written recently, both of which might
> have generic application:
> - pickman, an AI-powered cherry picker which could be applied to other
> projects such as Linux (but it currently is tied to gitlab)
> - codman, a simple source-code analyser which tells you what files and code
> lines are actually built for a board
> 
> If I do take this path, I will need to figure out a way to make it easy to
> install the tools for use with U-Boot. This could involve using 'pip
> install, cloning a repo, or some other mechanism. I could use a PR workflow
> rather than the mailing list, if that is easier.
> 
> Please do continue to send your thoughts on this. I cannot attend the call
> next week but hope to join the next one.

You should plan to take care of patman outside of the project as we have
been working towards just using b4. The rest of the tooling that's
currently in tree will continue to be managed by the community at large,
and some of the suggestions I've made before will be looked at harder
again, but not likely until after we've migrated our Gitlab server to
OSU OSL hosting.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot-custodians/attachments/20260522/f0b31727/attachment.sig>


More information about the U-Boot-Custodians mailing list