Re: Ranges - Intended use case

David Gibson <[email protected]> Fri, 13 Feb 2026 16:16:35 +1100
Newsgroups org.kernel.vger.devicetree-spec
Message-ID <aY6zs4_vvemGd5eK@zatzit>
--IS8tP/3deCdLzXAg
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Feb 12, 2026 at 01:24:20PM -0600, Rob Herring wrote:
> On Thu, Feb 12, 2026 at 9:33=E2=80=AFAM Yao Zi <[email protected]> wrote:
> >
> > On Thu, Feb 12, 2026 at 01:14:33PM +0000, Kyle Bonnici wrote:
> > > Hi
> > >
> > > I have been trying to understand how ranges should/should not be used.
> > >
> > > Looking at the spec
> > >
> > > > The ranges property provides a means of defining a mapping or trans=
lation between the address space of the
> > > bus (the child address space) and the address space of the bus node=
=E2=80=99s parent (the parent address space).
> > >
> > > This to me the spec leave some space for interpretation on if ranges =
should be used on just buses or not. Below are some examples to try to get =
a better understanding.
> >
> > I'd like to say ranges literally specifies the translation process
> > between the children address space and the parent one, regardless
> > whether the parent is a "bus".
>=20
> Yes.
>=20
> To put it simply, "ranges" should be used whenever the child nodes
> have memory-mapped CPU addresses.

That's the most common case, but others exist.  You can encode cases
where a device's registers are mapped into its parent's bus address
space, but that parent address space is never mapped into the CPU MMIO
space.

--=20
David Gibson (he or they)	| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you, not the other way
				| around.
http://www.ozlabs.org/~dgibson

--IS8tP/3deCdLzXAg
Content-Type: application/pgp-signature; name=signature.asc

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEO+dNsU4E3yXUXRK2zQJF27ox2GcFAmmOs6kACgkQzQJF27ox
2GdqihAAnm2SEblGkpXJG1QA38VeFTUusdoKJX4Or85aEkaqPDcO9YTSgkGBh8Fi
734+Z0DLWWUsddLmfR+sPB49UcxWtZLBJSYrcSoiytZLMsnOo76CV4l7G8x9yMV/
zsyeoiK6wdlBjhblyh+1IbIn7I4qzGN9EmaUOVHIyUTFk9Xzj/Jj0tVue1xcfMet
Je2WXClIVsjxBsjNAoSzHEJkaUZ/lmmFg+oruvtRgTz5v52wMoS/XPU96qSpACJY
5f+vFn7KSeBqhvuhwoiSEUoV7cxfybCK8JfjoOtQoSviWChSK19Qi2LEdRamHMZT
0KO4/51UnwDG2XrDkO0yJ/qpDVr2p/wJBAGvYh8F2G0grfiNaCFNVpGnYPQtM1GC
c7Zq349KH64IoyC/HCHTqASI/Unqqlf2USR6bacpQJB2fLjMfYJ0SxNGUPng/7ue
5uWKaIWq8XVCH1L6zSGBPRg9l6uzMA0eqa/FMgkwMs1DS8gxypDJ/R7IbSKISDmM
8+XeckfMEQ+8m8r7TJ0IDoieJKJOkN8D3H6ZauN9zDbgvPRHtHUVpsm/j8MKws4m
mpws83PwCdvfxQ3yptdo7uNv6DNx/iDNaV8m2AfcAA2Oyp23jAlMgPKA3NfZMlHl
chToAY48CnpVGm5jveHlqklU6JdGXdqu70e0Y1OlOVGuDzeU4v8=
=fbky
-----END PGP SIGNATURE-----

--IS8tP/3deCdLzXAg--