Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jul 2023 12:49:54 -0500
From:      shurd@FreeBSD.org
To:        freebsd-arch@freebsd.org
Subject:   Re: Future of 32-bit platforms (including i386)
Message-ID:  <cfaceafd-1230-d6a1-3ca5-3f245acc2c3f@FreeBSD.org>
In-Reply-To: <20230524083555.632d968778e2d1c05a04359f@bidouilliste.com>
References:  <aaa3e005-5f72-f422-56b1-932842379e15@FreeBSD.org> <5a08b091-a1a5-1928-18e1-16c3bddb1a7f@FreeBSD.org> <20230524083555.632d968778e2d1c05a04359f@bidouilliste.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2023-05-24 01:35, Emmanuel Vadot wrote:
> On Tue, 23 May 2023 16:46:51 -0700
> John Baldwin <jhb@FreeBSD.org> wrote:
>
>> On 4/27/23 10:19 AM, John Baldwin wrote:
>>> For 13.0, i386 was demoted from Tier 1 to Tier 2.  In the announcement
>>> of this for 13.0, the project committed to an update on i386's future
>>> around the time of 14.0.  The announcement at the time suggested that
>>> i386 would be supported less in 14.x than in 13.x.
>>>
>>> My proposal is that for 14.x we treat i386 like any other Tier 2
>>> platform.  That is, release images and packages would only be provided
>>> on a best-effort basis, and we would not guarantee providing them.  I
>>> think we should also stop shipping binary updates for the base system
>>> (freebsd-update) for 14.x for i386.
>>>
>>> A larger question is what to do about 32-bit platforms moving forward.
>>> My proposal for powerpc, i386, and armv[67] is that we say publicly
>>> that we anticipate not supporting them in 15.  That is, that we may
>>> remove them outright from the tree, or we may leave them in the tree,
>>> but we do not plan on building packages or release images.  Another
>>> option to consider for 32-bit platforms perhaps in 15 is to remove
>>> kernel support and only retain the ability to build userland.  The
>>> goal of saying this now-ish (or about the time 14.0 is going to ship)
>>> would be to give time for users and developers to respond in the
>>> window between 14.0 and 15.0 so we can evaluate those responses as an
>>> input into the final decision for 15.
>> We discussed this topic during the 15.0 developer summit and the consensus
>> among the folks present (which is only a subset of our community), is
>> that there is still interest in supporting armv7 kernels in 15.0, but not
>> kernels for other platforms.  In addition, no one expressed a need for
>> full 32-bit world support for i386 and powerpc, only for compat32 support
>> in the kernel, and lib32 (cc -m32) support in userland.
>>
>> One question for this is if we think we will have sufficient developer
>> resources to maintain armv7 kernels for the life of stable/15.  We can
>> largely punt on the final decision for that until close to the release of
>> 15.0.  I think for what we announce for 14.0 we can still say that we
>> are generally planning to remove 32-bit kernel and world support in 15.0,
>> but may consider keeping armv7.
>   I personnaly see armv7 in "degraded maintainance mode" since 13.0,
> nothing really intersting was added, no new SoC support even if there
> was some interesting one that we could support, no new drivers for
> supported platforms. We even lost TI BeagleBone support because no one
> really have the time to keep support up to date.
>   I still have some little cute boards that I want to use from time to
> time but the lack of proper porting of new language (like rust and iirc
> go have problems too) is making new software unusable on those boards
> (you can't even make some "smart speaker" for spotify as all the
> spotify clients are in rust).
>   IMX6 support is stalled since ian@ passed away and mmel@ isn't very
> active atm and they were both the most actives developers for armv7 low
> level code.
>
>   So I'm really interested in who wants to keep armv7 and why, is it
> just "I'm using my RPI2 and wants to continue using it" ?
>
>   Cheers,

I realize I'm late to the party, but I just posted this:
https://reviews.freebsd.org/D41201 which led to me discovering this
thread.

The reason I did this was because I need to hack up a thing to go
between the internet and a 1984 vintage computer with a 111,840bps
serial port, and I want to integrate a supercap UPS into the design.

Initially, I had thought to just use Linux on the device since it came
with it, but for some reason, Linux couldn't receive at 111840 without
dropping characters.  The Z80 system in question doesn't have flow
control, so rather than fight with Linux, I decided to fight with
something I like.  As it happens, FreeBSD has no issue with the serial
port.

So what's left that I'll need for my project is getting the ADC driver
usable (it doesn't look like it's exposed outside of the kernel
currently) to monitor/control the supercap UPS hardware.  I grabbed a
few of these boards since they're so cheap ($20 each), so I'll likely be
using more of them for various things.

Doing the same development using NetBSD or OpenBSD would be a bit more
painful since I'm running FreeBSD on all my systems, am familiar with
building and installing it, and have the source laying around
everywhere.

I was actually quite surprised that there's packages available, but I'm
not sure I would understand what a statement that we may not support
them in 15 would actually mean.  armv7 is already Tier 2, which is
explicitly not supported by secteam, releng, and ports.  If that just
means moving it to Tier 3, that wouldn't bother me much, though I'm not
sure how often universe fails because of it due to something that
doesn't need to be fixed anyway.  If it means open season on deleting
any armv7-specific "stuff" you happen across, it would bother me, and if
it means someone taking a couple days to find all the armv7 stuff and
removing it, it would feel spiteful.

If armv7 is actually causing universe to fail in weird arm-specific ways
that actually distract Tier 1 developers with irrelevant minutia, a move
to Tier 3 is clearly warranted.  Maybe I just don't understand how much
effort is being wasted on the level of support armv7 is currently
getting.

TL:DR: I want to keep armv7 because you can still do some cool things
with it, but I don't insist anyone else do work beyond not breaking
universe to keep it running (and if not breaking universe is a problem,
I don't even insist on that).




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?cfaceafd-1230-d6a1-3ca5-3f245acc2c3f>