Date: Tue, 18 Feb 2025 15:01:44 -0700 From: Warner Losh <imp@bsdimp.com> To: Mark Millard <marklmi@yahoo.com> Cc: freebsd-arm <freebsd-arm@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: No GENERIC.hints for aarch64 (arm64?), armv7, and more; also /sys/ based paths are referenced but seem to not be universally standard; also which ARCH standard in path? Message-ID: <CANCZdfpeg070CTCqWYBFZKouK3EHsv15kOJ%2B73fnS-0G2zz7LQ@mail.gmail.com> In-Reply-To: <CANCZdfqSG2j7PDenfAC9fboC4hYuq0ND7hxLunO0yosKJ0UjCw@mail.gmail.com> References: <82B278D1-6483-438A-AAA5-DFD809B2E736.ref@yahoo.com> <82B278D1-6483-438A-AAA5-DFD809B2E736@yahoo.com> <CANCZdfqSG2j7PDenfAC9fboC4hYuq0ND7hxLunO0yosKJ0UjCw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000002fcf4062e71ca96 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Feb 18, 2025 at 2:56=E2=80=AFPM Warner Losh <imp@bsdimp.com> wrote: > > > On Sat, Feb 15, 2025 at 10:04=E2=80=AFAM Mark Millard <marklmi@yahoo.com>= wrote: > >> [This seems likely to not be limited to main [so: 15 as stands]. >> But I'm using main as the example for the issue.] >> >> In: >> >> # man 5 device.hints >> DEVICE.HINTS(5) FreeBSD File Formats Manual >> DEVICE.HINTS(5) >> >> NAME >> device.hints =E2=80=93 device resource hints >> >> . . . >> >> FILES >> /boot/device.hints Device resource hints >> file. >> /sys/ARCH/conf/GENERIC.hints Sample resource hints >> for the >> GENERIC kernel. >> /sys/ARCH/conf/NOTES Notes on the kernel >> configuration file and >> device >> resource hints. >> . . . >> >> >> >> For reference: >> >> # find -s / -name GENERIC.hints -print >> /usr/src/sys/amd64/conf/GENERIC.hints >> /usr/src/sys/i386/conf/GENERIC.hints >> /usr/src/sys/powerpc/conf/GENERIC.hints >> >> >> Multiple points: >> >> ) It seems that aarch64 (arm64?) and armv7 (arm?) have no >> such GENERIC.hints file. The same goes for riscv64 >> (riscv?). >> >> The intent for powerpc64 , powerpc64le , and powerpcspe >> may have the same issue. >> >> >> ) At least for how the local systems were installed, there >> is no such place predefined as /sys/ , not even as a >> symbolic link. "man 7 hier" does not list such. >> >> So it seems /sys -> /usr/src/sys is intended. (But >> /usr/src/ need not have been populated, leaving a >> lack of any GENERIC.hints in such a case.) >> >> Best to not to depend on /sys in the notation shown? >> >> >> ) The /ARCH/ reference is unclear vs. MACHINE, >> MACHINE_CPUARCH, and MACHINE_ARCH. The example paths >> existing for GENERIC.hints do not help because they >> all allow MACHINE =3D=3D MACHINE_CPUARCH , >> MACHINE =3D=3D MACHINE_ARCH , and >> MACHINE_CPUARCH =3D=3D MACHINE_ARCH. However, based on the >> NOTE paths: >> > > Like all things kernel, it's MACHINE. > >> >> # find -s /usr/src/ -name NOTES -print | grep /conf/NOTES | more >> /usr/src/sys/amd64/conf/NOTES >> /usr/src/sys/arm/conf/NOTES >> /usr/src/sys/arm64/conf/NOTES >> /usr/src/sys/conf/NOTES >> /usr/src/sys/i386/conf/NOTES >> /usr/src/sys/powerpc/conf/NOTES >> /usr/src/sys/riscv/conf/NOTES >> /usr/src/sys/x86/conf/NOTES >> >> None of of the MACHINE* are right: x86 is not one of >> any of the 3. Otherwise /arm64/conf/NOTES would suggest >> MACHINE as the only possibility if /ARCH/ was uniform >> for relative to the 3 MACHINE* possibilities. So?: >> >> /usr/src/sys/arm64/conf/GENERIC.hints >> /usr/src/sys/arm/conf/GENERIC.hints >> /usr/src/sys/riscv/conf/GENERIC.hints >> >> with no aarch64 , armv7 , powerpc64* , powerpcspe , or >> riscv64 examples? >> > > We store these in /dev/null these days :). > > I'll create empty ones for this. > https://reviews.freebsd.org/D49052 Just to expand a little: These platforms don't have legacy devices they need to hard-wire in various ways, unlike the other platforms. However, people use them to do device instance wiring, so I've created the empty ones. Warner > Warner > > >> =3D=3D=3D >> Mark Millard >> marklmi at yahoo.com >> >> >> --00000000000002fcf4062e71ca96 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote g= mail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Feb 18,= 2025 at 2:56=E2=80=AFPM Warner Losh <<a href=3D"mailto:imp@bsdimp.com">= imp@bsdimp.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" st= yle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padd= ing-left:1ex"><div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D= "gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sat, Feb 15, 2025 at= 10:04=E2=80=AFAM Mark Millard <<a href=3D"mailto:marklmi@yahoo.com" tar= get=3D"_blank">marklmi@yahoo.com</a>> wrote:<br></div><blockquote class= =3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg= b(204,204,204);padding-left:1ex">[This seems likely to not be limited to ma= in [so: 15 as stands].<br> But I'm using main as the example for the issue.]<br> <br> In:<br> <br> # man 5 device.hints<br> DEVICE.HINTS(5)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0FreeBSD File Format= s Manual=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DEVICE.HINTS(5)<br> <br> NAME<br> =C2=A0 =C2=A0 =C2=A0device.hints =E2=80=93 device resource hints<br> <br> . . .<br> <br> FILES<br> =C2=A0 =C2=A0 =C2=A0/boot/device.hints=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Device resource hin= ts file.<br> =C2=A0 =C2=A0 =C2=A0/sys/ARCH/conf/GENERIC.hints=C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 Sample resource hints for the<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0GENERIC kernel.<br> =C2=A0 =C2=A0 =C2=A0/sys/ARCH/conf/NOTES=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Notes on the kernel<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0configuration file and device<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0resource hints.<br> . . .<br> <br> <br> <br> For reference:<br> <br> # find -s / -name GENERIC.hints -print<br> /usr/src/sys/amd64/conf/GENERIC.hints<br> /usr/src/sys/i386/conf/GENERIC.hints<br> /usr/src/sys/powerpc/conf/GENERIC.hints<br> <br> <br> Multiple points:<br> <br> ) It seems that aarch64 (arm64?) and armv7 (arm?) have no<br> =C2=A0 such GENERIC.hints file. The same goes for riscv64<br> =C2=A0 (riscv?).<br> <br> =C2=A0 The intent for powerpc64 , powerpc64le , and powerpcspe<br> =C2=A0 may have the same issue.<br> <br> <br> ) At least for how the local systems were installed, there<br> =C2=A0 is no such place predefined as /sys/ , not=C2=A0 =C2=A0even as a<br> =C2=A0 symbolic link. "man 7 hier" does not list such.<br> <br> =C2=A0 So it seems /sys -> /usr/src/sys is intended. (But<br> =C2=A0 /usr/src/ need not have been populated, leaving a<br> =C2=A0 lack of any GENERIC.hints in such a case.)<br> <br> =C2=A0 Best to not to depend on /sys in the notation shown?<br> <br> <br> ) The /ARCH/ reference is unclear vs. MACHINE,<br> =C2=A0 MACHINE_CPUARCH, and MACHINE_ARCH. The example paths<br> =C2=A0 existing for GENERIC.hints do not help because they<br> =C2=A0 all allow MACHINE =3D=3D MACHINE_CPUARCH ,<br> =C2=A0 MACHINE =3D=3D MACHINE_ARCH , and<br> =C2=A0 MACHINE_CPUARCH =3D=3D MACHINE_ARCH. However, based on the<br> =C2=A0 NOTE paths:<br></blockquote><div><br></div><div>Like all things kern= el, it's MACHINE.</div><blockquote class=3D"gmail_quote" style=3D"margi= n:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex= "> <br> =C2=A0 # find -s /usr/src/ -name NOTES -print | grep /conf/NOTES | more<br> =C2=A0 /usr/src/sys/amd64/conf/NOTES<br> =C2=A0 /usr/src/sys/arm/conf/NOTES<br> =C2=A0 /usr/src/sys/arm64/conf/NOTES<br> =C2=A0 /usr/src/sys/conf/NOTES<br> =C2=A0 /usr/src/sys/i386/conf/NOTES<br> =C2=A0 /usr/src/sys/powerpc/conf/NOTES<br> =C2=A0 /usr/src/sys/riscv/conf/NOTES<br> =C2=A0 /usr/src/sys/x86/conf/NOTES<br> <br> =C2=A0 None of of the MACHINE* are right: x86 is not one of<br> =C2=A0 any of the 3. Otherwise /arm64/conf/NOTES would suggest<br> =C2=A0 MACHINE as the only possibility if /ARCH/ was uniform<br> =C2=A0 for relative to the 3 MACHINE* possibilities. So?:<br> <br> =C2=A0 /usr/src/sys/arm64/conf/GENERIC.hints<br> =C2=A0 /usr/src/sys/arm/conf/GENERIC.hints<br> =C2=A0 /usr/src/sys/riscv/conf/GENERIC.hints<br> <br> =C2=A0 with no aarch64 , armv7 , powerpc64* , powerpcspe , or<br> =C2=A0 riscv64 examples?<br></blockquote><div><br></div><div>We store these= in /dev/null these days :).</div><div><br></div><div>I'll create empty= ones for this.</div></div></div></blockquote><div><br></div><div>=C2=A0<a = href=3D"https://reviews.freebsd.org/D49052">https://reviews.freebsd.org/D49= 052</a></div><div><br></div><div>Just to expand a little: These platforms d= on't have legacy devices</div><div>they need to hard-wire in various wa= ys, unlike the other platforms.</div><div>However, people use them to do de= vice instance wiring, so I've created</div><div>the empty ones.</div><d= iv><br></div><div>Warner</div><div>=C2=A0</div><blockquote class=3D"gmail_q= uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2= 04);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_quote"><div>Warn= er</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:= 0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> =3D=3D=3D<br> Mark Millard<br> marklmi at <a href=3D"http://yahoo.com" rel=3D"noreferrer" target=3D"_blank= ">yahoo.com</a><br> <br> <br> </blockquote></div></div> </blockquote></div></div> --00000000000002fcf4062e71ca96--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpeg070CTCqWYBFZKouK3EHsv15kOJ%2B73fnS-0G2zz7LQ>