Skip to content

Make deferring probe forever optional

Rob Herring linux-arm-kernel linux-arm-msm linux-devicetree linux-iommu linux-pm linux-rockchip linux-samsung-soc lkml 4 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v4 Latest6 patches 5 repliesIn review
  2. v36 patches 5 repliesSuperseded
  3. v28 patches 20 repliesSuperseded
Earlier versions · 1
VersionPostedPatchesRepliesStatus
v1 RFC1 patch19 repliesSuperseded

Patches in v4 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/6driver core: allow stopping deferred probe after initDocumentation/admin-guide/kernel-parameters.txt drivers/base/dd.c include/linux/device.h+70 -02 replies
2/6dt-bindings: pinctrl: add a 'pinctrl-use-default' propertyDocumentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt+6 -00 replies
3/6pinctrl: Support stopping deferred probe after initcallsdrivers/pinctrl/devicetree.c+11 -40 replies
4/6iommu: Stop deferring probe at end of initcallsdrivers/iommu/of_iommu.c+1 -10 replies
5/6iommu: Remove IOMMU_OF_DECLAREdrivers/iommu/arm-smmu-v3.c drivers/iommu/arm-smmu.c drivers/iommu/exynos-iommu.c +7 more+1 -440 replies
6/6PM / Domains: Stop deferring probe at the end of initcalldrivers/base/power/domain.c+1 -13 replies

Reviews trailers per patch

4 of 6 patches have a Reviewed-by or Acked-by.

PatchLinus WalleijJoerg RoedelWill DeaconMarek SzyprowskiRafael J. Wysocki
1/6
2/6
3/6R-b
4/6A-b
5/6A-b A-b A-b
6/6A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 5 reviewers.

Read the v4 thread

Cover letter [PATCH v4 0/6] Make deferring probe forever optional

This series came out of a discussion on the ARM boot-architecture list[1] about DT forwards and backwards compatibility issues. There are issues with newer DTs breaking on older, stable kernels. Some of these are difficult to solve, but cases of optional devices not having kernel support should be solvable.

I tested this on a RPi3 B with the pinctrl driver forced off. With this change, the MMC/SD and UART drivers can function without the pinctrl driver. I left the dts change out this time.

v2 and v3 of this series can be found here[2][3].

Rob

[1] https://lists.linaro.org/pipermail/boot-architecture/2018-April/000466.html
[2] https://lore.kernel.org/patchwork/project/lkml/list/?series=347413
[3] https://lore.kernel.org/patchwork/project/lkml/list/?series=357344

Rob Herring (6):
driver core: allow stopping deferred probe after init
dt-bindings: pinctrl: add a 'pinctrl-use-default' property
pinctrl: Support stopping deferred probe after initcalls
iommu: Stop deferring probe at end of initcalls
iommu: Remove IOMMU_OF_DECLARE
PM / Domains: Stop deferring probe at the end of initcall

 .../admin-guide/kernel-parameters.txt         |  9 +++
 .../bindings/pinctrl/pinctrl-bindings.txt     |  6 ++
 drivers/base/dd.c                             | 59 +++++++++++++++++++
 drivers/base/power/domain.c                   |  2 +-
 drivers/iommu/arm-smmu-v3.c                   |  2 -
 drivers/iommu/arm-smmu.c                      |  7 ---
 drivers/iommu/exynos-iommu.c                  |  2 -
 drivers/iommu/ipmmu-vmsa.c                    |  3 -
 drivers/iommu/msm_iommu.c                     |  2 -
 drivers/iommu/of_iommu.c                      | 21 +------
 drivers/iommu/qcom_iommu.c                    |  2 -
 drivers/iommu/rockchip-iommu.c                |  2 -
 drivers/pinctrl/devicetree.c                  | 15 +++--
 include/asm-generic/vmlinux.lds.h             |  2 -
 include/linux/device.h                        |  2 +
 include/linux/of_iommu.h                      |  4 --
 16 files changed, 90 insertions(+), 50 deletions(-)

--
2.17.1