Scott Wood [off-list ref] wrote:
quoted
+ void __iomem *fec_fun_code;
+ void __iomem *fec_r_hash;
+ void __iomem *fec_x_cntrl;
+ void __iomem *fec_dma_control;
+};
Why void and not the specific type?
Ok, I will fix it for using u32 __iomem *.
quoted
static void set_promiscuous_mode(struct net_device *dev)
{
struct fs_enet_private *fep = netdev_priv(dev);
- fec_t __iomem *fecp = fep->fec.fecp;
+ struct reg_tbl *fecp = fep->fec.rtbl;
Hmm, having something called "fecp" that is a different type than other
"fecp"s could be confusing.
Ok, I will use 'regp' instead of 'fecp' then.
quoted
@@ -134,6 +143,20 @@ static int __devinit fs_enet_mdio_probe(struct of_device *ofdev,
if (!fec->fecp)
goto out_fec;
+ if (of_device_is_compatible(ofdev->node, "fsl,mpc5121-fec-mdio")) {
You can put a data pointer in the of_platform match struct, instead of
re-checking the compatible.
.data pointer in 'fs_enet_mdio_fec_match' is already used for
mpc5xxx_get_bus_frequency(). Setting .data to some sort of FEC ID in
match struct for "fsl,pq1-fec-mdio" would be confusing to.
Would a simple
if (!strncmp(match->compatible, "fsl,mpc5121-fec-mdio",
sizeof(match->compatible))) {
suffice here?
Thanks!
Anatolij