net: sh_eth: add value of ether_link pin in platform_data
Subsystems (3)
PATCH 1/1 net: sh_eth: add value of ether_link pin in platform_data
The method of ETHER_LINK pin is board dependence.
This patch adding paramters are:
- no_ether_link : If set to 1, do not use ETHER_LINK
- ether_link_active_low : If set to 1, ETHER_LINK is active low.
Signed-off-by Yoshihiro Shimoda <[email protected]>
--- arch/sh/include/asm/sh_eth.h | 3 +++ drivers/net/sh_eth.c | 6 +++++- drivers/net/sh_eth.h | 3 +++ 3 files changed, 11 insertions(+), 1 deletions(-)
arch/sh/include/asm/sh_eth.h +3 -0
@@ -6,6 +6,9 @@ enum {EDMAC_LITTLE_ENDIAN, EDMAC_BIG_ENDIAN};struct sh_eth_plat_data {int phy;int edmac_endian; + +unsigned no_ether_link:1 ; +unsigned ether_link_active_low:1 ; };#endif
drivers/net/sh_eth.c +5 -1
@@ -772,13 +772,15 @@ static void sh_eth_error(struct net_device *ndev, int intr_status) mdp->stats.tx_carrier_errors++;if (felic_stat &ECSR_LCHNG ) {/* Link Changed */ -if (mdp->cd->no_psr) { +if (mdp->cd->no_psr || mdp->no_ether_link) {if (mdp->link =PHY_DOWN ) link_stat =0 ;else link_stat =PHY_ST_LINK ; }else { link_stat = (ctrl_inl (ioaddr +PSR )); +if (mdp->ether_link_active_low) + link_stat = ~link_stat; }if (!(link_stat &PHY_ST_LINK )) {/* Link Down : disable tx and rx */
@@ -1410,6 +1412,8 @@ static int sh_eth_drv_probe(struct platform_device *pdev) mdp->phy_id = pd->phy;/* EDMAC endian */ mdp->edmac_endian = pd->edmac_endian; + mdp->no_ether_link = pd->no_ether_link; + mdp->ether_link_active_low = pd->ether_link_active_low;/* set cpu data */ mdp->cd = &sh_eth_my_cpu_data;
drivers/net/sh_eth.h +3 -0
@@ -729,6 +729,9 @@ struct sh_eth_private {char post_rx;/* POST receive */ char post_fw;/* POST forward */ struct net_device_stats tsu_stats;/* TSU forward status */ + + unsigned no_ether_link:1; + unsigned ether_link_active_low:1; };static inline void sh_eth_soft_swap (char *src,int len)
Signature · 1 line
1.5.5
From: Yoshihiro Shimoda <[email protected]>
Date: Fri, 28 Aug 2009 18:25:03 +0900
Quoted 6 lines
The method of
ETHER_LINKpin is board dependence.
This patch adding paramters are:
-no_ether_link: If set to 1, do not useETHER_LINK
-ether_link_active_low: If set to 1,ETHER_LINKis active low.Signed-off-by Yoshihiro Shimoda <[email protected]>
Applied to net-next-2.6, thanks.