There is one big mess here folks. Imagine what happens if we introduce
other vendors HAL here. This is why HAL IS BAD and I agree with that.

Felipe started loud conversation about how bad ESP HAL is, how slow it
is handled, that he had to wait some days for his fixes to be merged,
and that HAL approach sux in general (which I agree), and we should
fork and handle that HAL by our own (which I oppose). Then when
Renesas showed up with an idea do add support here using HAL just the
same way as opposed ESP HAL was handled in the first place, and I
opposed that, then Felipe told me I am turning away new contributions
(which I do not agree in general but when someone is about to do
something bad I will oppose that). Then when problem of external HAL
not being part of ASF code that constitutes possible security supply
chain issues arised, Espressif agreed to a) donate already Apache 2.0
licensed ESP HAL to ASF that b) we could also have control of in
addition to Espressif. This solves exactly issues raised by Felipe, in
a way better than we could expect at first (we have control over esp
hal repo but it is still developed with help of Espressif). Then
Felipe opposed that situation as NuttX being too tightly coupled with
Espressif.

There are so many contradictions here that I cannot understand the
whole thing. We probably do not state our ideas, expectations, and
solutions clearly enough to be unambiguous. From what I understand
Tiago represents ideas that are coming from the HAL discussions, but
Felipe and now Alan sees things the other way. It would be nice to
clarify why and what we see the other way before we move forward.

We are talking about ESP HAL right now in this particular vote and
only this one which conclusions that seem to provide win-win scenario
that comes out of HAL related discussions:

1. HAL in NuttX is generally not welcome, the proper way is to create
drivers in tree. We know that this is easiest way for vendors to port.
But this also creates maintenance nightmare, quality, control,
licensing, and other issues which we want to avoid. Thus strong NO to
introduction of new HALs. However, in this particular no new HAL is
introduced, we are using the one that was already here, so from
organization and code point of view there is not much change.

2. Espressif donates ESP HAL to ASF so it lands in
git/apache/nuttx-hal-espressif. The licensing and supply chain
security issues are solved that way. Also automated testing is more
secure because we are cloning our own hal repository. We did not even
count on that in the first place, but the option is real right here on
the table.

3. Both NuttX commiters and Espressif developers now have control over
the apache/nuttx-hal-espressif. This way maintenance burden is shared
between NuttX maintainters and Espressif developers which is a
win-win, because we can help each other, we can process PRs quickly,
etc.

4. We have existing HAL jumping in "under the NuttX umbrella", in a
full meaning of that, not as "Zephyr umbrella" alike. This sentence
was repeated many times recently but not fully understood. NuttX is
under the ASF umbrella, so having the HAL under NuttX umbrella means
it is under the ASF umbrella too.

I would really love us to be all in line with all points above. This
results from the many HAL conversations on the mailing list. And this
also is how I would propose to solve this situation, thus my +1.

Once again we are talking about reorganization of existing ESP HAL,
not introducing a new one. Let's keep the problems separate.

Someone mentioned Tiers, we could have something like:
Tier 1 = arch and drivers are in-tree and part of apache/nuttx.git.
Tier 2 = arch and drivers glue is in-tree but drivers HAL is under
apache/nuttx-hal-espressif.git (i.e. proposed by ESP right now).
Tier 3 = arch and drivers glue is in-tree but drivers HAL are external
and out of our control (i.e. nuttx/hal-A.git, or vendor-A/hal.git).

As long as most people here is against HAL (including me), we
currently have two HALs in NuttX one for Espressif and the other for
rPI-pico, which are Tire 3 according to above list. We can try out the
Tier 2 approach with ESP HAL. It looks like win-win situation.

Alan please tell me what is wrong with this approach, I would really
want to understand what am I missing here?

Thanks :-)
Tomek

--
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info

