Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp2944604imm; Thu, 24 May 2018 19:36:38 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqjJUWw3RCZ6gKbWC+2+1SKnuJ43sdOOQuHGamQePNhgdRy4p3nasJNhZUUV50+/NPiLLs6 X-Received: by 2002:a62:a044:: with SMTP id r65-v6mr540257pfe.235.1527215798401; Thu, 24 May 2018 19:36:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527215798; cv=none; d=google.com; s=arc-20160816; b=w7leiv68fBERu1uo6GHypjTAGm1240/UHUQG31xoiPVzjpbwvwKbAVNXQJdvQyO7mW Zxz/R1lNwPy8n1WuoFIb5QiPurqH2YQqStDv72PaMQUAcAH3AyySDR314udifnoU1YrX BAWf3wgO7Uav6kH+SQC+0hcVeIz0SCFFBelQin2eaKcpEPw6srBMTVsDq7rN/4g4wkAe 4JnOJmWmo7BoQZkGz1Ge9YsoTsZCaidsuFL2P1gmdOjPv0PEqiAF44fxDgh0wLxvFej0 rIGSd8uUUVoqyMdHIR1lvgpLGMSL+DuuP73ItgaQ7a1Xs9ViO6YpGjPrpZhQlfsoJXFM eYUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=vV3QwdKHW1DC0xC9+FC6frnXmgMcv4ckdxkP27CQEkE=; b=bzlgbHvslmHRvxA/hvbkj+wLI1ctrLtnwsCGseVd5g72TWS1DtYL0cSi178Y9g/T03 sFpQfEqdit88T1EYBafk8J41QgL0rdUWlrvd8j3a8Wp8TryUk0kobyUi8G1igdiegmCe sFHabfLK+GCS//8AsjHWPtj+L6OiHy1YcrxfgLve9KH59Oj4elcrRuNnz50txCO7cNP1 IqhQbxKdHahQ1RTzAazK24sEToya0CENJvf/pCvf2bEbZp/WndLW8PPeb3CQjFBZ8S4S IdbTux76H6zCxU2ucokvgm2aYdkV1nP0n0UdI5lWeSxN3N7akE0zHFcQ6G9TT6AFMHSG rzGA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w6-v6si9088017pgb.11.2018.05.24.19.36.24; Thu, 24 May 2018 19:36:38 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1031122AbeEXRud (ORCPT + 99 others); Thu, 24 May 2018 13:50:33 -0400 Received: from mail-yw0-f195.google.com ([209.85.161.195]:39480 "EHLO mail-yw0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S966518AbeEXRu3 (ORCPT ); Thu, 24 May 2018 13:50:29 -0400 Received: by mail-yw0-f195.google.com with SMTP id i201-v6so838210ywe.6; Thu, 24 May 2018 10:50:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=vV3QwdKHW1DC0xC9+FC6frnXmgMcv4ckdxkP27CQEkE=; b=b8+imY6qHTTLDW+lQBaVCWJa1JgKBBcJejcxGZyigSAQtJis0ranvnzyGbouMswB+J p/pjANWhOEEKYco1tXxR6axpoFsTgTfF/t2qDcgBIF5bQY4miEHp3Dru5PCBG+OrqP4A Uj4hzYfFbCIhia36ma41RTBcRW/sw4H+g5YG81E/nPLd21jHp7vu7UVVp351PpRf9bDD PSEGHRD+Ac3af6g0FexgP7l1mRHg5PgiLocAMVwzNSW2EvS54rM1ZL+RuJIeOrEqNfVv nxcsXGeSp6dl/YO+2dbB4a/M4NrDOCaVu/hwcuZOmcFwBkDjVsl67JBens/RyK0G9u/Z zF6Q== X-Gm-Message-State: ALKqPwf1p5SKEB1gqVDc1rcHg1wUFSlt9oataFree/Z3vz4xekfdmAq/ d/Uh2Ep7yfz/SuUqi0xyxw== X-Received: by 2002:a0d:e085:: with SMTP id j127-v6mr4650822ywe.202.1527184228289; Thu, 24 May 2018 10:50:28 -0700 (PDT) Received: from localhost.localdomain (24-223-123-72.static.usa-companies.net. [24.223.123.72]) by smtp.googlemail.com with ESMTPSA id v73-v6sm9183814ywa.92.2018.05.24.10.50.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 24 May 2018 10:50:27 -0700 (PDT) From: Rob Herring To: Greg Kroah-Hartman , Linus Walleij , Alexander Graf , Bjorn Andersson , "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson , Joerg Roedel , Robin Murphy , Mark Brown , Frank Rowand Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, boot-architecture@lists.linaro.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 0/8] Make deferring probe forever optional Date: Thu, 24 May 2018 12:50:16 -0500 Message-Id: <20180524175024.19874-1-robh@kernel.org> X-Mailer: git-send-email 2.17.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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. v2: - Add a DT property for pinctrl to flag using defaults - Add a debug timeout to stop deferring some number of seconds after initcalls are done (giving modules a chance to load) - Split pinctrl support to its own patch - WARN when we stop deferring probe for a device - Add IOMMU support - Add PM domain support Rob [1] https://lists.linaro.org/pipermail/boot-architecture/2018-April/000466.html Rob Herring (8): driver core: make deferring probe after init optional driver core: add a deferred probe timeout dt-bindings: pinctrl: add a 'pinctrl-use-default' property arm: dts: bcm283x: mark the UART pin muxing nodes with pinctrl-use-default pinctrl: optionally stop deferring probe at end of 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 | 7 +++ .../bindings/pinctrl/pinctrl-bindings.txt | 6 +++ arch/arm/boot/dts/bcm283x.dtsi | 2 + drivers/base/dd.c | 43 +++++++++++++++++++ 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 | 14 ++++-- include/linux/device.h | 2 + include/linux/of_iommu.h | 4 -- 16 files changed, 73 insertions(+), 48 deletions(-) -- 2.17.0