[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_Jsq+GLBtaezUiTbm0DAA2+MjcvxAcCsS-qJrr05YcTO5tdw@mail.gmail.com>
Date: Thu, 6 Apr 2017 09:03:50 -0500
From: Rob Herring <robh+dt@...nel.org>
To: Frank Rowand <frowand.list@...il.com>
Cc: "devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] of: change fixup of dma-ranges size to error
On Thu, Apr 6, 2017 at 1:18 AM, <frowand.list@...il.com> wrote:
> From: Frank Rowand <frank.rowand@...y.com>
>
> of_dma_get_range() has workaround code to fixup a device tree that
> incorrectly specified a mask instead of a size for property
> dma-ranges. That device tree was fixed a year ago in v4.6, so
> the workaround is no longer needed. Leave a data validation
> check in place, but no longer do the fixup. Move the check
> one level deeper in the call stack so that other possible users
> of dma-ranges will also be protected.
>
> The fix to the device tree was in
> commit c91cb9123cdd ("dtb: amd: Fix DMA ranges in device tree").
NACK. This was by design. You can't represent a size of 2^64 or 2^32.
Well, technically you can for the latter, but then you have to grow
#size-cells to 2 for an otherwise all 32-bit system which seems kind
of pointless and wasteful. You could further restrict this to only
allow ~0 and not just any case with bit 0 set.
I'm pretty sure AMD is not the only system. There were 32-bit systems too.
Rob
Powered by blists - more mailing lists