On Wed, Oct 7, 2026 at 1:27 PM Alan C. Assis <[email protected]> wrote:
>
> Hi Tomek and Tiago,
>
> Right, I can change my vote to +1 to let it pass.
>
> Although I think we are doing the wrong thing. It should have been done in
> the right order.
>
> First we need to confirm with ASF if they will accept hosting any HAL even
> from vendors who do not want to give a SGA to Apache.
>
> And maybe even more importantly: shouldn't we vote first on whether to
> accept HAL as a standard?
>
> It seems many here oppose making HAL a standard to avoid the issue other
> RTOSs face with poor-quality HALs.
>
> We can move the Espressif HAL to the Apache repository and over time, we
> can fix NuttX to replace it with native code. I think this is the safer
> option.
>
> BR,
>
> Alan
>
> On Wed, Oct 7, 2026 at 10:13 AM Tomek CEDRO <[email protected]> wrote:
>
> > Ugh, isn't that single -1 blocks the vote pass?
> >
> > Alan I think in this particular situation it is worth giving +1 here..
> > would it be possible for you to reconsider and give +1 please? :-)
> >
> > --
> > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> >
> > On Wed, Oct 7, 2026, 15:02 Tiago Medicci Serrano <[email protected]>
> > wrote:
> >
> > > Hi,
> > >
> > > 72 hours have already passed, so I'm closing this call for a vote and its
> > > results:
> > >
> > > We had 3+ (me, Tomek, and Alin) and 1- (Alan). As a *procedural Issue*, a
> > > simple majority is enough. So it has *passed*.
> > >
> > > We are working towards meeting ASF requirements in the coming days.
> > >
> > > Best regards,
> > >
> > > Em seg., 5 de out. de 2026 às 12:54, Tiago Medicci Serrano <
> > > [email protected]> escreveu:
> > >
> > > > Hi,
> > > >
> > > > As mentioned earlier, https://github.com/espressif/esp-hal-3rdparty/
> > is
> > > > used only by NuttX.
> > > >
> > > > Best regards,
> > > >
> > > > Em seg., 5 de out. de 2026 às 11:33, Alan C. Assis <[email protected]>
> > > > escreveu:
> > > >
> > > >> Hi Tiago,
> > > >>
> > > >> I think we made a mistake when we said that Espressif had already
> > signed
> > > >> the SGA.
> > > >>
> > > >> That SGA was for software Espressif was contributing to the NuttX
> > > >> mainline.
> > > >>
> > > >> For the HAL, the situation is different. If Espressif signs an SGA for
> > > >> their HAL it means Espressif is donating their HAL to ASF, the same
> > way
> > > >> Greg donated NuttX to ASF.
> > > >>
> > > >> By doing so, Espressif will not have rights over its own HAL (same way
> > > >> Greg
> > > >> has no rights to NuttX now).
> > > >>
> > > >> Are you sure Espressif agrees on that? If so, Espressif and the Linux
> > > >> Foundation need to agree that ASF will be the owner of the HAL.
> > > >>
> > > >> BR,
> > > >>
> > > >> Alan
> > > >>
> > > >> On Mon, Oct 5, 2026 at 9:58 AM Tiago Medicci Serrano <
> > > >> [email protected]> wrote:
> > > >>
> > > >> > Hi,
> > > >> >
> > > >> > Just addressing the last comments:
> > > >> >
> > > >> > 1. We can't say anything about other vendors. This is how we
> > proposed
> > > to
> > > >> > host Espressif's HAL: under the Apache umbrella because we already
> > > have
> > > >> a
> > > >> > signed CCLA. *Keep in mind that this call for a vote is about
> > > >> Espressif's
> > > >> > HAL only*.
> > > >> > 2. It's being contributed to a separate repository because:
> > > >> > 2.1 It eases new contributions and new syncs being contributed by
> > > >> > Espressif.
> > > >> > 2.2 The HAL has its own coding style and contribution guide.
> > > >> > 2.3 It makes it easier to implement native implementations and
> > isolate
> > > >> them
> > > >> > from the HAL.
> > > >> >
> > > >> > Please, keep voting on the proposed subject. Nothing else is being
> > > >> > discussed here (we have other threads to discuss it).
> > > >> >
> > > >> > Best regards,
> > > >> >
> > > >> > Em sáb., 3 de out. de 2026 às 09:11, Alan C. Assis <
> > [email protected]
> > > >
> > > >> > escreveu:
> > > >> >
> > > >> > > Hi Tomek,
> > > >> > >
> > > >> > > These are the issues I'm seeing here:
> > > >> > >
> > > >> > > 1) If Espressif donates its HAL to ASF it means they will no
> > longer
> > > >> own
> > > >> > the
> > > >> > > HAL (you cannot have your cake and eat it too). Is this acceptable
> > > to
> > > >> > them?
> > > >> > >
> > > >> > > 2) Even if they accept this, other vendors probably will not
> > accept
> > > >> > > donating their HALs. In this case we cannot keep it under ASF.
> > > >> > > If so, we would have to place it elsewhere, which would cause
> > > >> confusion:
> > > >> > > why are some HALs under ASF and others in a different location?
> > > >> > >
> > > >> > > BR,
> > > >> > >
> > > >> > > Alan
> > > >> > >
> > > >> > > On Fri, Oct 2, 2026 at 10:27 PM Tomek CEDRO <[email protected]>
> > > wrote:
> > > >> > >
> > > >> > > > Hey there Alan,
> > > >> > > >
> > > >> > > > Most of the raised HAL related issues should be solved that way
> > as
> > > >> > > > proposed by Tiago and Espressif in this vote:
> > > >> > > > 1. Code ownership and supply chain security (mentioned by Alin).
> > > >> > > > 2. Community involvement in faster PR processing (mentioned by
> > > >> Felipe).
> > > >> > > > 3. We should have more control and impact on the HAL quality and
> > > >> > > > availability (mentioned by many).
> > > >> > > > 4. HAL is under the NuttX umbrella just as proposed "Zephyr
> > > Umbrella
> > > >> > > > Way" (mentioned by Renesas).
> > > >> > > >
> > > >> > > > From I understand Espressif offers to "donate" HAL to ASF to be
> > > >> > > > apache/nuttx-hal-espressif and this seems the best possible
> > > win-win
> > > >> > > > scenario. They don't have to do this but they want - big thank
> > > you!
> > > >> > > >
> > > >> > > > What obstacles do you see here? The vote here is about "Hosting
> > > >> > > > Espressif HAL under Apache umbrella" not all HALs. We have
> > perfect
> > > >> > > > road paving here and good example for others. If we have problem
> > > >> with
> > > >> > > > other HAL then we vote other thing. But why block good solution
> > > >> > > > because of other possible bad solutions?
> > > >> > > >
> > > >> > > > We may one day consider Tiers as proposed by Michal and
> > mentioned
> > > by
> > > >> > > > Nathan (with FreeBSD):
> > > >> > > > 1. Tier 1 - in tree code drivers.
> > > >> > > > 2. Tier 2 - HAL that is under ASF and our control. <-- we are
> > > voting
> > > >> > > > this scenario here.
> > > >> > > > 3. Tier 3 - HAL that is external and out of our control (not
> > rally
> > > >> > > > welcome).
> > > >> > > >
> > > >> > > > Could you please reconsider your vote for this particular case /
> > > >> > > > scenario that is being voted? It seems that Espressif listened
> > > >> > > > carefully and provides best possible scenario :-)
> > > >> > > >
> > > >> > > > Thanks :-)
> > > >> > > > Tomek
> > > >> > > >
> > > >> > > > --
> > > >> > > > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> > > >> > > > On Fri, Oct 2, 2026 at 3:10 PM Alan C. Assis <[email protected]
> > >
> > > >> > wrote:
> > > >> > > > >
> > > >> > > > > -1
> > > >> > > > >
> > > >> > > > > As I explained before we cannot keep all HALs under ASF.
> > > >> > > > >
> > > >> > > > > BR,
> > > >> > > > >
> > > >> > > > > Alan
> > > >> > > > >
> > > >> > > > > On Fri, Oct 2, 2026 at 10:31 AM Tiago Medicci Serrano <
> > > >> > > > > [email protected]> wrote:
> > > >> > > > >
> > > >> > > > > > Hi All,
> > > >> > > > > >
> > > >> > > > > > After several discussions about HAL usage and community
> > > >> governance
> > > >> > > > > > [1][2][3], we (Espressif) propose hosting the current
> > content
> > > >> of `
> > > >> > > > > > github.com/espressif/esp-hal-3rdparty`
> > <http://github.com/espressif/esp-hal-3rdparty>
> > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > > > > <http://github.com/espressif/esp-hal-3rdparty> under an
> > > >> ASF-hosted
> > > >> > > > > > repository: `
> > > >> > > > > > github.com/apache/nuttx-hal-espressif`
> > <http://github.com/apache/nuttx-hal-espressif>
> > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> <http://github.com/apache/nuttx-hal-espressif>
> > > >> > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > > > > <http://github.com/apache/nuttx-hal-espressif>.
> > > >> > > > > >
> > > >> > > > > > *What does it mean:*
> > > >> > > > > >
> > > >> > > > > >    - `esp-hal-3rdparty` content is already Apache 2.0
> > > licensed.
> > > >> > > > > >    - Espressif's CCLA allows us to contribute to a newly
> > > created
> > > >> > > > > >    repository: we would create a PR on `
> > > >> > > > > >    github.com/apache/nuttx-hal-espressif`
> > <http://github.com/apache/nuttx-hal-espressif>
> > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> <http://github.com/apache/nuttx-hal-espressif>
> > > >> > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > > <http://github.com/apache/nuttx-hal-espressif>
> > > >> > > > > > <http://github.com/apache/nuttx-hal-espressif> with
> > > >> > > `esp-hal-3rdparty`
> > > >> > > > > > content.
> > > >> > > > > >       - On the other hand, the org account on `
> > > >> github.com/nuttx` <http://github.com/nuttx> <http://github.com/nuttx>
> > <http://github.com/nuttx>
> > > >> > <http://github.com/nuttx>
> > > >> > > <http://github.com/nuttx>
> > > >> > > > <http://github.com/nuttx>
> > > >> > > > > > <http://github.com/nuttx> is not
> > > >> > > > > >       legally attached to Apache Software Foundation and,
> > > >> > > > > > consequently, to NuttX.
> > > >> > > > > >       We can't directly contribute to it.
> > > >> > > > > >    - NuttX's committers will have (just like `nuttx` and
> > > >> > > `nuttx-apps`)
> > > >> > > > > >    write permissions to merge PRs on the newly created
> > > >> repository;
> > > >> > > > > >    - Espressif will support the community with HAL usage,
> > > >> > including a
> > > >> > > > > >    comprehensive guide on how to update it so that any
> > > community
> > > >> > > > member can
> > > >> > > > > >    send patches for HAL.
> > > >> > > > > >    - The discussion about HAL governance comes and goes,
> > > >> creating
> > > >> > > > > >    instability in the NuttX community among members,
> > > developers,
> > > >> > and
> > > >> > > > > > vendors.
> > > >> > > > > >    This is no longer acceptable and needs settlement. That
> > > being
> > > >> > > said:
> > > >> > > > > >       - `github.com/espressif/esp-hal-3rdparty`
> > <http://github.com/espressif/esp-hal-3rdparty>
> > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > > <http://github.com/espressif/esp-hal-3rdparty>
> > > >> > > > > > <http://github.com/espressif/esp-hal-3rdparty> will no
> > longer
> > > >> > > receive
> > > >> > > > > >       direct contributions for now.
> > > >> > > > > >       - The newly created `apache/nuttx-hal-espressif` - if
> > > the
> > > >> > > > community
> > > >> > > > > >       agrees on that - will enable it to evolve and receive
> > > new
> > > >> > > > > > contributions
> > > >> > > > > >       with more authority from the community.
> > > >> > > > > >       - On the other hand, native development is always an
> > > >> option
> > > >> > if
> > > >> > > > the
> > > >> > > > > >       community decides to keep supporting the devices on
> > its
> > > >> own.
> > > >> > > > > >
> > > >> > > > > > *What it doesn't mean:*
> > > >> > > > > >
> > > >> > > > > >    - It doesn't mean we are pushing NuttX to accept vendor
> > > HALs.
> > > >> > > > > >    `esp-hal-3rdparty` is a reality, and we want to empower
> > the
> > > >> > > > community to
> > > >> > > > > >    enable any NuttX member to directly work with it.
> > > >> > > > > >       - The discussion of whether NuttX should or should not
> > > >> > > officially
> > > >> > > > > >       approve vendor HALs is not related to this call for a
> > > >> vote.
> > > >> > > > > >
> > > >> > > > > > This seems to be a *Procedural Issue* [4], and a simple
> > > majority
> > > >> > > > should be
> > > >> > > > > > applied. The community is encouraged to vote. PMC members
> > have
> > > >> > > binding
> > > >> > > > > > votes.
> > > >> > > > > >
> > > >> > > > > > In that sense, my vote (Tiago) is *+1 *(binding)
> > > >> > > > > >
> > > >> > > > > > References:
> > > >> > > > > > [1]
> > > >> > https://lists.apache.org/thread/gf4c3z4ds94lon91op4c6zmclqnwtvcf
> > > >> > > > > > [2]
> > > >> > https://lists.apache.org/thread/nvnrf30jcdsxcrydmo2s95tdtlj8zvx9
> > > >> > > > > > [3]
> > > >> > https://lists.apache.org/thread/bg74qn14rs9qwson5lzt0xjb4fvbqh6j
> > > >> > > > > > [4] https://www.apache.org/foundation/voting
> > > >> > > > > >
> > > >> > > >
> > > >> > >
> > > >> >
> > > >>
> > > >
> > >
> >

Reply via email to