From owner-freebsd-stable@freebsd.org Sun Sep 25 04:21:09 2016 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 47033BE9707; Sun, 25 Sep 2016 04:21:09 +0000 (UTC) (envelope-from russ.haley@gmail.com) Received: from mail-vk0-x22f.google.com (mail-vk0-x22f.google.com [IPv6:2607:f8b0:400c:c05::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F29CBEA4; Sun, 25 Sep 2016 04:21:08 +0000 (UTC) (envelope-from russ.haley@gmail.com) Received: by mail-vk0-x22f.google.com with SMTP id z126so18820319vkd.0; Sat, 24 Sep 2016 21:21:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=HR5m8jhBvw3EId8GNMY/0AwEF4ng6yUm5Kwml8joCLU=; b=LB9kOPUaP8ZwPG/EbHcn8/lziBYfTj5VpjqVrx9m/1aBVJe0G8qVTFcz/ZhxgLlDF5 NZfZ7bx+ZwOe262U9eITWjy0D3TwjNGvokHhw4jo3nxGGsnmVdDCwcqzvHUepblPHCOD GcrK1Wtr6s2J0paz2PXCjMBfSAHapuKG4KvdZtAVuaOxfX9kSYFZdjPalu146QHZndUp C6PUb5PSscKKkgvY1Y9lEkQ4fpl/V/xZZrvxuiZEnl4LCwsFH5BzK6jJVx+tptqqbBkq 4u+lbHh4jgnzqUIoJRfRNhHQrMx9O9mgTnOfxCmv/SDW8y1IdcBnAiInx09mDxk+kvRs eTzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=HR5m8jhBvw3EId8GNMY/0AwEF4ng6yUm5Kwml8joCLU=; b=aEzA/aY+g0erehnIFD9QWQ3c0G5pXvS/xXpu5j2krjLg5Lo7SKC02kDqCuTAJdrXhH sxXTETEv9mmj5Q0q0xfwdvtVRDpbDbjVcFAB5ZcGfQpzRchO1p/m7bZUthkL8DknaAG4 IyuDvQ1FeC87mtVce0dJ1HdvQ5tPxf7BbSonGiQJ2t8nHQsuJ+C7CZd5lcbWju1A+Rxo l/ZQCaRRV2bpc7fSKGvETKvLd5o+r7bn7al7FGLZlZIVrqy4yHF8xt0Men7fh79UKV26 4EaIX/1y7ajnxGv6wICuKBcEbwxEyUtSIMU06+oI0Y2JydIe3azocEsnJ1NOvGPo/DIi j3jg== X-Gm-Message-State: AA6/9RlTJ6EWZTt2BEQxAGAOu4XwnnpeAlo8NnkrN0Qv8rzb3tRpH43LFI8PZzRqn2mHAnhr1uCytMY6dIcvkA== X-Received: by 10.31.242.206 with SMTP id q197mr3668053vkh.46.1474777268017; Sat, 24 Sep 2016 21:21:08 -0700 (PDT) MIME-Version: 1.0 Received: by 10.31.124.202 with HTTP; Sat, 24 Sep 2016 21:21:07 -0700 (PDT) In-Reply-To: <4F04B0C0-DAB1-4EEA-A3A0-4FAA89AD93E2@dsl-only.net> References: <4076CFFA-7BE2-4E1B-A7E8-08FD8FC27D21@dsl-only.net> <332FA120-31E5-4D31-B63E-A0DFDD7DEFC7@dsl-only.net> <4F04B0C0-DAB1-4EEA-A3A0-4FAA89AD93E2@dsl-only.net> From: Russell Haley Date: Sat, 24 Sep 2016 21:21:07 -0700 Message-ID: Subject: Re: 11.0-RELEASE tier level for arm64/aaarch64 and the officially built arm/armv6 variants? To: Mark Millard Cc: Warner Losh , freebsd-arm , FreeBSD-STABLE Mailing List Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 25 Sep 2016 04:21:09 -0000 On Sat, Sep 24, 2016 at 5:12 PM, Mark Millard wrote: > On 2016-Sep-24, at 2:11 PM, Warner Losh wrote: > >> On Fri, Sep 23, 2016 at 8:29 PM, Mark Millard wrot= e: >>> [A resend since I forget to list free-arm in the To: the first time.] >>> >>> From https://www.freebsd.org/platforms/arm.html : >>> >>>> 32-bit ARM is officially a Tier 2 architecture, as the FreeBSD project= does not provide official releases or pre-built packages for this platform= due to it primarily targeting the embedded arena. However, FreeBSD/ARM is = being actively developed and maintained, is well supported, and provides an= excellent framework for building ARM-based systems. FreeBSD/arm supports A= RMv4 and ARMv5 processors. FreeBSD/armv6 supports ARMv6 and ARMv7 processor= s, including SMP on the latter. >>> >>> "does not provide official releases or pre-built packages"? >>> >>>> # uname -apKU >>>> FreeBSD rpi2 11.0-PRERELEASE FreeBSD 11.0-PRERELEASE #5 r304943M: Sun = Aug 28 03:17:54 PDT 2016 markmi@FreeBSDx64:/usr/obj/clang/arm.armv6/usr= /src/sys/RPI2-NODBG arm armv6 1100502 1100502 >>> >>>> # pkg search '.*' | wc >>>> 21349 155540 1596736 >>> >>> Will 11.0-RELEASE change the tier level for any of the specific arm-arm= v6 variants that have FreeBSD-11.0-*-arm-armv6-*.img* files built, such as = for RPI2? >>> >>> Even if all the officially built arm-armv6 variants stay tier 2, the wo= rding on the web page likely needs to be changed because so much is built a= nd available that the above quote claims is not available. >> >> armv6 is basically Tier 1 right now, though not as Tier 1 as i386 or >> amd64 due to the fragmented nature of the arm world. On the platforms >> we run on and create releases for, however, it's my opinion that it is >> Tier 1: it has been running in production a while, things people >> expect from a FreeBSD system are present, you can get decent support >> if you ask questions, there's no known major gotchas in deploying this >> hardware. The only remaining annoying issue is the 'u-boot' problem >> where we have to have a different u-boot image for every board and no >> standardized way to convert a 'generic' image into one that's specific >> for specific boards. I'll point out again that barebox is an excellent alternative to u-boot (IM= HO): - Supports most, if not all of the boards that FreeBSD supports, plus many that it doesn't - Single source tree for all boards. Specify build time parameters to build one or all the images - Well supported community with central maintainer-ship - Simple, familiar shell interface (*awesome*) - Excellent documentation (u-boots is good too though) - Has support for (U)EFI - Supports quemu aarch64 (not *quite*sure what the means though) To be fair, I'm not saying the problem is the fault of denx, but barebox has a lot going for it. The maintainer was very keen to see it ported top FreeBSD and was willing to support the effort. I ran into some build time linux api requirements, but he didn't think that would be much to overcome (and it wasn't I just kept adding the patches he sent me and the build moved forward. As always, I ran out of time for the really fun stuff). While I am a hopeless dreamer and I'm sure I've over simplified the problem, I thought it would be neat to see FreeBSD upstream support for zfs and ufs to the barebox boot loader and do away with ubldr. We would then have a modern, easy to use, boot loader that supports the standard startup toolchain. Either way, if installers move to a pkgng based method (so cool) then installing u-boot and arm binaries from pkg-static will be the same as x86 (ha ha I said that with a straight face!). >>For x86 this is all done with the installer since >> that boot environment is more standardized. Does this last issue keep >> arm from being Tier 1? That's a judgement call, but I think the >> project should promote w/o this last issue. How does a platform get promoted? Is that something the Core team decides? I see two facts about current Arm support that show platform maturity: a) u-boot is in the ports tree and we have Lego-easy build scripts in crochet that could be called an installation method. Building for arm is not difficult anymore. b)Arm requires images, not installers. Correct me if I'm wrong but, installers are a tool primarily invented for x86 PC type computers. FreeBSD publishes standardized ISOs for all supported Arm platforms that work by simply "xzcat | dd" onto the sd card (or wherever you need it). I'm not sure how standardized or manual that build process is, but I would think that if the Arm platform support is able to keep up with the standard FreeBSD release cycle (i.e. not break every other release) then there would be no reason to NOT call it tier 1? What I don't know about is "official" documentation for building for arm and supporting cross building to Arm. Will someone need to write an "Arm Handbook" to be promoted? Cheers, Russ > > Interesting and good to know. Thanks. > > I might have guessed that going along with the u-boot issue would be the = fanout in: > > 11.0/sys/arm/ . . . > > allwinner/a10/ > allwinner/a20/ > allwinner/a31/ > allwinner/a83t/ > allwinner/h3/ > . . . > broadcom/bcm2835/ > . . . > > (Full list not shown.) > > I was thinking that this might make the tier level specific to the status= of each such directory's content so that it was the combination of that an= d the sysutils/u-boot-*/ status that made the difference for assigning the = level. I'd guess that lack of a usable directory in either place would not= be tier 2 even. Similarly until the required sys/arm/*/* and sysutils/u-bo= ot-*/ directory-tree content have reached a sufficiently complete status. > > I'd expect that there will always be a lag for what exists in the world v= s. what has these materials worked out in FreeBSD. > > >>> Also from https://www.freebsd.org/platforms/arm.html : >>> >>>> Initial support for 64-bit ARM is complete. 64-bit ARM platforms follo= w a set of standard conventions, and a single FreeBSD build will work on ha= rdware from multiple vendors. As a result, FreeBSD will provide official re= leases for FreeBSD/arm64 and packages will be available. FreeBSD/arm64 is o= n the path to becoming a Tier 1 architecture. >>> >>> Will 11.0-RELEASE make arm64/aarch64 Tier 1? >>> >>> [I will note that, while there are no official builds for the Pine64 fa= mily (A64 based) that are under the Allwinner arm activity, the SOC's invol= ved are Cortex-A53 64-bit arm based. They likely do not fit in the "standar= d conventions" or arm64/aarch64 would be where they would have been support= ed. Some rewording might be appropriate for the above quote as well.] >> >> No. aarch64 isn't Tier 1 yet. There's many small bits that are >> missing. It is quite solidly Tier 2, but we don't have a linker, we >> don't have widespread hardware availability, we don't have production >> experience with the platform. Most things work, but there's still some >> gotchas. There's still the 'u-boot' problem with many arm64 systems >> because for systems that use u-boot to bootstrap UEFI, you need a >> different image for each board (some closely related board families >> can get by with one to be pedantic). All these issues are still >> significant barriers to production use. It's not been officially >> promoted yet and I don't think the time is quite right yet. > > Intersting as well. I'd guess that conceptually this probably would apply= to both: > > sys/arm/allwinner/a64/ and sysutils/u-boot/pine64/ > (presuming, contrary to fact, that 11.0 had sys/arm/allwinner/a64/ ) > > and. . . > > sys/arm64/cavium/ > sys/arm64/cloudabi64/ > > So just sys/arm/ vs. sys/arm64/ for an aarch64 would not really make a di= fference yet for tier level. > >> Warner > > Thanks again for the notes. > > =3D=3D=3D > Mark Millard > markmi at dsl-only.net > > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"