Skip site navigation (1)Skip section navigation (2)
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 &lt;<a href=3D"mailto:imp@bsdimp.com">=
imp@bsdimp.com</a>&gt; 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 &lt;<a href=3D"mailto:marklmi@yahoo.com" tar=
get=3D"_blank">marklmi@yahoo.com</a>&gt; 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&#39;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. &quot;man 7 hier&quot; does not list such.<br>
<br>
=C2=A0 So it seems /sys -&gt; /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&#39;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&#39;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&#39;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&#39;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>