Merge branch 'Add--clock-config-and-pm-support-to-bcm-iProc-mdio-mux'
authorDavid S. Miller <davem@davemloft.net>
Thu, 2 Aug 2018 21:36:57 +0000 (14:36 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 2 Aug 2018 21:36:57 +0000 (14:36 -0700)
commitfc389d1cb3855f6012093f741531a9ad0ec4ae9a
tree7068e95dd3751fb19b4a7b329a778c95332643a2
parent89b1698c93a9dee043154f33d96bca9964e705f1
parent2c7230446bc90bc883890007e2a5da60c399e88a
Merge branch 'Add--clock-config-and-pm-support-to-bcm-iProc-mdio-mux'

Arun Parameswaran says:

====================
Add clock config and pm support to bcm iProc mdio mux

The patchset extends the Broadcom iProc mdio mux to add support for
suspend/resume and the ability to configure the internal clock
divider. The patchset also sets the scan control register to
disable external master access.

The base address of the mdio-mux-bcm-iproc is modified to point to the
start of the mdio block's address space, to be able to access all the
mdio's registers. The missing registers are required to configure the
internal clock divider registers in some of the Broadcom SoC's.

Changes from v3:
 - Removed 'platform_set_drvdata(pdev, NULL)' call (in patch 5/8)
 - Fixed the return code handling for the devm_clk_get() call (in patch
   7/8)
 - Added Reviewed-by tag to Patch 8/8

Changes from v2:
 - Addressed Andrew's comments:
     - Moved to using devm_mdiobus_alloc. Added this as a separate patch.
     - Changed to reverse christmas tree order for variable declaration in
       the clock patch
 - Addressed Florian's comments:
     - Removed null checks for the clock before calling unprepare in
       both clock and pm patches.
     - Added check for EPROBE_DEFER when fetching the clock in the clock
       patch.
 - The patch to use the devm API has been added before the clock & pm
   patches. This patch is now patch '5' in the series.
 - Added reviewed-by tags to commit messages of patches which remain
   unmodified from v2.
 - Modified PM patch to use platform_get_drvdata() in suspend/resume
   API's, similar to the recent fix that went in for the remove()
   api.

Changes from v1:
 - Addressed Andrew's comments.
   - Reworked the patches to be based on 'net-next'
   - Removed 'fixes' from the commit messages, the changes are related
     to the new features being added.
   - Maintained backward compatibility to older dt-blob's specifying
     base addresse with an offset. The correction is applied in the
     driver and a message is printed to update the dt-blob.
   - Re-worked and re-ordered the last four patches (4-7).
     - Added setting of the scan control register as a new patch
     - Added a call to 'clk_prepare_enable()' in the patch that adds
       the clock config support, removed the debug message when clock
       is not passed.
     - Simplified the pm support patch (removed the array used for the
       save/restore logic).
====================

Signed-off-by: David S. Miller <davem@davemloft.net>