[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MN0PR12MB59535036A5EA7F7EE488FC56B7999@MN0PR12MB5953.namprd12.prod.outlook.com>
Date: Fri, 29 Jul 2022 12:16:39 +0000
From: "Pandey, Radhey Shyam" <radhey.shyam.pandey@....com>
To: Andrew Lunn <andrew@...n.ch>
CC: "michal.simek@...inx.com" <michal.simek@...inx.com>,
"nicolas.ferre@...rochip.com" <nicolas.ferre@...rochip.com>,
"claudiu.beznea@...rochip.com" <claudiu.beznea@...rochip.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"edumazet@...gle.com" <edumazet@...gle.com>,
"kuba@...nel.org" <kuba@...nel.org>,
"pabeni@...hat.com" <pabeni@...hat.com>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"ronak.jain@...inx.com" <ronak.jain@...inx.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"git@...inx.com" <git@...inx.com>, "git (AMD-Xilinx)" <git@....com>
Subject: RE: [PATCH net-next 2/2] net: macb: Add zynqmp SGMII dynamic
configuration support
> -----Original Message-----
> From: Pandey, Radhey Shyam <radhey.shyam.pandey@....com>
> Sent: Wednesday, July 27, 2022 12:18 AM
> To: Andrew Lunn <andrew@...n.ch>
> Cc: michal.simek@...inx.com; nicolas.ferre@...rochip.com;
> claudiu.beznea@...rochip.com; davem@...emloft.net;
> edumazet@...gle.com; kuba@...nel.org; pabeni@...hat.com;
> gregkh@...uxfoundation.org; ronak.jain@...inx.com; linux-arm-
> kernel@...ts.infradead.org; linux-kernel@...r.kernel.org;
> netdev@...r.kernel.org; git@...inx.com; git (AMD-Xilinx) <git@....com>
> Subject: RE: [PATCH net-next 2/2] net: macb: Add zynqmp SGMII dynamic
> configuration support
>
>
>
> > -----Original Message-----
> > From: Andrew Lunn <andrew@...n.ch>
> > Sent: Monday, July 25, 2022 10:41 PM
> > To: Pandey, Radhey Shyam <radhey.shyam.pandey@....com>
> > Cc: michal.simek@...inx.com; nicolas.ferre@...rochip.com;
> > claudiu.beznea@...rochip.com; davem@...emloft.net;
> > edumazet@...gle.com; kuba@...nel.org; pabeni@...hat.com;
> > gregkh@...uxfoundation.org; ronak.jain@...inx.com; linux-arm-
> > kernel@...ts.infradead.org; linux-kernel@...r.kernel.org;
> > netdev@...r.kernel.org; git@...inx.com; git (AMD-Xilinx) <git@....com>
> > Subject: Re: [PATCH net-next 2/2] net: macb: Add zynqmp SGMII dynamic
> > configuration support
> >
> > On Mon, Jul 25, 2022 at 02:34:51PM +0000, Pandey, Radhey Shyam wrote:
> > > > -----Original Message-----
> > > > From: Andrew Lunn <andrew@...n.ch>
> > > > Sent: Sunday, July 24, 2022 10:24 PM
> > > > To: Pandey, Radhey Shyam <radhey.shyam.pandey@....com>
> > > > Cc: michal.simek@...inx.com; nicolas.ferre@...rochip.com;
> > > > claudiu.beznea@...rochip.com; davem@...emloft.net;
> > > > edumazet@...gle.com; kuba@...nel.org; pabeni@...hat.com;
> > > > gregkh@...uxfoundation.org; ronak.jain@...inx.com; linux-arm-
> > > > kernel@...ts.infradead.org; linux-kernel@...r.kernel.org;
> > > > netdev@...r.kernel.org; git@...inx.com; git (AMD-Xilinx)
> > > > <git@....com>
> > > > Subject: Re: [PATCH net-next 2/2] net: macb: Add zynqmp SGMII
> > > > dynamic configuration support
> > > >
> > > > > + ret = of_property_read_u32_array(pdev-
> >dev.of_node,
> > > > "power-domains",
> > > > > + pm_info,
> > > > ARRAY_SIZE(pm_info));
> > > > > + if (ret < 0) {
> > > > > + dev_err(&pdev->dev, "Failed to read power
> > > > management information\n");
> > > > > + return ret;
> > > > > + }
> > > > > + ret = zynqmp_pm_set_gem_config(pm_info[1],
> > > > GEM_CONFIG_FIXED, 0);
> > > > > + if (ret < 0)
> > > > > + return ret;
> > > > > +
> > > >
> > > > Documentation/devicetree/bindings/net/cdns,macb.yaml says:
> > > >
> > > > power-domains:
> > > > maxItems: 1
> > > >
> > > > Yet you are using pm_info[1]?
> > >
> > > >From power-domain description - It's a phandle and PM domain
> > > specifier as defined by bindings of the power controller specified
> > > by phandle.
> > >
> > > I assume the numbers of cells is specified by "#power-domain-cells":
> > > Power-domain-cell is set to 1 in this case.
> > >
> > > arch/arm64/boot/dts/xilinx/zynqmp.dtsi
> > > #power-domain-cells = <1>;
> > > power-domains = <&zynqmp_firmware PD_ETH_0>;
> > >
> > > Please let me know your thoughts.
> >
> > Ah, so you ignore the phandle value, and just use the PD_ETH_0?
> >
> > How robust is this? What if somebody specified a different power domain?
>
> Some background - init_reset_optional() fn is implemented for three
> platforms i.e., zynqmp, versal, MPFS.
>
> zynqmp_pm_set_gem_config API expect first argument as GEM node id so,
> power-domain DT property is passed to get node ID.
>
> However, power-domain property is read only if underlying firmware
> supports configuration of GEM secure space. It's only true for zynqmp SGMII
> case and for zynqmp power domain is fixed.
> In addition to it there is an error handling in power-domain property parsing.
> Hope this answers the question.
Please let me know the implementation looks fine or needs any modification?
Powered by blists - more mailing lists