[GIT,PULL,1/2] arm64: dts: exynos: Pull for v5.4
mbox series

Message ID 20190911183632.4317-1-krzk@kernel.org
State New
Headers show
Series
  • [GIT,PULL,1/2] arm64: dts: exynos: Pull for v5.4
Related show

Pull-request

https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git tags/samsung-dt64-5.4

Message

Krzysztof Kozlowski Sept. 11, 2019, 6:36 p.m. UTC
Hi,

Unfortunately the patches were applied right after closing the linux-next.

Best regards,
Krzysztof


The following changes since commit 5f9e832c137075045d15cd6899ab0505cfb2ca4b:

  Linus 5.3-rc1 (2019-07-21 14:05:38 -0700)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git tags/samsung-dt64-5.4

for you to fetch changes up to 266cf9826de38efac416e744d42364ac7fa9dc5b:

  arm64: dts: exynos: Remove useless #address-cells property for GIC node (2019-09-05 21:27:17 +0200)

----------------------------------------------------------------
Samsung DTS ARM64 changes for v5.4

1. Fix boot of Exynos7 due to wrong address/size of memory node,
2. Move GPU under /soc node,
3. Minor cleanup of #address-cells.

----------------------------------------------------------------
Marek Szyprowski (4):
      arm64: dts: exynos: Propagate address/size cell change to /memory node
      arm64: dts: exynos: Move GPU under /soc node for Exynos5433
      arm64: dts: exynos: Move GPU under /soc node for Exynos7
      arm64: dts: exynos: Remove useless #address-cells property for GIC node

 .../boot/dts/exynos/exynos5433-tm2-common.dtsi     |   2 +-
 arch/arm64/boot/dts/exynos/exynos5433.dtsi         | 102 ++++++++++-----------
 arch/arm64/boot/dts/exynos/exynos7-espresso.dts    |   2 +-
 arch/arm64/boot/dts/exynos/exynos7.dtsi            |  23 +++--
 4 files changed, 64 insertions(+), 65 deletions(-)

Comments

Arnd Bergmann Sept. 11, 2019, 9:07 p.m. UTC | #1
On Wed, Sep 11, 2019 at 8:36 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> Hi,
>
> Unfortunately the patches were applied right after closing the linux-next.

Hi Krzysztof,

I took a look at these and am not convinced this is right:

> 1. Fix boot of Exynos7 due to wrong address/size of memory node,

The current state is clearly broken and a fix is needed, but
I'm not sure this is the right fix. Why do you have 32-bit physical
addressing on a 64-bit chip? I looked at commit ef72171b3621
that introduced it, and it seems it would be better to just
revert back to 64-bit addresses.

> 2. Move GPU under /soc node,

No problem

> 3. Minor cleanup of #address-cells.

IIRC, an interrupt-controller is required to have a #address-cells
property, even if that is normally zero. I don't remember the
details, but the gic binding lists it as mandatory, and I think
the PCI interrupt-map relies on it. I would just drop this patch.

    Arnd
Krzysztof Kozlowski Sept. 12, 2019, 6:32 a.m. UTC | #2
On Wed, 11 Sep 2019 at 23:07, Arnd Bergmann <arnd@arndb.de> wrote:
>
> On Wed, Sep 11, 2019 at 8:36 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> >
> > Hi,
> >
> > Unfortunately the patches were applied right after closing the linux-next.
>
> Hi Krzysztof,
>
> I took a look at these and am not convinced this is right:
>
> > 1. Fix boot of Exynos7 due to wrong address/size of memory node,
>
> The current state is clearly broken and a fix is needed, but
> I'm not sure this is the right fix. Why do you have 32-bit physical
> addressing on a 64-bit chip? I looked at commit ef72171b3621
> that introduced it, and it seems it would be better to just
> revert back to 64-bit addresses.

We discussed with Marek Szyprowski that either we can go back to
64-bit addressing or stick to 32. There are not known boards with more
than 4 GB of RAM so from this point of view the choice was irrelevant.
At the end of discussion I mentioned to stick with other arm64 boards
(although not all), so revert to have 64 bit address... but Marek
chosen differently. Since you ask, let's go back with revert.

