Re: [PATCH v2] PCI: qcom: Make use of QCOM_PCIE_LINK_SPEED_TO_BW() macro for encoding link speed

From: Konrad Dybcio
Date: Wed Sep 27 2023 - 11:07:05 EST


On 27.09.2023 16:57, Manivannan Sadhasivam wrote:
> Instead of hardcoding the link speed in MBps, let's make use of the
> existing QCOM_PCIE_LINK_SPEED_TO_BW() macro that does the encoding of the
> link speed for us.
>
> This eliminates the need for a switch case in qcom_pcie_icc_update() and
> also works for future Gen speeds without any code modifications.
>
> Suggested-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
> ---
>
> Changes in v2:
>
> - Switched to QCOM_PCIE_LINK_SPEED_TO_BW() macro as per Bjorn's suggestion
> https://lore.kernel.org/linux-pci/20230924160713.217086-1-manivannan.sadhasivam@xxxxxxxxxx/
>
> drivers/pci/controller/dwc/pcie-qcom.c | 24 ++++++------------------
> 1 file changed, 6 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/pci/controller/dwc/pcie-qcom.c b/drivers/pci/controller/dwc/pcie-qcom.c
> index 297442c969b6..dce80d6dc88f 100644
> --- a/drivers/pci/controller/dwc/pcie-qcom.c
> +++ b/drivers/pci/controller/dwc/pcie-qcom.c
> @@ -148,6 +148,9 @@
>
> #define QCOM_PCIE_CRC8_POLYNOMIAL (BIT(2) | BIT(1) | BIT(0))
>
> +#define QCOM_PCIE_LINK_SPEED_TO_BW(speed) \
> + MBps_to_icc(PCIE_SPEED2MBS_ENC(pcie_link_speed[speed]) / BITS_PER_BYTE)
Mbps_to_icc (lowercase b) is precisely that

Konrad