Re: [PATCH v2 47/67] media: platform: rename sunxi/ to allwinner/

Mauro Carvalho Chehab
2022-03-15T08:27:55Z

Em Tue, 15 Mar 2022 08:54:25 +0200
Laurent Pinchart <laurent.pinchart@ideasonboard.com> escreveu:

> Hi Mauro,
>
> On Tue, Mar 15, 2022 at 06:40:05AM +0100, Mauro Carvalho Chehab wrote:
> > Em Mon, 14 Mar 2022 18:22:20 +0100 Jernej Škrabec escreveu:
> >
> > > Dne ponedeljek, 14. marec 2022 ob 17:34:42 CET je Mauro Carvalho Chehab
> > > napisal(a):
> > > > As the end goal is to have platform drivers split by vendor,
> > > > rename sunxi/ to allwinner/.
> > > >
> > > > Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
> > >
> > > I would rather not do that. Everything related to Allwinner is called sunxi,
> > > albeit there are a few outliers. This is similar to Amlogic/meson situation.
> >
> > The rationale of having one directory per manufacturer is that, if drivers
> > for newer platforms with different names from the same manufacturers are
> > added, those will still fit under allwinner/ and amlogic/.
> >
> > The Kconfig names for sunxi and meson didn't change, nor the driver's name.
> > Also, the directories under allwinner preserve sun<x>i name on them:
> >
> > drivers/media/platform/allwinner/
> > ├── sun4i-csi
> > ├── sun6i-csi
> > ├── sun8i-di
> > └── sun8i-rotate
> >
> > and so the directory under amlogic/:
> >
> > drivers/media/platform/amlogic/
> > └── meson-ge2d
> >
> > Now, if Allinner decides to release a new platforms named after another star,
> > let's say, "Vega" and "Rigel", it would be just a matter of adding
> > "vega/" and "rigel/" directories under allwinner. No need to touch
> > media/platform/Kconfig and media/platform/Makefile. Everything will happen
> > on much more smaller vendor-specific Kconfig/Makefile.
>
> But the day Allwinner changes its name to Noloser, we'll have a similar
> problem.

Not really. It will still be a single directory per vendor (whatever
name it is).

> Thnk about Freescale vs. NXP, or Altera bought by Intel.

Yeah, when some drivers move from one vendor to another one that
already exists there, we should probably move the directories, in
order to keep things well organized.

The worse case scenario is really if, let's say, TI decides to sell their
omap architecture to NXP, keeping the rest. On such case, the best would
be to move platform/ti/omap* to the directory of its newer owner.

That's said, when things like that happen, there are usually a change
at MAINTAINERS, as e-mails, mailing lists and contact people will
likely change. So, this will very likely generate patches anyway.

> No
> naming scheme is totally future-proof. If the accepted standard through
> the kernel is to use sunxi to refer to Allwinner SoCs, I don't think
> it's a bit idea to go with that.

I'm not too concerned about the name here, but rather about the
process. Needing to do reorg like this is painful, as it causes
all pending work to fail merging against upstream, requiring rebases.
So, we should avoid needing to re-do it by trying our best to avoid
the need of another global change like that in the future.

By organizing entries per vendor, while we may need to do puntual
per-vendor adjustments when they rename and change IP with other
vendors, the global platform Kconfig/Make will contain a single entry
per vendor. I can't foresee any need to change this in the future,
if we take care of keeping the entries there properly sorted.

With regards to naming the per-vendor directory, while I do prefer to have
the directories named after the vendor, and not after a vendor's nick
name, It should also be ok to use a vendor's nick name, provided that
such name is meant to be used by all their current and future IP.

Not sure if "sunxi" is actually a vendor's nick name. It sounds
much likely that it is, instead, a brand name that covers their
current media-related SoC.

Can someone from the vendor shed a light on it?

Thanks,
Mauro