On Fri, Feb 14, 2025 at 12:39:35PM -0500, Jim Quinlan wrote: > The HW team has decided to "tighten" some field definitions in the MDIO > packet format. Fortunately these two changes may be made in a backwards > compatible manner. > > The CMD field used to be 12 bits and now is one. This change is backwards > compatible because the field's starting bit position is unchanged and the > only commands we've used have values 0 and 1. > > The PORT field's width has been changed from four to five bits. When > written, the new bit is not contiguous with the other four. Fortunately, > this change is backwards compatible because we have never used anything > other than 0 for the port field's value. > > Signed-off-by: Jim Quinlan <james.quinlan@xxxxxxxxxxxx> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> - Mani > --- > drivers/pci/controller/pcie-brcmstb.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c > index 923ac1a03f85..cb897d4b2579 100644 > --- a/drivers/pci/controller/pcie-brcmstb.c > +++ b/drivers/pci/controller/pcie-brcmstb.c > @@ -175,8 +175,9 @@ > #define MDIO_PORT0 0x0 > #define MDIO_DATA_MASK 0x7fffffff > #define MDIO_PORT_MASK 0xf0000 > +#define MDIO_PORT_EXT_MASK 0x200000 > #define MDIO_REGAD_MASK 0xffff > -#define MDIO_CMD_MASK 0xfff00000 > +#define MDIO_CMD_MASK 0x00100000 > #define MDIO_CMD_READ 0x1 > #define MDIO_CMD_WRITE 0x0 > #define MDIO_DATA_DONE_MASK 0x80000000 > @@ -327,6 +328,7 @@ static u32 brcm_pcie_mdio_form_pkt(int port, int regad, int cmd) > { > u32 pkt = 0; > > + pkt |= FIELD_PREP(MDIO_PORT_EXT_MASK, port >> 4); > pkt |= FIELD_PREP(MDIO_PORT_MASK, port); > pkt |= FIELD_PREP(MDIO_REGAD_MASK, regad); > pkt |= FIELD_PREP(MDIO_CMD_MASK, cmd); > -- > 2.43.0 > -- மணிவண்ணன் சதாசிவம்