>
> > 2. Move GPU under /soc node,
>
> No problem
>
> > 3. Minor cleanup of #address-cells.
>
> IIRC, an interrupt-controller is required to have a #address-cells
> property, even if that is normally zero. I don't remember the
> details, but the gic binding lists it as mandatory, and I think
> the PCI interrupt-map relies on it. I would just drop this patch.

Indeed, binding requires both address and size cells. I'll drop it.

Best regards,
Krzysztof
Marek Szyprowski Sept. 12, 2019, 6:56 a.m. UTC | #3
Hi

On 2019-09-12 08:32, Krzysztof Kozlowski wrote:
> On Wed, 11 Sep 2019 at 23:07, Arnd Bergmann <arnd@arndb.de> wrote:
>> On Wed, Sep 11, 2019 at 8:36 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>>> Hi,
>>>
>>> Unfortunately the patches were applied right after closing the linux-next.
>> Hi Krzysztof,
>>
>> I took a look at these and am not convinced this is right:
>>
>>> 1. Fix boot of Exynos7 due to wrong address/size of memory node,
>> The current state is clearly broken and a fix is needed, but
>> I'm not sure this is the right fix. Why do you have 32-bit physical
>> addressing on a 64-bit chip? I looked at commit ef72171b3621
>> that introduced it, and it seems it would be better to just
>> revert back to 64-bit addresses.
> We discussed with Marek Szyprowski that either we can go back to
> 64-bit addressing or stick to 32. There are not known boards with more
> than 4 GB of RAM so from this point of view the choice was irrelevant.
> At the end of discussion I mentioned to stick with other arm64 boards
> (although not all), so revert to have 64 bit address... but Marek
> chosen differently. Since you ask, let's go back with revert.

I decided to go with 32bit version to make the fix smaller and easier to 
backport. If you select revert, make sure that it is applied after 
moving gpu node under /soc, otherwise the gpu node will have incorrect 
(32bit) reg property. Also add the gpu related patch as an (optional?) 
prerequisite for it.

>> 2. Move GPU under /soc node,
>> No problem
>>
>>> 3. Minor cleanup of #address-cells.
>> IIRC, an interrupt-controller is required to have a #address-cells
>> property, even if that is normally zero. I don't remember the
>> details, but the gic binding lists it as mandatory, and I think
>> the PCI interrupt-map relies on it. I would just drop this patch.
> Indeed, binding requires both address and size cells. I'll drop it.

Ookay, I wasn't aware of that.


Best regards
Krzysztof Kozlowski Sept. 12, 2019, 9:35 a.m. UTC | #4
On Thu, 12 Sep 2019 at 08:32, Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On Wed, 11 Sep 2019 at 23:07, Arnd Bergmann <arnd@arndb.de> wrote:
> >
> > On Wed, Sep 11, 2019 at 8:36 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> > >
> > > Hi,
> > >
> > > Unfortunately the patches were applied right after closing the linux-next.
> >
> > Hi Krzysztof,
> >
> > I took a look at these and am not convinced this is right:
> >
> > > 1. Fix boot of Exynos7 due to wrong address/size of memory node,
> >
> > The current state is clearly broken and a fix is needed, but
> > I'm not sure this is the right fix. Why do you have 32-bit physical
> > addressing on a 64-bit chip? I looked at commit ef72171b3621
> > that introduced it, and it seems it would be better to just
> > revert back to 64-bit addresses.
>
> We discussed with Marek Szyprowski that either we can go back to
> 64-bit addressing or stick to 32. There are not known boards with more
> than 4 GB of RAM so from this point of view the choice was irrelevant.
> At the end of discussion I mentioned to stick with other arm64 boards
> (although not all), so revert to have 64 bit address... but Marek
> chosen differently. Since you ask, let's go back with revert.
>
> >
> > > 2. Move GPU under /soc node,
> >
> > No problem
> >
> > > 3. Minor cleanup of #address-cells.
> >
> > IIRC, an interrupt-controller is required to have a #address-cells
> > property, even if that is normally zero. I don't remember the
> > details, but the gic binding lists it as mandatory, and I think
> > the PCI interrupt-map relies on it. I would just drop this patch.
>
> Indeed, binding requires both address and size cells. I'll drop it.

Short update: no, address-cells are not required by bindings. They are
optional. In case of lack of them, the parent address-cells will be
used so effectively this patch was changing it from 0 to 1. Anyway
this was not expressed in commit msg so I'll drop it.

Best regards,
Krzysztof