[PATCH RFC 00/10] ARM: STi: Add dwmac glue and reset controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




From: Srinivas Kandagatla <srinivas.kandagatla@xxxxxx>

Hi All,

This patch series adds Ethernet support to STi series SOCs STiH415 and STiH416.
STi SOC series integrates dwmac IP from synopsis, however there is a hardware
glue on top of this standard IP, this glue needs to configured before the
actual dwmac can be used.
To add this a new driver dwmac-sti is introduced whose responsibility is to
configure dwmac glue and before dwmac driver, this is achieved by making dwmac
device node as child to ethernet glue node. Inspired by usb/dwc3.
Also the glue needs to come out of softreset which is why we have added a
softreset controller to driver which looked perfectly neat, rather then
driving the softreset bit from the glue driver.

Also as part of power management in glue driver, I found that there was no
function to determine if the child device is a wakeup source or not.
I have added a new api device_child_may_wakeup API which could be useful for
drivers like this. "PM / wakeup : Introduce device_child_may_wakeup" patch has
that new API and "net: stmmac:sti: Add STi SOC glue driver." glue driver uses
this new API.

The reason for combining all these patches in a same series is because of
dependencies.

This patch series is tested on B2000 and B2020 boards with STiH415, STiH416
SOC on ethernet 100/1000 Links.

Comments?

Thanks,
srini

Srinivas Kandagatla (6):
  drivers: reset: stih415: add softreset controller
  drivers: reset: stih416: add softreset controller
  PM / wakeup : Introduce device_child_may_wakeup
  net: stmmac:sti: Add STi SOC glue driver.
  ARM: STi: Add STiH415 ethernet support.
  ARM: STi: Add STiH416 ethernet support.

Stephen Gallimore (4):
  drivers: reset: STi SoC system configuration reset controller support
  drivers: reset: Reset controller driver for STiH415
  drivers: reset: Reset controller driver for STiH416
  ARM: STi: Add reset controller support to mach-sti Kconfig

 .../devicetree/bindings/net/sti-dwmac.txt          |   45 +++
 .../devicetree/bindings/reset/st,sti-powerdown.txt |   46 +++
 .../devicetree/bindings/reset/st,sti-softreset.txt |   45 +++
 arch/arm/boot/dts/stih415-clock.dtsi               |   14 +
 arch/arm/boot/dts/stih415-pinctrl.dtsi             |   82 ++++++
 arch/arm/boot/dts/stih415.dtsi                     |   67 +++++
 arch/arm/boot/dts/stih416-clock.dtsi               |   14 +
 arch/arm/boot/dts/stih416-pinctrl.dtsi             |  106 +++++++
 arch/arm/boot/dts/stih416.dtsi                     |   69 +++++
 arch/arm/boot/dts/stih41x-b2000.dtsi               |   32 +++
 arch/arm/boot/dts/stih41x-b2020.dtsi               |   33 +++
 arch/arm/mach-sti/Kconfig                          |    3 +
 drivers/base/power/wakeup.c                        |   23 ++
 drivers/net/ethernet/stmicro/stmmac/Makefile       |    1 +
 drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c    |  294 ++++++++++++++++++++
 drivers/reset/Kconfig                              |    2 +
 drivers/reset/Makefile                             |    3 +
 drivers/reset/sti/Kconfig                          |   15 +
 drivers/reset/sti/Makefile                         |    4 +
 drivers/reset/sti/reset-stih415.c                  |   99 +++++++
 drivers/reset/sti/reset-stih416.c                  |  101 +++++++
 drivers/reset/sti/reset-syscfg.c                   |  186 ++++++++++++
 drivers/reset/sti/reset-syscfg.h                   |   69 +++++
 .../dt-bindings/reset-controller/stih415-resets.h  |   23 ++
 .../dt-bindings/reset-controller/stih416-resets.h  |   25 ++
 include/linux/pm_wakeup.h                          |    1 +
 26 files changed, 1402 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/sti-dwmac.txt
 create mode 100644 Documentation/devicetree/bindings/reset/st,sti-powerdown.txt
 create mode 100644 Documentation/devicetree/bindings/reset/st,sti-softreset.txt
 create mode 100644 drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c
 create mode 100644 drivers/reset/sti/Kconfig
 create mode 100644 drivers/reset/sti/Makefile
 create mode 100644 drivers/reset/sti/reset-stih415.c
 create mode 100644 drivers/reset/sti/reset-stih416.c
 create mode 100644 drivers/reset/sti/reset-syscfg.c
 create mode 100644 drivers/reset/sti/reset-syscfg.h
 create mode 100644 include/dt-bindings/reset-controller/stih415-resets.h
 create mode 100644 include/dt-bindings/reset-controller/stih416-resets.h

-- 
1.7.6.5

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux