jOj9lIZElt9qOsc2uS9OrnVS5r7Fn8wKZYBp9RZISzFcw0f2G8Wyu5Oxpq3DGcewx4O5tDhYd4TltPqpNo4E9ki0W1l41tsI5tdXPxqonoDu7vb4cXuYBF1TESWJRXNie6qia9s3rSf5vtq9Yb6xM3QdAOstt/zbVDSI2C8sddtL/2U46D+z5pY0RvQrfw== X-YMail-OSG: cjtc4h4VM1mZaI4IRMlaWzR.cy0Jhb3_1XUosmdGtHtkZnYtEDvv425sb4avDwQ ew6JL2o5iVWfQG.N.bwEQ8Rk_wAmimWSz8UxBnzzEg.1ODnVJfnX0GkzeJ2Q4VeF08ZtQyT9gRNd RyEU1_3IpBNj7lKF6dWj2k14rKNS9dRCzvU3PuqBy7phkDYGsmfc06Dmx.SFORsshQM0gT9RZa3D MIj0v9CgpXAufm6UUMAUFPFIvpc6VhTjZRMbInNAycuG55jUEOXBEXJ7Uu5.hXY0CciBU_6LhXuS r3cPvf5h_BYiGhbRkmBspGYu8O1g8x2m8rHDus5ONYXxVcGMyvLRIe63pXfBiDOTzS03TztIhTq4 DGFGdb3BjLT.r5b4Xj9y1yen6w7_flnj3Vlg5Zd3I5ebcOcy3f5xJxVxotyUdXvGnUwkU7jcdiGQ 4EastZyJmcEdCwLjJuIcwyCog.kzT8FTJtrBgtRqcW5Lk7bXKHvEZySpwbWa.N84kNoztPc0GURM u9DZGPiOnMuY2KH.w20FPPPHobgZyXSHpS_18yAPKVZqhgyHbqx_GD.RyJUuOEdCnvEQmQiGkJSg wz0Q6LMWgkZ_1tSzNKr5QVGkC8vNZ3Q8xbuGWRV8ZIrHm1Wqn4KYgr5mqtqbV6D6pbOUNCiKXtRY aT6btuFPCDXsXQXEuun9BTpbrJOblpKu4DlB4ZzJ5gvT2XS3cvRW_05LzDx0MeOMjXdspM5QwRl2 oWSraC1LAVJVXTC5nMaw99JBod48aZLxSRk7y4H7bwLLUT5yH2TAcxgBTs9A78JsdUMZR9p.VuhJ CjrVuUGVVIazrO9tsTqZ9M0V7DOlqZh.xJp._.e0RmeMfo.Gc5ju_7wNcHKwIbT.9JLmNeQzNjOw FkQEb9Q8wzSP3X7tS0PnrZBHX6cTE.o0oF45rxLfs1Q50GshtCryFdauMyIs9Kj00gwq14wkGtDX lZN78RlZWN7ZVF4xxOzYV8r.Z4WTFpHLGzwCGKzVTIAkO8GX6_xuEtRgGIaZJnYJxuaFIbVJJXbY PjNmjnAtLdzsI.udgHFesYLIOIPw4m9utwGCmmWyA0_d4lE21Xw1ATNwYkc4xDgku_XY00sa7IMk MYMG_d.RLNajkwtxEgsRPDoIA6GsgANRwdJr.YkAi0_s_dMoeXHKw3TPqkuNVlMzZbe29UXH7wDu s2xHsMkevFBfALou8w.XR8ib.95NFLuqKWoYcFKzXJ_yyIFxfh.WjV0CLAYUJz.WZXo_rJeo2oEy XFjoqZMtlQL.AkA3K.sDrPjw9SFaPxXkWX6GgMv7Ghtg2Fu4o28BWdhlUC7iWRKuxpC8XGkwssnH 7blnvrg2V5PcJGSEvFKwYNFMhlZVA.5QsJeqIe96STBv.EFvdRFci6O8Xo1z4mjmnStdAcEptE3X PGaY6Kb1IicoN2h5MsdqDe56brNuqCUjLd1Q_sJyKnq5bNa_ZY8tue._5uC3HzxLj3AK2kQLPO2m _z0oNEB6KOLssPxwf59XHkmdXVIc33FKSlRDWbkVclINoW0PJ1b3m3UKPH7t64Y0aEHkJ9BApa8q v8OdLI3CuoYtnTXPZnCGQNnK4QqYY8xsZimQHgUzr7apZbfEentZCs3nS6F3xe8zbimyQZmniDWD 4jTAoFg7W6abGL6o4tsr2lNB4PoAPhmugelMJEF.JgAyooZcPWXlVg9RjwqvZOMlHSo.wV04tw6H Va7QG0kuBqp7Go7Us3N7bLszTLKwq9Cw2eHtMZHj6XFglt93O0Q060xAxcQnvXeGY_G1njtNTlco cM_J5qEYJ89Qvl61cLGHtRQgGF70u2iCFMSFMqPmsq3zJrhu9yzYdhsNymjV6iRzql2GLRL9SPJu TpTeUlgSbs8aQp45PS45uQQmRJTGr1Q6TrwCFdyMZ6HAhwDewOOXlEE0L7GqWA.h_90JYI0I9mEA U8BDz_IRvuj4q6jvGawanDbFlMFdSv0_2KQOPiUXp4bN_7M98yqw_4oMf1ZCl1srUOY92PGGmZgq Ue_nbcfRbxPfIAkLT5ia4X7FvjgfSDj8ksMh6kU5gyfjch40Cz0cH3Ma_IXvLAGzc0cbSnyXn5k9 rNFWM2rhfIF.5eD1PSCKTbiYYfX.XpF_N70a4sJs1MiZ2DQmM37KuwaWy3qtsiqGea.11OjeFNtR GXehcie5WcnjslAX9E8wn_hypjzsU1mKfiWL9rqw_XdrOt9dEeQOpm.Py4k8CUtbfo71lMnKBzR6 W3zMvK4zWA_b80dSHy7AQpLatLVLF.hzTHFVKew8EDH0ZpDK1vMJhmdPmhVPniTErptX9VoWxWb7 6qS0- X-Sonic-MF: X-Sonic-ID: 2088fcc8-c69b-4bee-a636-b634a7287381 Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.gq1.yahoo.com with HTTP; Tue, 18 Feb 2025 23:57:27 +0000 Received: by hermes--production-gq1-5dd4b47f46-9j75b (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 31921bde9e8836832ab35cbdaecf000d; Tue, 18 Feb 2025 23:57:25 +0000 (UTC) Content-Type: text/plain; charset=utf-8 List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.400.131.1.6\)) 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? From: Mark Millard In-Reply-To: Date: Tue, 18 Feb 2025 15:57:14 -0800 Cc: freebsd-arm , FreeBSD Current Content-Transfer-Encoding: quoted-printable Message-Id: References: <82B278D1-6483-438A-AAA5-DFD809B2E736.ref@yahoo.com> <82B278D1-6483-438A-AAA5-DFD809B2E736@yahoo.com> To: Warner Losh X-Mailer: Apple Mail (2.3826.400.131.1.6) X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US] X-Rspamd-Queue-Id: 4YyGfk2CtXz3Tw4 X-Spamd-Bar: ---- On Feb 18, 2025, at 14:01, Warner Losh wrote: >=20 > On Tue, Feb 18, 2025 at 2:56=E2=80=AFPM Warner Losh = wrote: >>=20 >> On Sat, Feb 15, 2025 at 10:04=E2=80=AFAM Mark Millard = 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.] >>>=20 >>> In: >>>=20 >>> # man 5 device.hints >>> DEVICE.HINTS(5) FreeBSD File Formats Manual = DEVICE.HINTS(5) >>>=20 >>> NAME >>> device.hints =E2=80=93 device resource hints >>>=20 >>> . . . >>>=20 >>> 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. >>> . . . >>>=20 >>>=20 >>>=20 >>> For reference: >>>=20 >>> # 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 >>>=20 >>>=20 >>> Multiple points: >>>=20 >>> ) It seems that aarch64 (arm64?) and armv7 (arm?) have no >>> such GENERIC.hints file. The same goes for riscv64 >>> (riscv?). >>>=20 >>> The intent for powerpc64 , powerpc64le , and powerpcspe >>> may have the same issue. >>>=20 >>>=20 >>> ) 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. >>>=20 >>> 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.) >>>=20 >>> Best to not to depend on /sys in the notation shown? >>>=20 >>>=20 >>> ) 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: >>=20 >> Like all things kernel, it's MACHINE. >>=20 >>> # 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 >>>=20 >>> 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?: >>>=20 >>> /usr/src/sys/arm64/conf/GENERIC.hints >>> /usr/src/sys/arm/conf/GENERIC.hints >>> /usr/src/sys/riscv/conf/GENERIC.hints >>>=20 >>> with no aarch64 , armv7 , powerpc64* , powerpcspe , or >>> riscv64 examples? >>=20 >> We store these in /dev/null these days :). >>=20 >> I'll create empty ones for this. >=20 > https://reviews.freebsd.org/D49052 Thanks. > 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. An example can also be disabling something that needs to be avoided for some unusual reason, such as avoiding virtio_gpu under parallels on aarch64 macOS. (I've not tested doing that yet.) =3D=3D=3D Mark Millard marklmi at yahoo.com =3D=3D=3D Mark Millard marklmi at yahoo.com