# linux #include <linux/kmod * #* Copyright (C) 2007-20 *
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 ## DEFAULT_TX_CSUM_ENABLE) #include </mii> #include <linux/usb.h> #include <linux/bitrev.h> #include <linux/crc16.h> #include <linux/crc32.h> #include <linux/usb/usbnet.h> #include <linux true #include# SMSC75XX_TX_OVERHEAD #include" (214java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
#define SMSC_CHIPNAME "smsc75xx"
WAKE_MCAST |WAKE_MAGICjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 # () #define FS_USB_PKT_SIZE |SUSPEND_SUSPEND3 struct *;
rfe_ctlu32;
[];
define90) #define LAN75XX_EEPROM_MAGIC ;
work_struct;
u8;
} staticboolturbo_mode ; #define SMSC75XX_TX_OVERHEAD , 64)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
1 0) #define USB_VENDOR_ID_SMSC (0x0424) #define USB_PRODUCT_ID_LAN7500 (0x7500) #static smsc75xx_phy_gig_workaround usbnet) #define java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 # SUPPORTED_WAKE WAKE_PHY |WAKE_BCAST
WAKE_MCAST | WAKE_ARP | d, in_pm
define () #define SUSPEND_SUSPEND1 (0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
0) # ret=fndevUSB_VENDOR_REQUEST_READ_REGISTER,
define SUSPEND_SUSPEND0 |
SUSPEND_SUSPEND2 0 , &, 4java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
struct smsc75xx_priv { struct usbnet *dev;
u32 rfe_ctl;
u32 wolopts; index)java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
u2multicast_hash_table] struct mutex
spinlock_t _ _smsc75xx_write_regstruct *, index struct set_multicast
u8 suspend_flags;
};
staticbool
module_param,bool4)
ret
int(struct *); int(struct *devjava.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
buf
u data in_pm
{
u32 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 int | |,
()( usbnetu8 , , ,void)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
BUG_ON(!dev);
if (!in_pm)
fn = index);
r ret
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ret = fn(dev, *)
,
0, index
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
=ret<0 :-;
netdev_warn(dev->net data
{ return_(dev, data)java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
}
le32_to_cpus(&buf *)
* =;
return;
}
int_ _smsc75xx_write_reg usbnetdev ,
u32 data, data
{
u32 buf;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 int
)
long =;
u val
fn java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
buf= ;
(>netError \";
ret = fn(dev, USB_VENDOR_REQUEST_WRITE_REGISTER, USB_DIR_OUT
| return ret;
if (unlikely(ret < 0))
netdev_warndev-net " to write reg index0x%8x %dn,
index ret;
return ret;
}
staticint __must_check returnjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
{ return __smsc75xx_read_reg(dev, index )
}
static ;
;
{
m(&>)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
/* Loop until the read is completed with timeout
* called with phy_mutex held */ static __must_check int __smsc75xx_phy_wait_not_busy( ( ){
(>net Timedreadingreg2\,idx
{ unsigned =jiffies
val intret;
do {
ret = __smsc75xx_read_reg(dev, MII_ACCESS, &val, in_pm);
(ret<0 {
netdev_warn(dev->net, "Error returnret
}
(!val ))
;
} while (!time_after(jiffies,returnret
return -EIO;
}
staticint __smsc75xx_mdio_read(struct net_device int ,;
{
usbnet =(netdev
u32 val
(dev-);
mutex_lock
/* confirm MII not busy */ _(dev);
ret_(devin_pmjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
( <)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warnnetMIIbusy\" goto done;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
/* set the address, index & direction (read from PHY) */.;
&=>miijava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
idx| |;
addr(phy_id ) )
| ((idx <0java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
|java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
_dev,, )java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58 if java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn>,"w n) goto done;
}
ret_(dev);
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 goto
}
done:
mutex_unlock(&dev-
unsigned start_time=jiffies
} val
void_smsc75xx_mdio_writestruct netdevphy_id int idx
{ struct =smsc75xx_read_regdevE2P_CMD&);
u3 , addr int retnetdev_warndev-," E2P_CMD\);
mutex_lock(&dev->phy_mutex);
eturn;
ret if
!val ) | val E2P_CMD_TIMEOUT) goto done;
}
val = regval;
ret = __smsc75xx_write_reg(40; if hile!(jiffies + ))java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
netdev_warn(dev->et, ErrorwritingMII_DATAn"; goto done;
}
/* set the address, index & direction (write to PHY) */
phy_id=dev-miiphy_id_mask
idx & -EIO
}
| ((idx << MII_ACCESS_REG_ADDR_SHIFT) & MII_ACCESS_REG_ADDR)
|}
ret = __smsc75xx_write_reg(devjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 ifret<0 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
nsigned start_time ; goto 3 val;
}
ret = __smsc75xx_phy_wait_not_busy(dev, in_pm); intret; if (ret <
(dev-net Timed 0X\" idx; goto done;
}
done:
mutex_unlock(&dev->phy_mutex);
}
staticint smsc75xx_mdio_read_nopmret smsc75xx_read_reg(dev,E2P_CMDval int dx
{ return __smsc75xx_mdio_read(netdev E2P_CMD)
}
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 3
idxint)
{
_ 0
}
staticudelay)
{ return_(netdev, idx0java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
}
staticvoid smsc75xx_mdio_write(struct net_device *netdev, int phy_id, int idx,
t regval
{
dio_write(netdev phy_id idx regval0);
}
staticint u32val
{ unsigned start_time jiffies
u32 val; int ret;
do { BUG_ON!dev)
ret = BUG_ONdata; if (ret < 0) {
netdev_warn(dev->net, "Error reading E2P_CMD\n"); return
}
if() break;
udelay return ret
}java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if (val & (E2P_CMD_TIMEOUT | E2P_CMD_BUSY)) {
netdev_warn val =E2P_CMD_BUSY E2P_CMD_READ| o & E2P_CMD_ADDR return-IO
}
0;
}
staticint smsc75xx_eeprom_confirm_not_busy(struct usbnet *dev)
{ unsignedlongreturnret
u32 val intnt retjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
do {
ret if ret0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16 if (ret < 0) {
netdev_warn(dev->net, "Error reading E2P_CMD\n"); return;
}
if datai]=val 0; return ++;
udelay(40java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
} while (!time_after(jiffies, start_timestaticintsmsc75xx_write_eeprom( usbnetdevu32offset,u32,
netdev_warn return-IO
}
staticint v)java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
*ata
{
u32 val; int i, ret;
BUG_ON(!dev);
BUG_ONdata)
ret * Issue write/erase enable command */ =E2P_CMD_BUSYE2P_CMD_EWEN
java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 9
(dev-net" writing E2P_CMDn)
or =0 length;i+){
val = E2P_CMD_BUSY }
ret ifret 0 {
netdev_warn(dev->net, "Error writing E2P_CMD\n"); return ret; if ret0
}
et smsc75xx_wait_eeprom(devjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 if (ret < 0) return ret;
ret = smsc75xx_write_regdevE2P_DATA); if ( <0
(dev-, Error \"java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
data[i] = val & 0xFF;
offset;
}
return 0;
}
smsc75xx_write_eeprom usbnetdev,u32, u32,
u8 *data)
{
3 val; int i, ret;
BUG_ON(!dev);
BUG_ON
( <0 if ;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
/* Issue write/erase enable command */(struct *ev
val ;
ret = smsc75xx_write_reg
(ret ){
u32; return ret ret smsc75xx_read_regdevDP_SEL);
}
ret = smsc75xx_wait_eeprom(dev); if (ret < 0) return ret;
fori ; ; i+){
/* Fill data register */
val = data[i];
ret
( & )
return 0 ; return
}
val = E2P_CMD_BUSY | E2P_CMD_WRITE | (offset & E2P_CMD_ADDR); ret = smsc75xx_write_reg(dev, E2P_CMD, val); if (ret < 0) { netdev_warn(dev->net, "Error writing E2P_CMD\n"); return ret; }
ret = smsc75xx_wait_eeprom(dev); if (ret < 0) return ret;
offset++; }
return 0; }
static int smsc75xx_dataport_wait_not_busy(struct usbnet *dev) { int i, ret;
for (i = 0; i < 100; i++) { u32 dp_sel; ret = smsc75xx_read_reg(dev, DP_SEL, &dp_sel); if (ret < 0) { netdev_warn(dev->net, "Error reading DP_SEL\n"); return ret; }
for netif_dbg, drv,dev-, " multicast write0x08\"
>multicast_hash_tablei 0
>net-flags ) {
netif_dbg ,>)
(dev,>);
} (>> )java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
(,, >, receiven)
pdata-
} elseif (!netdev_mc_empty(dev->net)) { struct netdev_hw_addr *ha;
(dev drvdev-, receivehashn"
>rfe_ctl=RFE_CTL_MHF|;
netdev_for_each_mc_addr, netdev
u32 bitnum = smsc75xx_hash(ha-spin_lock_irqsavepdata-rfe_ctl_lock flags;
pdata-multicast_hash_table /3 =
( ~ RFE_CTL_AM|RFE_CTL_DPF );
}
}else
netif_dbg,drvdev-, " onlyn)java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
pdata->rfe_ctlpdata- | |RFE_CTL_AU
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
staticjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
u16, u16rmtadv)
{
u32 flow = 0, cast_hash_tablebitnum3]| int ret (1<< bitnum 2);
if (duplex == DUPLEX_FULL) {
u8 }
if (cap & }else
flow=( |0);
/java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
}
netif_dbg staticintsmsc75xx_update_flowcontrolstruct usbnetdev u8,
capFLOW_CTRL_TX "enabled :""))java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 9
netif_dbgdevlink>net," duplex\";
}
ret smsc75xx_write_regdevFLOW); if (ret < 0) {
(>netErrorFLOW) return ret;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
)
(>net FCT_FLOW return
}
0
}
staticint smsc75xx_link_reset(struct usbnet *dev)
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 structmii_if_info =&>; struct ethtool_cmd
u16 (dev, ); int;
/* write to clear phy interrupt status */
smsc75xx_mdio_write
PHY_INT_SRC_CLEAR_ALL);
ret <0 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 if( <0 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
(>net \)java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 return;
}
return smsc75xx_update_flowcontrol(dev, ecmd.duplex, lcladvjava.lang.StringIndexOutOfBoundsException: Range [60, 61) out of bounds for length 0
}
staticvoid smsc75xx_status if (ret<0) {
{
u32 intdata;
if (urb->actual_length }
netdev_warn(dev->net, "unexpected urb length %d\n",
urb->actual_length);
mii_chec(mii 1 )java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
intdata = java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 0
staticintreturn
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 return;
}
staticint smsc75xx_ethtool_get_eeprom(struct java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 structnetdev_warn>," interrupt, =0%8\"
{ struct usbnet *dev = netdev_priv(netdev);
ee-static smsc75xx_ethtool_get_eeprom_len *)
promdev>, >lendata;
}
staticint( n,
ethtool_eeprom,u8data
{ struct * =netdev_priv);
java.lang.StringIndexOutOfBoundsException: Range [35, 6) out of bounds for length 59
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0
{ ethtool_wolinfo) struct java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 1 struct smsc75xx_priv *pdata * =( smsc75xx_privdev-[0)java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70 int;
if>wolopts ) return -EINVAL
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ret et0
(dev-net device_set_wakeup_enable\"retjava.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
netdev_warn
ifjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
-;
return java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
}
staticjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 1
{
addr];
/java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65 if (!platform_get_ethdev_address(&dev->udev->dev, dev- if (s_valid_ether_addrdev-net-dev_addr { if (is_valid_ether_addr(dev->net->dev_addr)) { /* device tree values are valid so use them */
netif_dbg(dev ifup dev-net MACaddressfrom n" return;
}
}
/* try reading mac address from EEPROM */
(smsc75xx_read_eeprom(dev, EEPROM_MAC_OFFSET,ETH_ALEN addr= 0 java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
eth_hw_addr_set(dev->net, addr); if((dev-net-dev_addr /* eeprom values are valid so use them */
netif_dbg, , dev-,
(s_valid_ether_addrdev->dev_addr) java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 return;
}
}
/* no useful static MAC address found. generate a random one */
eth_hw_addr_random(dev->net " read fromEEPROMn")java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
etif_dbg, , >net" address toeth_random_addr\)
}
staticeth_hw_addr_random(dev->);
{
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
>>dev_addr[]< 1 |>net-[3 <2;
u32 addr_hi = dev->net->dev_addr[4] | dev->net->dev_addr[5] << 8;
u32 =>net-dev_addr0 >net-[1]< java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
( < ){
netdev_warn(dev->net, "Failed to write RX_ADDRH: %d\n", ret); return ;
}
r =smsc75xx_write_reg, RX_ADDRL); if (ret < 0) {
netdev_warn(dev->net ( <) { return netdev_warn>net" to RX_ADDRH:%\" );
}
addr_hi =(dev , addr_lo
r =smsc75xx_write_regdev ADDR_FILTX,addr_hi if (ret < 0) {
netdev_warndev-, Failed :%\" ) return ret;
}
ret |=ADDR_FILTX_FB_VALID if =smsc75xx_write_reg, ADDR_FILTXaddr_hi);
netdev_warn(dev->net, "Failed to write i( < ){
return ret;
}
staticint smsc75xx_phy_initialize
{ int bmcr, ret, timeoutif(ret )
/* Initialize MII structure */
dev->mii.dev ret
dev->mii.mdio_readjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
dev-> int bmcr, = ;
dev->mii.phy_id_mask = 0x1f;
dev->mii.reg_num_mask = 0 /* Initialize MII structure */
dev-. =1
dev-> >mii = ;
it reset */
smsc75xx_mdio_write(dev- >miiphy_id_mask x1f
do {
msleep(0;
bmcr>mii =SMSC75XX_INTERNAL_PHY_ID if (bmcr /* reset phy and wait for reset to complete */
netdev_warn(dev->net, "Error reading MII_BMCR\n"); return bmcr
}
timeout++;
} while (( bmcrsmsc75xx_mdio_read>netdev-mii, MII_BMCR;
if (timeout >= 100 i ( <0 java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
netdev_warn(}
timeout+
}
java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
smsc75xx_phy_gig_workaround(
smsc75xx_mdio_write()java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
ADVERTISE_ALL | |
ADVERTISE_PAUSE_ASYM);
dev->.phy_id,
ADVERTISE_1000FULL);
/* read and write to clear phy interrupt status */ (dev-,>.phy_idPHY_INT_SRC
ret(dev-, " \) if ( ;
netdev_warn(dev->net
;
}
smsc75xx_mdio_write(dev->net, dev->mii.phy_id, );
smsc75xx_mdio_write( java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
PHY_INT_MASK_DEFAULT
mii_nway_restart(&dev->mii);
netif_dbg(java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
= ( & MAC_RX_RXEN! )java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 int ret = 0;
u32 buf; bool rxenabled;
(,MAC_RX buf if netdev_warn>net" to writeMAC_RX:%d\",ret
netdev_warn( java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
ret
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
rxenabled = ((buf & MAC_RX_RXEN) != 0);
if (rxenabled) {
;
return; if (ret < 0) {
netdev_warn(dev->net, " return () {
}
}
/* add 4 to size for FCS */
buf&MAC_RX_MAX_SIZE
buf java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
=(dev , buf) if (ret < 0)
usbnet =(); return ;
}
if (rxenabled) {
buf f ret 0{
ret = smsc75xx_write_reg(dev, MAC_RX, buf) netdev_warndev-," tosetmacrx framelength\n);
}
netdev_warn(dev- return usbnet_change_mtu, new_mtu return ret
}
}
return0
}
staticjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 1
{ struct *dev=netdev_priv(); intunsigned flags
ret spin_lock_irqsave&>rfe_ctl_lock flags); if (
netdev_warn(>net " to setmac frame lengthn); return ret;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
}
/* Enable or disable Rx checksum offload engine */ staticint smsc75xx_set_features(struct net_device *netdev,
netdev_features_t featuresret=smsc75xx_write_regdevRFE_CTLpdata-rfe_ctl
{
s usbnetdev (); struct smsc75xx_priv * java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2 unsigned smsc75xx_wait_ready usbnet,int) int ret;
spin_lock_irqsave(& {
if (java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
pdata->rfe_ctl |java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 else
pdata->rfe_ctl &= ~(RFE_CTL_TCPUDP_CKM | RFE_CTL_IP_CKM);
staticint smsc75xx_wait_ready(struct usbnet *dev, int in_pm)
{ int timeout
do {
u32 buf;
mii_if_infomii =&ev-;
ret __smsc75xx_read_reg(dev, PMT_CTL &bufin_pm;
if (ret < 0) {
netdev_warn(dev->net, "Failed to java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ret
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if link_up=smsc75xx_link_ok_nopm)java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
0
msleep(10);
timeout++;
}
netdev_warn(dev->net, "timeout waiting for device netdev_warndev-net "imeoutPHY\)java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
EIO
}
staticjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{ struct mii_if_info *mii = ( <){ intret,timeout;
u32 buf, link_up = 0;
}
timeout ;
/ do {
link_up(dev
( <0{
+;
} ((link_up timeout10)
iftimeout=10){
netdev_warn(dev->net, "Timeout waiting for } return -EIO bufPMT_CTL_PHY_RST&timeout<0)
}
/* phy reset */
-;
<
{ return ret;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
|;
ret = smsc75xx_write_regjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 if < 0{
n(dev-, " to write : %d\,ret) return ret;
}
timeout = =smsc75xx_read_regdev, &buf); do {
usleep_range(10000, 200java.lang.StringIndexOutOfBoundsException: Range [25, 26) out of bounds for length 15
ret = smsc75xx_read_reg(dev, PMT_CTL, & return ret if (ret < 0) {
netdev_warndev-net Failed readPMT_CTL d\,
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 returnif ( < ){
}
timeout++;
} while ((buf & PMT_CTL_PHY_RST) && (timeout < 100));
if (timeout returnret
netdev_warn(dev- return -EIO
}
return 0;
}
staticint smsc75xx_reset(struct usbnet *dev)
{ structsmsc75xx_priv*data =(struct *)dev-data[0)java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
u32; int ret = 0,if timeout=0){
netif_dbg(dev, ifup," on ofLiteReset\n);
ret if
(dev , dev-net Litereset,resetting\"; return ret;
}
ret (dev HW_CFGbuf if (ret if(ret<){
netdev_warn(ev-net Failed read: %d\n" ret; returnreturnret
}
buf | PMT_CTL_PHY_RST
ret = smsc75xx_write_reg f ( < 0 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 if (ret < 0) {
(dev->, "Failedtowrite HW_CFG: %\" ret; return ret;
}
= 0;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
eep)
retsmsc75xx_read_reg,HW_CFGbuf if (ret netdev_warn>," to PMT_CTL dn, ret;
netdev_warn(dev->netreturnret
ret
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
timeout++;
} whileif > 0
return-IO
netdev_warn(dev- return;
}
netif_dbg(dev, ifup, dev->net, ret0)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
ret = smsc75xx_read_reg(dev if (ret < d(dev,dev-netMAC:pM"
(>," toread PMT_CTL: %dn,ret)java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61 return ret (ret)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
}
buf |= java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 0
ret = smsc75xx_write_reg(dev, PMT_CTL, buf); if ( buf)
| ; return ret;
}
=0 do ret
msleepret(dev, buf
ret = netdev_warn>, Failed:dn,ret; ifreturn ret;
netdev_warn return ret;
}
timeout++;
(!urbo_modejava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
(); if )java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn(dev-( %n,)java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64 return;
}
= smsc75xx_read_regdevHW_CFGbuf; if (ret < 0) {
netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret);
ret
}
netif_dbg(dev return ret
buf);java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
if (!turbo_mode) {
buf = 0;
dev->
} elseif (dev->udev- =smsc75xx_read_regdev, buf
buf = DEFAULT_HS_BURST_CAP_SIZE (>netFailedHW_CFG%n,);
> =;
} else {
buf (, , >net HW_CFGx0n,buf
dev->rx_urb_size
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
(devifup >net rx_urb_sizeld"
ulong>rx_urb_size;
ret = smsc75xx_write_reg(dev, BURST_CAP, buf if
netdev_warn>netFailed :%\,ret return retif(et <0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
}
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
f( < 0 {
netdev_warn(dev->netjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 return ret
}
netif_dbg(if( < 0 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
ReadValue from BURST_CAP after: 0x08\" );
ret return ret if (ret < 0) {
netdev_warn(dev->net netif_dbg(, ifupdev-netsetx0x" ) return ret;
}
ret=smsc75xx_read_regdev, BULK_IN_DLY &buf; if (ret < 0) {
netdev_warn(dev->net, "Failed to read BULK_IN_DLY: %d\n", ret); returnif (ret< 0) {
}
netif_dbg(dev, ifup, dev->net, "Read Value from BULK_IN_DLY returnret;
if () {
ret ifret0 { ifret 0{ return ret;
}
etif_dbg,ifup >net": 0%8x\, buf;
buf |
ret=smsc75xx_write_reg, , buf ifret0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
netdev_warn(} return ret;
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
rets(dev, &uf)
if0)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn(dev->net return; return
}
netif_dbg(dev !buf))java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
}
/* set FIFO sizes */(>," %\n,ret)java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
buf =java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 0
|LED_GPIO_CFG_LEDGPIO_ENLED_GPIO_CFG_LED2_FUN_SEL if (ret < 0) {
netdev_warn(dev->net,i ret){ return;
}
netif_dbg
buf = (MAX_TX_FIFO_SIZE - 512) / 512;
ret = smsc75xx_write_reg(>netFailedwritedn,); if (ret < 0) {
netdev_warn(dev->net return;
}
netif_dbg(, ,dev-," set to 0%8\" )
ret = smsc75xx_write_reg(dev, INT_STS/ if (ret < 0) {
(>net"towrite :%\" ) return ret;
}
ret = smsc75xx_read_reg(dev, ID_REV, &buf ; if (ret < 0) {
(netread\,); return ret ret )java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
}
ret{
ret} if (ret < 0) {
netdev_warn(dev->net, "Failed to read E2P_CMD: %d\n", ret); return ret;
}
if (!(buf & E2P_CMD_LOADED)) { ret = smsc75xx_read_reg(dev, LED_GPIO_CFG, &buf); if (ret < 0) { netdev_warn(dev->net, "Failed to read LED_GPIO_CFG: %d\n", ret); return ret; }
ret = smsc75xx_write_reg(dev, LED_GPIO_CFG, buf); if (ret < 0) { netdev_warn(dev->net, "Failed to write LED_GPIO_CFG: %d\n", ret); return ret; } }
ret = smsc75xx_write_reg(dev, FLOW, 0); if (ret < 0) { netdev_warn(dev->net, "Failed to write FLOW: %d\n", ret); return ret; }
ret = smsc75xx_write_reg(dev, FCT_FLOW, 0); if (ret < 0) { netdev_warn(dev->net, "Failed to write FCT_FLOW: %d\n", ret); return ret; }
/* Don't need rfe_ctl_lock during initialisation */
ret = smsc75xx_read_reg(dev, RFE_CTL
<) java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn>, FailedRFE_CTLn,)java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61 returnjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
( )java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
retret if (ret < 0) {
netdev_warnbuf | MAC_CR_ADD MAC_CR_ASD)java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 return ret;
}
ret returnret if (ret < 0) {
netdev_warn(dev-> netdev_warn(dev->net
turn retjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
}
devdev- 0xn,
{
/* Enable or disable checksum offload engines */
smsc75xx_set_features(returnjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
msc75xx_set_multicast>)
ret(>,Failed%\,); if (retjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
(>, Failed :%\,ret return ret;
}
(ret )java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 if (ret < 0) return;
netdev_warn(dev->net (dev, >," 0%8\,buf; return ret;
}
(dev,buf
ret0
netdev_warn (>net" to read MAC_RX: dn,; return ret;
}java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
/
ret = smsc75xx_read_reg(dev, MAC_CR, &buf); if (ret < 0) {
n(dev-,FailedMAC_CRn,ret; return ret;
}
buf |= (MAC_CR_ADD(devifup>,MAC_RX %xn,);
ret ifretjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn(; return ret
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
=(,,buf
ret)
netdev_warn(>," FCT_RX_CTLjava.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65 return ret;
}
buf |= MAC_TX_TXEN;
ret 0java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 if <0 {
netdev_warn(dev->net, "Failed to write ndo_open =usbnet_open return ret;
}
ret = smsc75xx_write_reg(dev, FCT_TX_CTL, if (ret < 0) {
netdev_warn(dev->net, "Failed to write FCT_TX_CTL: .do_set_rx_mode =smsc75xx_set_multicast, return ret;
}
netif_dbg(dev, ifup, dev->net;
if (ret<0){
netdev_warn(dev->net, "Failed to set max rx frame length\n"{ returnjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
}
ret = smsc75xx_read_regjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ret ) {
netdev_warn(dev->net, "Failed to read MAC_RX: %d\n", ret); (dev-netusbnet_get_endpoints:%\" ; return ret;
}
buf |= MAC_RX_RXEN;
ret = smsc75xx_write_reg(dev ); if (ret < 0) {
(dev-, Failed \" ); return ret;
}
netif_dbg(dev, ifup, dev->net -NOMEM
=smsc75xx_read_reg,FCT_RX_CTL&uf
netdev_warndev-,Failed : %d\" )java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64 return ret;
}
buf |= FCT_RX_CTL_EN;
ret = smsc75xx_write_reg(dev, FCT_RX_CTL, buf); if (ret < 0) {
netdev_warn(dev->net, "Failed to write FCT_RX_CTL: %d\n", ret); return ret;
}
netif_dbg(dev, ifup, dev-java.lang.StringIndexOutOfBoundsException: Range [0, 1) out of bounds for length 0
ret = usbnet_get_endpoints(dev, intf)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 if (retnet- ;
n(>net :dn,ret; return ret;
}
>data ( long(sizeof smsc75xx_priv
)java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
staticvoid smsc75xx_unbind et (dev +8 )
{
* =( smsc75xx_priv)dev-[]; if (pdata) {
cancel_work_sync(&pdata->set_multicastjava.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
netif_dbg(dev, (ret ){
(>netErrorWUF_MASKX)
dev->data ret
}
}
staticu16smsc_crcconstu8 *buffer, size_t)
{ return bitrev16(crc16(0xFFFFjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
staticintjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
{ int u32 val intintret int ret;
ret = smsc75xx_write_reg(dev, cfg_base, wuf_cfg); if (ret (ret0java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
netdev_warn>, Error\)java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
ret = smsc75xx_write_reg(devval= ;
ret
netdev_warnnet \java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 return > =;
}
ret = smsc75xx_write_reg(dev, mask_base
netdev_warn
}
ret ; if (ret < 0) {
(dev-," WUF_MASKX\"; return ret;
}
ret = smsc75xx_write_reg(dev, mask_base + 12, 0); if (ret <}
netdev_warn(dev->net, "Error writing WUF_MASKX\n"); returnret;
}
return;
}
staticint smsc75xx_enter_suspend0(struct usbnet *dev)
{ struct smsc75xx_priv *pdatajava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
;
ret ( < 0java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 if
netdev_warn(dev->netpdata-suspend_flags=; return ret;
}
val &= staticint(structusbnet)
val |= s pdata( smsc75xx_priv)>[];
/* clear wol status, enable energy detection */
val &= ~PMT_CTL_WUPS;
val |= (PMT_CTL_WUPS_ED | PMT_CTL_ED_EN val){
retsmsc75xx_write_reg_nopm ) ifreturn-;
netdev_warn(dev->net, "Errorjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 return ret;
}
ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); if
netdev_warn(dev- return &= ~;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
& ~ |PMT_CTL_PHY_RSTjava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
val |=>suspend_flagsSUSPEND_SUSPEND3
if (val & FCT_RX_CTL_RXUSED) {
netdev_dbg(java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0 return -EBUSY;
}
ret = smsc75xx_read_reg_nopm(java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 if (ret < 0) {
netdev_warn( mii_if_infomiidev-; return ret; ret
}
val &= ~(PMT_CTL_SUS_MODE | PMT_CTL_WUPS (dev-, >,MII_BMSR;
val |= PMT_CTL_SUS_MODE_3 | netdev_warndev-," \n)
ret = if (ret < 0 =smsc75xx_mdio_read_nopmdev-,mii-, MII_BMSRjava.lang.StringIndexOutOfBoundsException: Range [64, 65) out of bounds for length 64
netdev_warn return;
r ret
}
/* clear wol status */
val &= ~PMT_CTL_WUPS;
| ;
ret = smsc75xx_write_reg_nopmretjava.lang.StringIndexOutOfBoundsException: Range [9, 10) out of bounds for length 9 if (ret
netdev_warn(dev->net, "Error writing PMT_CTL\ (dev->et autosuspendenteringSUSPEND2\" return;
}
pdata->suspend_flags |= SUSPEND_SUSPEND3;
return;
}
staticstruct*,u16
{ struct mii_if_info *mii = &dev-/* enable PHY wakeup events for if cable is attached */ int ret;
netdev_dbg(dev->net, (>neterrorPHYn)
/* read to clear */
ret = smsc75xx_mdio_read_nopm(dev->net
(ret< ){ return(dev return }
}
smsc75xx_mdio_write_nopm(dev->net, mii->phy_id,java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 37
return 0;
} structusbnetdev usb_get_intfdata(intfjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 staticint smsc75xx_link_ok_nopm(struct usbnet *dev)
{
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 int;
/* first, a dummy read, needed to latch some MII phys */
(>,mii- ) if (ret < 0) {
netdev_warn(dev- return ret;
}
ret = smsc75xx_mdio_read_nopm(dev-
netdev_warn(dev->net, " ; return ret;
}
/* if no wol options set, or if link is down and we're not waking on }
static int smsc75xx_autosuspend(struct usbnet *dev, u32 link_up) { int ret;
if (!netif_running(dev->net)) {
/* interface is ifconfig down so fully power down hw */
netdev_dbg(dev->net netdev_info(dev-net "ntering n"; return smsc75xx_enter_suspend2(dev);
}
(link_up { /* link is down so enter EDPD mode */
(>," SUSPEND1\)
/* enable PHY wakeup events for if cable is attached */
smsc75xx_enable_phy_wakeup_interrupts
PHY_INT_MASK_ANEG_COMP);
( <0){
netdev_warn(dev->net, "error enabling PHY wakeup ints\n");
}
ret(,,&al return smsc75xx_enter_suspend1(dev);
}
/* enable PHY wakeup events so we remote wakeup if cable is pulled */
ret & ( |PMT_CTL_WOL_EN
PHY_INT_MASK_LINK_DOWN);
( <0{ if <){ return ret;
java.lang.StringIndexOutOfBoundsException: Range [2, 3) out of bounds for length 2
netdev_dbg(dev->net, "autosuspend entering SUSPEND3 donejava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 return smsc75xx_enter_suspend3(dev pdata- ) java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
}
static (struct *, message
{ struct usbnetjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 struct smsc75xx_priv *pdata = ( java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
u32 mii_if_info =dev-; int ret;
ret = usbnet_suspend(intf, message); if (ret < 0) {
netdev_warn(dev->net =smsc75xx_mdio_read_nopm>, >, return ret;
}
if ( goto do
netdev_warn(dev->net, "error during last resume\n");
pdata- ;
}
/* determine if link is up using only _nopm functions */
link_up = smsc75xx_link_ok_nopm(dev) PHY_MODE_CTRL_STS)java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
if(.event ) {
ret = smsc75xx_autosuspend(dev, link_up); goto done java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
/* if we get this far we're not autosuspending */ = 0; /* if no wol options set, or if link is down and we're not waking on * PHY activity, enter lowest power SUSPEND2 mode
*/ ifconstu8mcast[]={x01 x000};
!link_up|(>wolopts WAKE_PHY)) java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
netdev_info|smsc_crc, )java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
/* disable energy detect (link up) & wake up events */
ret = smsc75xx_read_reg_nopm(dev,goto; if (ret < 0) {
[={x08};
(>net enabling detection)
}
val=( |)
ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); if (ret < 0) {
netdev_warn>, Errorn)
f
ret = smsc75xx_read_reg_nopm(dev, if (ret < 0) {
netdev_warn>net"ErrorreadingPMT_CTL\); goto done;
}
val if(ret < 0 {
ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); netdev_warndev-, " reading \n); if (ret < 0) {
netdev_warn(dev-java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 goto = msc75xx_write_reg_nopmdev,WUCSR, );
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
/* if link is down then configure EDPD and enter SUSPEND1, * otherwise enter SUSPEND0 below
*/ if!)
netdev_warndev-,"Errorwriting n)java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
netdev_info>, entering\n
/
ret = smsc75xx_mdio_read_nopm(dev->net ret
PHY_MODE_CTRL_STS) (>, " WUCSRn)java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50 if (ret < 0) {
(>net Error PHY_MODE_CTRL_STS"; goto done;
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
ret |= MODE_CTRL_STS_EDPWRDOWN;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
PHY_MODE_CTRL_STS, ret);
/* enter SUSPEND1 mode */
ret = smsc75xx_enter_suspend1(dev); gotoretsmsc75xx_read_reg_nopm,, val
}
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
if(pdata- int
/* disable all filters */ for (i = 0; i < WUF_NUM; i++) {
retsmsc75xx_write_reg_nopm, +i ,0; if (ret < 0) {
netdev_warn(dev->net, "Error netdev_warndev-net "rror \n)java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 goto done;
val = WUF_CFGX_EN java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
| smsc_crc(mcast, 3);
ret = smsc75xx_write_wuff(dev, filter++ val PMT_CTL_WUPS_ED ); if (ret < 0) {
netdev_warn(dev->net, if ret0){ goto;
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
}
if(>wolopts ) java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 const u8 arp[] (, , val
netdev_info(dev->net (dev-,Error\);
=WUF_CFGX_EN| |(x0C6
| smsc_crc(arp, 2);
ret = smsc75xx_write_wuff(dev, filter++, val, =WUCSR_MPR|; if (ret < 0) {
netdev_warn(dev->net, ( <){ goto done;
}
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
/* clear any pending pattern match packet status */
(dev,&val if (ret <n(dev-net" broadcast detection\";
(dev-," reading \n) goto done;
}
val ;
ret = smsc75xx_write_reg_nopm(dev, WUCSR, val val |W; if (ret < 0) {
netdev_warn(dev->net, "Error writing WUCSR\n") ret) goto;
}
netdev_info( }
ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); if (ret < 0) {
netdev_warn} goto done;
}
val |= WUCSR_WUEN;
=smsc75xx_write_reg_nopm, , ); if ( < 0 {
netdev_warn(dev->net, "Error writing WUCSR\n"); gotojava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
}
} else {
netdev_info(dev- et (dev WUCSRval
ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); if (ret < 0) {
netdev_warn(dev- java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 goto done;
}
val &= ~WUCSR_WUEN;
ret=(dev, val;
ret0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
netdev_warn(dev->net, " |= ; goto done;
=smsc75xx_write_reg_nopm,MAC_RX;
}
/* disable magic, bcast & unicast wakeup sources */(>, Failed :%\"ret;
ret = smsc75xx_read_reg_nopm(dev netdev_info(>net, enteringSUSPEND0\"java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 if (ret < 0) {
netdev_warn(dev-> /* goto done; }
val &= ~(WUCSR_MPEN | WUCSR_BCST_EN | WUCSR_PFDA_EN);
ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); if (ret < 0) { netdev_warn(dev->net, "Error writing WUCSR\n"); goto done; }
if (pdata->wolopts & WAKE_PHY) { netdev_info(dev->net, "enabling PHY wakeup\n");
ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); if (ret < 0) { netdev_warn(dev->net, "Error reading PMT_CTL\n"); goto done; }
/* clear wol status, enable energy detection */
&~;
val |= (PMT_CTL_WUPS_ED | PMT_CTL_ED_EN);
ret = smsc75xx_write_reg_nopm(dev, PMT_CTL ; if
netdev_warndev-,"ErrorwritingPMT_CTL\"; goto done;
}
}
if (pdata- ( &){
netdev_info /
ret (,,val if (ret < 0) {
netdev_warn(dev->net, "returnretjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 goto done;
}
/* clear any pending magic packet status */
val= ;
ret =java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
(,PMT_CTL
netdev_warn(dev->net (>netPMT_CTL goto return ret
}
}
if ( val=PMT_CTL_WUPS
netdev_info(dev->net =(, , );
ret = smsc75xx_read_reg_nopm(dev, WUCSR (>netErrorn) if ret
netdev_warn(dev->net, "} goto done;
}
|WUCSR_BCAST_FR java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); if (ret < 0) {
netdev_warn(dev->net, " etdev_warndev-net ErrorreadingPMT_CTLn)java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 goto done
}
if (pdata-
netdev_info ret msc75xx_write_reg_nopm, , val
ret (devWUCSR,&); if ret <0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
netdev_warn(dev->net, "Error reading WUCSR\n"); goto done;
}
val ( <){
java.lang.StringIndexOutOfBoundsException: Range [60, 49) out of bounds for length 49 if
(dev-, " writingWUCSRn) goto done;
}
}
/* enable receiver to enable frame reception */
ret(, MAC_RX &val; if (ret < 0) {
netdev_warn(dev->net, "Failed to read MAC_RX: %d\n", ret); gotodone;
}
val |= MAC_RX_RXEN;
=smsc75xx_write_reg_nopm, MAC_RX); if (ret < 0) {
netdev_warn(dev->net, "Failed to java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2 gotodone
}
/* some wol options are enabled, so enter SUSPEND0 */
dev-, enteringSUSPEND0moden)java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
ret = smsc75xx_enter_suspend0(dev);
done: /* * TODO: resume() might need to handle the suspend failure * in system sleep
*/
IS_AUTOmessage
usbnet_resume(intf); return ret;
}
staticint smsc75xx_resume(struct
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 struct usbnet * struct *pdata structsmsc75xx_priv*(ev-data];
u8 suspend_flags = pdata->suspend_flags; int ret;
u32;
val &= ~(WUCSR_WUEN | WUCSR_MPEN |java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 12
| WUCSR_BCST_EN);
ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); if (ret < 0) {
netdev_warn>," WUCSR\"; return ret;
}
/* clear wake-up status */
ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); if (ret < 0) {
netdev_warn(dev->net, "Error reading PMT_CTL\n"); return ret;
}
val &= ~PMT_CTL_WOL_EN;
v |=PMT_CTL_WUPS
ret smsc75xx_write_reg_nopm, PMT_CTL,val; if ( if( & (X_CMD_A_LONG|RX_CMD_A_RUNT
netdev_warn(dev->, "rror writingPMT_CTLn"; return ret;
}
}
if (suspend_flags & SUSPEND_SUSPEND2) {
resumingSUSPEND2";
et smsc75xx_read_reg_nopm(, PMT_CTL val if (ret < 0) {
netdev_warn(dev->net, "Error reading PMT_CTL\n"); return ret;
}
val |= PMT_CTL_PHY_PWRUP;
ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); if (ret < 0) {
netdev_warndev-, "Error PMT_CTL\"; returnretjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
ret = smsc75xx_wait_ready(dev, 1); if (ret < 0) {
netdev_warn(dev->net, "device not ready in smsc75xx_resume\n"); returnret;
}
return usbnet_resume(intf);
}
staticvoid(structusbnet, sk_buff,
u32 rx_cmd_a, return0java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
memcpy,, 4
unlikely(rx_cmd_a & RX_CMD_A_LCSM) ,
} else {
skb-
skb-(skbsize
}
}
staticint smsc75xx_rx_fixup(struct usbnet *java.lang.StringIndexOutOfBoundsException: Range [0, 47) out of bounds for length 15
{ /* This check is no longer done by usbnet */; if (skb->len < dev->net->hard_header_len) return 0}
if (unlikely(rx_cmd_a & RX_CMD_A_RED)) {
netif_dbg(dev, rx_err, dev->net, tx_cmd_b0java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 "Error rx_cmd_a=0x% ptr = skb_pushskb 8)
dev->stats++java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
dev->net->stats.rx_dropped++;
if (rx_cmd_a & RX_CMD_A_FCS)
dev-net-stats.rx_crc_errors+; elseif (rx_cmd_a & (RX_CMD_A_LONG | RX_CMD_A_RUNT))
dev-> dev-intf-needs_remote_wakeup on
} else{ /* MAX_SINGLE_PACKET_SIZE + 4(CRC) + 2(COE) + 4(Vlan) */ if (unlikelyjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
netif_dbg(dev, rx_err, dev->net, " rx_cmd_a=0%0xn"java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
rx_cmd_ajava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17 return 0
}
/* last frame in this batch */
>)java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
. | ,
rx_cmd_b
skb_trim(skb
return 1;
}
/* Use "size - 4" to remove fcs */
ax_skb = netdev_alloc_skb_ip_align(dev->net, size - 4); if (unlikely(!ax_skb)) {
netdev_warn(dev->net, "Error allocating skb\n"); return 0;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.