net: ethernet: ave: add multiple clocks and resets support as required property
authorKunihiko Hayashi <hayashi.kunihiko@socionext.com>
Thu, 19 Apr 2018 07:24:53 +0000 (16:24 +0900)
committerDavid S. Miller <davem@davemloft.net>
Fri, 20 Apr 2018 14:49:40 +0000 (10:49 -0400)
commit6b9227d666f2efe0f8ed234827bb1abdf63f9501
tree7abbc9872bb325cc4a021af33d595d009639c7d0
parent0263ea5cddedd84c111b55d33a8ec94740d1c8d3
net: ethernet: ave: add multiple clocks and resets support as required property

When the link is becoming up for Pro4 SoC, the kernel is stalled
due to some missing clocks and resets.

The AVE block for Pro4 is connected to the GIO bus in the SoC.
Without its clock/reset, the access to the AVE register makes the
system stall.

In the same way, another MAC clock for Giga-bit Connection and
the PHY clock are also required for Pro4 to activate the Giga-bit feature
and to recognize the PHY.

To satisfy these requirements, this patch adds support for multiple clocks
and resets, and adds the clock-names and reset-names to the binding because
we need to distinguish clock/reset for the AVE main block and the others.

Also, make the resets a required property. Currently, "reset is
optional" relies on that the bootloader or firmware has deasserted
the reset before booting the kernel.  Drivers should work without
such expectation.

Fixes: 4c270b55a5af ("net: ethernet: socionext: add AVE ethernet driver")
Suggested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
drivers/net/ethernet/socionext/sni_ave.c