Date: Thu, 13 Dec 2018 07:53:41 +0900 (JST) From: Mori Hiroki <yamori813@yahoo.co.jp> To: Warner Losh <imp@bsdimp.com>, "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org> Subject: Re: MIPS future... Message-ID: <367298.45441.qm@web103901.mail.ssk.yahoo.co.jp> In-Reply-To: <CANCZdfq8PMDdnEnBeBsQ-evJph9Bf1P-gp3v3DYzeUWHV5FOAw@mail.gmail.com> References: <CANCZdfpK5mPDDgpJ5PVhXF7-MixSouW8mAKkWQcaRnmYW%2Bpy0g@mail.gmail.com> <CANCZdfq8PMDdnEnBeBsQ-evJph9Bf1P-gp3v3DYzeUWHV5FOAw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
=0A=0AHi=0A=0A=0A----- Original Message -----=0A>From: Warner Losh <imp@bsd= imp.com>=0A>To: "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org> =0A>D= ate: 2018/12/13, Thu 07:15=0A>Subject: Re: MIPS future...=0A> =0A>On Wed, D= ec 12, 2018 at 11:15 AM Warner Losh <imp@bsdimp.com> wrote:=0A>=0A>> OK. To= be a good player in the FreeBSD ecosystem, we need to do=A0 a few=0A>> thi= ngs.=0A>>=0A>> First, we need to implement atomic_swap_64. hps did this for= mips64 and=0A>> committed it. He sent me some further patches for it that = I need to commit=0A>> when I get a change, maybe at the airport tonight.=0A= >>=0A>> But this brings up a couple of issues I'd like to bring up.=0A>>=0A= >> First, to implement atomic_swap_64 on mips-32 is hard. In that it's not= =0A>> just the canonical ldd/sdd sequence because those aren't available th= ere.=0A>> We can do the standard trick of reading STATUS0, clearing IE, sto= ring it,=0A>> do the operation and then restoring STATUS0. This is efficien= t enough for=0A>> the use in the kernel for the supported cores we have.=0A= >>=0A>> With two exceptions. First is running 32-bit kernels on 64-bit hard= ware.=0A>> We deprecated that with Octeon because of the weird hacks we nee= ded to do=0A>> too make it work. I'd like to universally deprecate this. Th= ere's little=0A>> benefit and a real cost to doing this. I'd like to remove= the SWARM_SMP,=0A>> XLP, and GXEMUL32 (or at least remove the smp option).= =0A>>=0A>> But there's JZ4780. It's a legit mips32 + SMP. It's on Image Cre= ator's=0A>> CI20. This was released in Nov 2014 with a refresh in March 201= 5. This is a=0A>> dead-end product line (there's no new cores and none new = that I can find).=0A>> This was a RPi competitor, but it was slower, less c= apable and more=0A>> expensive so it's kinda rare now. I'd say we need to d= e-support this=0A>> device. I know of only one user, and he's not responded= to my email. I=0A>> think 12 will have to be the last release we have this= in. Today, the only=0A>> affect is for some drivers that can't run on this= platform, but the writing=0A>> is on the wall.=0A>>=0A>> That brings me to= my next question: SWARM. Can we kill SWARM entirely?=0A>> It's for the BCM= 1250 part, released in sometime before 2000. It was super=0A>> popular beca= use it was the reference for a ton of things that followed. I=0A>> think it= 's run is over and we can remove it. I can find no users of it in=0A>> the = nyc dmesg database. Mine has been in a plastic bag since before my sone=0A>= > was born in 2006... So I'm thinking we can remove this platform. It was o= n=0A>> the edge last time I did a GC in mips-land.=0A>>=0A>> And then there= 's the even larger question: how many people are still using=0A>> mips32? I= t looks like a fair number, maybe, but I have no idea for sure, so=0A>> if = you do, please provide feedback on the platforms you are running FreeBSD=0A= >> 11 or newer on.=0A>>=0A>=0A>There's one last issue this brings up. When = writing the above code, I=0A>discovered I could use the non-racy DI instruc= tion. However, that was=0A>introduced with mips32r2. This was defined in 20= 02 and gear appeared in the=0A>market 2004 or 2005. I believe that all supp= orted SoCs have mips32r2. SWARM=0A>doesn't, which is another reason to kill= it: it's getting in the way and=0A>providing no benefit. Would anybody obj= ect to the minimum ISA being raised=0A>to mips32r2 for all 32-bit mips plat= forms?=0A>=0A>Warner=0A>_______________________________________________=0A>= freebsd-mips@freebsd.org mailing list=0A>https://lists.freebsd.org/mailman/= listinfo/freebsd-mips=0A>To unsubscribe, send any mail to "freebsd-mips-uns= ubscribe@freebsd.org"=0A>=0A>=0A>=0A=0Amips32 is called by 4K=0Amips32r2 is= called by 24K=0A=0AIn current FreeBSD mips support at 4K is Rakink RT2880 = and Atheros=0AAR531x. Ralink RT3050 later and Newer Atheros is 24K or 74K.= =0A=0A=0AAlso Broadcom BCM4712 and BCM5354 is 4K but it's still hangup. Las= t=0ABroadcom MIPS soc that is BCM4718 and BCM5357 is 74K.=0A=0AI have quest= ion. Can do generate 24K code by gcc 4.2.1 and binutils?=0A=0A=0AHiroki Mor= i=0A
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?367298.45441.qm>