On Fri, Apr 12, 2019 at 9:12 AM Lucas Stach <l.stach@xxxxxxxxxxxxxx> wrote: > > Am Sonntag, den 31.03.2019, 21:25 -0700 schrieb Andrey Smirnov: > > Simplify pcie_phy_poll_ack() by incorporating shifting into constant > > definition and convert the code to use 'bool'. No functional change > > intended. > > > > > Cc: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx> > > > Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > > > Cc: Fabio Estevam <fabio.estevam@xxxxxxx> > > > Cc: Chris Healy <cphealy@xxxxxxxxx> > > > Cc: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > > > Cc: Leonard Crestez <leonard.crestez@xxxxxxx> > > > Cc: "A.s. Dong" <aisheng.dong@xxxxxxx> > > > Cc: Richard Zhu <hongxing.zhu@xxxxxxx> > > Cc: linux-imx@xxxxxxx > > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > > Cc: linux-kernel@xxxxxxxxxxxxxxx > > Cc: linux-pci@xxxxxxxxxxxxxxx > > > Signed-off-by: Andrey Smirnov <andrew.smirnov@xxxxxxxxx> > > --- > > drivers/pci/controller/dwc/pci-imx6.c | 10 +++++----- > > 1 file changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c > > index a49e5e491e12..7c3ffb751002 100644 > > --- a/drivers/pci/controller/dwc/pci-imx6.c > > +++ b/drivers/pci/controller/dwc/pci-imx6.c > > @@ -112,7 +112,7 @@ struct imx6_pcie { > > > #define PCIE_PHY_CTRL_RD BIT(19) > > > > #define PCIE_PHY_STAT (PL_OFFSET + 0x110) > > -#define PCIE_PHY_STAT_ACK_LOC 16 > > > +#define PCIE_PHY_STAT_ACK BIT(16) > > > > > #define PCIE_LINK_WIDTH_SPEED_CONTROL 0x80C > > > > @@ -151,16 +151,16 @@ struct imx6_pcie { > > > #define PHY_RX_OVRD_IN_LO_RX_DATA_EN BIT(5) > > > #define PHY_RX_OVRD_IN_LO_RX_PLL_EN BIT(3) > > > > -static int pcie_phy_poll_ack(struct imx6_pcie *imx6_pcie, int exp_val) > > +static int pcie_phy_poll_ack(struct imx6_pcie *imx6_pcie, bool exp_val) > > This looks like only going half the way to me. The parameter type is > changed to bool, but the callers still use 0 and 1 directly. If we use > bool here the callers should be changed to true/false. > OK, will change in next version. > > { > > struct dw_pcie *pci = imx6_pcie->pci; > > - u32 val; > > + bool val; > > u32 max_iterations = 10; > > u32 wait_counter = 0; > > > > do { > > - val = dw_pcie_readl_dbi(pci, PCIE_PHY_STAT); > > - val = (val >> PCIE_PHY_STAT_ACK_LOC) & 0x1; > > + val = dw_pcie_readl_dbi(pci, PCIE_PHY_STAT) & > > + PCIE_PHY_STAT_ACK; > > I think this needs to be > val = !!(dw_pcie_readl_dbi(pci, PCIE_PHY_STAT) & PCIE_PHY_STAT_ACK); > as the ACK bit isn't shifted down into bit position 0 anymore. > That should already be taken care of by conversion to bool/_Bool(see "Using bool" in Documentation/process/coding-style.rst) and was one of the reasons I converted "val" to that type. Thanks, Andrey Smirnov