This patch adds support for OPP to vote for the performance state of RPMH power domain based upon GEN speed it PCIe got enumerated. Before link up PCIe driver will vote for the maximum performance state. Add API dev_pm_opp_find_level_floor to find To find the highest opp for a device based on the level. Changes from v4: - Added a separate patch for returning error from the qcom_pcie_upadate and moved opp update logic to icc_update and used a bool variable to update the opp. - Addressed comments made by pavan. changes from v3: - Removing the opp vote on suspend when the link is not up and link is not up and add debug prints as suggested by pavan. - Added dev_pm_opp_find_level_floor API to find the highest opp to vote. changes from v2: - Instead of using the freq based opp search use level based as suggested by Dmitry Baryshkov. Changes from v1: - Addressed comments from Krzysztof Kozlowski. - Added the rpmhpd_opp_xxx phandle as suggested by pavan. - Added dev_pm_opp_set_opp API call which was missed on previous patch. Krishna chaitanya chundru (5): dt-bindings: pci: qcom: Add opp table arm64: dts: qcom: sm8450: Add opp table support to PCIe opp: Add dev_pm_opp_find_level_floor() PCI: qcom: Return error from 'qcom_pcie_icc_update' PCI: qcom: Add OPP support to scale performance state of power domain .../devicetree/bindings/pci/qcom,pcie.yaml | 4 ++ arch/arm64/boot/dts/qcom/sm8450.dtsi | 47 ++++++++++++++++ drivers/opp/core.c | 25 +++++++++ drivers/pci/controller/dwc/pcie-qcom.c | 63 ++++++++++++++++++---- include/linux/pm_opp.h | 9 ++++ 5 files changed, 137 insertions(+), 11 deletions(-) -- 2.7.4