mbox series

[v2,00/21] clk: at91: add sama7g5 support

Message ID 1596640325-20014-1-git-send-email-claudiu.beznea@microchip.com
Headers show
Series clk: at91: add sama7g5 support | expand

Message

Claudiu Beznea Aug. 5, 2020, 3:11 p.m. UTC
The purpose of this series is to add clock support for SAMA7G5.
Along with this, clock drivers were switched to CCF and aligned
with their corresponding versions present in Linux.
Some changes were done for CCF, patches 1, 3, 4, 5 (I don't know
if they were as is by intention of a fixes tag is needed in there).

Also patch 3/21 has been added to support clock re-reparenting (this
is minimal support and hope it doesn't break anything if used).

Thank you,
Claudiu Beznea

Changes in v2:
- use assert() in patch 1/21
- drop patch 2/22 from previous series
- add sandbox tests for clock reparenting, device reparenting and
  critical clocks
- adapt review comments
- collected Reviewed-by tags

Claudiu Beznea (21):
  clk: check hw and hw->dev before dereference it
  dm: core: add support for device re-parenting
  clk: bind clk to new parent device
  clk: do not disable clock if it is critical
  clk: get clock pointer before proceeding
  clk: at91: add pre-requisite headers for AT91 clock architecture
  clk: at91: pmc: add helpers for clock drivers
  clk: at91: move clock code to compat.c
  clk: at91: sckc: add driver compatible with ccf
  clk: at91: clk-main: add driver compatible with ccf
  clk: at91: sam9x60-pll: add driver compatible with ccf
  clk: at91: clk-master: add driver compatible with ccf
  clk: at91: clk-master: add support for sama7g5
  clk: at91: clk-utmi: add driver compatible with ccf
  clk: at91: clk-utmi: add support for sama7g5
  clk: at91: clk-programmable: add driver compatible with ccf
  clk: at91: clk-system: add driver compatible with ccf
  clk: at91: clk-peripheral: add driver compatible with ccf
  clk: at91: clk-generic: add driver compatible with ccf
  clk: at91: pmc: add generic clock ops
  clk: at91: sama7g5: add clock support

 drivers/clk/at91/Kconfig            |    7 +
 drivers/clk/at91/Makefile           |   15 +-
 drivers/clk/at91/clk-generated.c    |  178 -----
 drivers/clk/at91/clk-generic.c      |  202 +++++
 drivers/clk/at91/clk-h32mx.c        |   56 --
 drivers/clk/at91/clk-main.c         |  381 +++++++++-
 drivers/clk/at91/clk-master.c       |  331 ++++++++-
 drivers/clk/at91/clk-peripheral.c   |  291 ++++++--
 drivers/clk/at91/clk-plla.c         |   54 --
 drivers/clk/at91/clk-plladiv.c      |   85 ---
 drivers/clk/at91/clk-programmable.c |  208 ++++++
 drivers/clk/at91/clk-sam9x60-pll.c  |  442 +++++++++++
 drivers/clk/at91/clk-slow.c         |   36 -
 drivers/clk/at91/clk-system.c       |  143 ++--
 drivers/clk/at91/clk-usb.c          |  147 ----
 drivers/clk/at91/clk-utmi.c         |  234 ++++--
 drivers/clk/at91/compat.c           | 1023 +++++++++++++++++++++++++
 drivers/clk/at91/pmc.c              |  218 +++---
 drivers/clk/at91/pmc.h              |  140 +++-
 drivers/clk/at91/sama7g5.c          | 1401 +++++++++++++++++++++++++++++++++++
 drivers/clk/at91/sckc.c             |  169 ++++-
 drivers/clk/clk-uclass.c            |   51 +-
 drivers/clk/clk.c                   |    3 +
 drivers/core/device.c               |   22 +
 include/dm/device-internal.h        |    9 +
 include/dt-bindings/clk/at91.h      |   22 +
 include/linux/clk/at91_pmc.h        |  247 ++++++
 test/dm/clk_ccf.c                   |   57 ++
 test/dm/core.c                      |  160 ++++
 29 files changed, 5407 insertions(+), 925 deletions(-)
 delete mode 100644 drivers/clk/at91/clk-generated.c
 create mode 100644 drivers/clk/at91/clk-generic.c
 delete mode 100644 drivers/clk/at91/clk-h32mx.c
 delete mode 100644 drivers/clk/at91/clk-plla.c
 delete mode 100644 drivers/clk/at91/clk-plladiv.c
 create mode 100644 drivers/clk/at91/clk-programmable.c
 create mode 100644 drivers/clk/at91/clk-sam9x60-pll.c
 delete mode 100644 drivers/clk/at91/clk-slow.c
 delete mode 100644 drivers/clk/at91/clk-usb.c
 create mode 100644 drivers/clk/at91/compat.c
 create mode 100644 drivers/clk/at91/sama7g5.c
 create mode 100644 include/dt-bindings/clk/at91.h
 create mode 100644 include/linux/clk/at91_pmc.h