If https://github.com/apache/nuttx/pull/20686 do like [2B]:

   1. Only L2/L3 keep in the kernel
   2. Integrate with network socket architecture
   3. Replace BLE only stack with BT/BLE stack and compatible with
   userspace tools/examples

Most people including me will support it without any concern, but it isn't.

On Mon, Nov 2, 2026 at 9:21 PM chao an <[email protected]> wrote:

> Hi all,
>
> I think there is no need to continue voting on my proposal anymore.
>
> I have decided to give up on PR #20686:
> https://github.com/apache/nuttx/pull/20686
>
> From my point of view, the community has already moved away from some of
> the original technical principles that Greg had for NuttX. I also feel that
> there are now too many people directing the technical direction, but not
> enough people actually doing the technical work.
>
> What disappoints me even more is that some of the people voting on this
> topic are not really from the Bluetooth area, yet they are making decisions
> on the Bluetooth architecture. This makes it very difficult for me to
> continue investing my time in this direction.
>
> Alan, I also want to ask one question directly: do you still remember that
> you once rejected the same approach that you are now supporting?
>
> BRs,
>
> Xiang Xiao <[email protected]> 于2026年11月2日周一 20:50写道:
>
> > +1 for 1b and 2b.
> > The goal is improving the original BLE only stack with BT/BLE capability,
> > but https://github.com/apache/nuttx/pull/20686 is still in the very
> early
> > stage
> > and then far from to enter the kernel space.
> > The reasonable and smooth migration approach is that:
> >
> >    1. Integrate Zephyr bluetooth stack in the userspace and setup
> >    CI/CT/simulation, so the community could get a mature, stable and full
> >    feature BT/BLE stack immediately
> >    2. Move L2/L3 of the stack from userspace to kernel and improve the
> >    origin stack directly and make all user space examples and tools work
> as
> >    before
> >    3. Modify the userspace stack invoking the kernel function through
> >    socket interfaced and drop L2/L3 code in the userspace
> >
> >  We can check and verify the result of each step independently.
> >
> > Thanks
> > Xiang
> >
> >
> > On Mon, Nov 2, 2026 at 7:47 PM chao an <[email protected]> wrote:
> >
> > > Hi all,
> > >
> > > Since my proposal is part of the options being voted on, I think I
> > > should probably not cast a vote myself.
> > >
> > > However, I would like to add one clarification for option 1A.
> > >
> > > The performance benefit is only one part of the motivation. The
> > > long-term goal of 1A is not just to reduce context switches or data
> > > copies, but to make this a true NuttX-native Bluetooth host
> > > implementation. In the future, this direction can introduce proper
> > > user/kernel-space primitives and interfaces for protected and kernel
> > > builds, while keeping the core host integrated with the NuttX kernel
> > > architecture. In other words, 1A is intended to become a real
> > > Bluetooth protocol stack owned, maintained, reviewed, and evolved by
> > > NuttX itself.
> > >
> > > For option 1B, I also want to mention that this was actually the first
> > > approach I proposed to Greg six years ago: keep the Zephyr host mostly
> > > unmodified in apps, add only the NuttX porting layer, and update it by
> > > changing the pinned upstream revision. At that time, this approach was
> > > rejected.
> > >
> > > So I am a bit confused now: if the community votes for 1B today, does
> > > that mean the community disagrees with Greg’s previous position? If
> > > this approach had been accepted back then, the zblue work could have
> > > been introduced into the community six years ago.
> > >
> > > To be honest, I am very disappointed with how this decision process has
> > > evolved.
> > >
> > > P.S. I still keep the repository from six years ago here:
> > > https://github.com/anchao/zblue
> > >
> > > BRs,
> > >
> > >
> > > Alin Jerpelea <[email protected]> 于2026年11月2日周一 19:26写道:
> > >
> > > > +1 for 1b
> > > >
> > > > Thanks for your hard work
> > > >
> > > > Beat regards
> > > > Alin J
> > > >
> > > > On Mon, 2 Nov 2026, 12:20 Alan C. Assis, <[email protected]> wrote:
> > > >
> > > > > +1 for option 1B: ZBlue stack in user-space
> > > > >
> > > > > On Mon, Nov 2, 2026 at 6:39 AM 成凯 via dev <[email protected]>
> > > wrote:
> > > > >
> > > > > > Hello all,
> > > > > >
> > > > > >
> > > > > > This is a vote on how a Zephyr-based Bluetooth host should be
> > > > integrated
> > > > > > into NuttX. On 29 October Matteo suggested moving to a vote,
> > because
> > > > the
> > > > > > discussion was not producing new viewpoints. No vote thread has
> > been
> > > > > > started since then, so I am starting it here.
> > > > > >
> > > > > > Disclosure: I am one of the authors of the [DISCUSS] proposal
> > (option
> > > > 1B
> > > > > > below). I have tried to describe both options in neutral terms,
> > using
> > > > the
> > > > > > words of their authors where possible. If either side thinks the
> > > > > > description of its option is not accurate, please reply in this
> > > thread
> > > > > > and I will post a corrected text.
> > > > > >
> > > > > > Discussion:
> > > > > > - PR #20686: https://github.com/apache/nuttx/pull/20686
> > > > > > - [DISCUSS] thread:
> > > > > >
> https://lists.apache.org/thread/c6pl46o5l1ngb2zb3qtotq38o30h6v4b
> > > > > > - Side thread:
> > > > > >
> https://lists.apache.org/thread/3qfsgtzxmor02r2onnc11m36wl7qvzc0
> > > > > >
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > Not part of this vote
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > >
> > > > > > - Most replies prefer one Zephyr-based host rather than two
> > different
> > > > > >   ports. Alin suggested keeping both implementations selectable
> at
> > > > > >   build time; if you prefer that, please say so in your reply.
> > > > > > - It is an optional stack selected by Kconfig. The existing NuttX
> > > > > >   Bluetooth stack and NimBLE stay available.
> > > > > > - Bluetooth feature options keep the CONFIG_BT_* names. The name
> of
> > > the
> > > > > >   top-level switch is decided in review.
> > > > > > - In protected and kernel builds, profiles, services, shell and
> > tools
> > > > run
> > > > > >   in userspace.
> > > > > > - Tests in CI and correct license headers are required.
> > > > > >
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > Question 1: where does the host start?
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > >
> > > > > > [1A] PR #20686: adapted host in the NuttX kernel tree.
> > > > > >      The whole host is added to nuttx.git (today libs/zblue),
> > adapted
> > > > to
> > > > > >      NuttX coding style and NuttX APIs, and maintained by NuttX
> as
> > > its
> > > > > >      own code. Upstream Zephyr changes are picked up as needed.
> > Flat
> > > > > >      builds are supported first. Higher-level profiles move to a
> > > > library
> > > > > >      in userspace later, and a socket/VFS interface is added for
> > > > > >      protected and kernel builds.
> > > > > >      Arguments given: fewer context switches and data copies on
> > small
> > > > > >      MCUs; direct access to kernel primitives; no large Zephyr
> > > > > >      compatibility layer; reviewed and tested as part of NuttX;
> no
> > > > > >      external download.
> > > > > >
> > > > > > [1B] [DISCUSS] proposal: unmodified host in nuttx-apps.
> > > > > >      The host is added to nuttx-apps under
> > wireless/bluetooth/zblue,
> > > in
> > > > > >      the same way as NimBLE. The Zephyr host code is not
> modified.
> > It
> > > > is
> > > > > >      fetched at a pinned revision and updated by changing the
> > > revision.
> > > > > >      Only the port layer (Zephyr kernel APIs on top of NuttX, HCI
> > > glue,
> > > > > >      build files) is NuttX code and is reviewed in nuttx-apps. At
> > the
> > > > > >      start, the kernel provides only the HCI transport that
> already
> > > > > >      exists (/dev/ttyHCIx).
> > > > > >      Arguments given: smaller kernel attack surface in protected
> > and
> > > > > >      kernel builds; uses public interfaces only; same model as
> > > NimBLE;
> > > > > >      upstream fixes, including security fixes, are picked up by
> > > > changing
> > > > > >      the revision.
> > > > > >
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > Question 2: if 1B wins, what is the long-term kernel/user
> boundary?
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > >
> > > > > > Everyone can answer this question, also if you vote 1A. It is
> > counted
> > > > > > only if 1B wins. It sets the direction only; each step is still a
> > > > > > separate, reviewed patch series.
> > > > > >
> > > > > > [2A] HCI boundary.
> > > > > >      The whole host stays in nuttx-apps. The kernel keeps only
> the
> > > HCI
> > > > > >      transport and drivers.
> > > > > >
> > > > > > [2B] L2CAP boundary (Linux/BlueZ-style).
> > > > > >      HCI core, connection management and L2CAP move step by step
> > into
> > > > > >      the NuttX kernel, replace the current kernel Bluetooth stack
> > > > > >      (wireless/bluetooth and net/bluetooth) without losing
> > function,
> > > > and
> > > > > >      are exposed through Bluetooth sockets. These layers are then
> > > > > >      maintained by NuttX. Profiles, services, shell and tools
> stay
> > in
> > > > > >      nuttx-apps.
> > > > > >
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > How to vote
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > >
> > > > > > Please reply with one choice per question, for example:
> > > > > >
> > > > > >   Q1: 1A or 1B
> > > > > >   Q2: 2A or 2B
> > > > > >
> > > > > > You can reply "0" for a question if you have no preference. A
> short
> > > > > > reason is welcome. Please keep the technical discussion in the
> > > > [DISCUSS]
> > > > > > thread, not in this one.
> > > > > >
> > > > > > Votes from PMC members are binding. Everyone else is welcome to
> > vote
> > > > too
> > > > > > (non-binding). For each question, the option with more binding
> > votes
> > > > > > wins; Question 2 is counted only if 1B wins. If there is a tie,
> the
> > > > > > discussion continues in the [DISCUSS] thread.
> > > > > >
> > > > > > The vote is open until Monday, 9 November 2026, 00:00 UTC (more
> > than
> > > 72
> > > > > > hours), so that all time zones can take part.
> > > > > >
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > After the vote
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > >
> > > > > > The result will be posted as [RESULT][VOTE]. Both sides have said
> > > they
> > > > > > will follow the community decision. The contributors then agree
> on
> > a
> > > > > > short joint roadmap in the [DISCUSS] thread and send small,
> > > reviewable
> > > > > > patches that follow the result.
> > > > > >
> > > > > > Thank you,
> > > > > > Kai Cheng
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> #/******本邮件及其附件含有小米公司的保密信息,仅限于发送给上面地址中列出的个人或群组。禁止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制、或散发)本邮件中的信息。如果您错收了本邮件,请您立即电话或邮件通知发件人并删除本邮件!
> > > > > > This e-mail and its attachments contain confidential information
> > from
> > > > > > XIAOMI, which is intended only for the person or entity whose
> > address
> > > > is
> > > > > > listed above. Any use of the information contained herein in any
> > way
> > > > > > (including, but not limited to, total or partial disclosure,
> > > > > reproduction,
> > > > > > or dissemination) by persons other than the intended recipient(s)
> > is
> > > > > > prohibited. If you receive this e-mail in error, please notify
> the
> > > > sender
> > > > > > by phone or email immediately and delete it!******/#
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to