Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
89f8185e
Commit
89f8185e
authored
May 29, 2006
by
Jeff Garzik
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' into upstream
parents
e42d7be2
d9ec5ad2
Changes
28
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
720 additions
and
662 deletions
+720
-662
MAINTAINERS
MAINTAINERS
+2
-2
arch/powerpc/kernel/prom_init.c
arch/powerpc/kernel/prom_init.c
+45
-3
arch/ppc/kernel/asm-offsets.c
arch/ppc/kernel/asm-offsets.c
+1
-1
arch/ppc/platforms/mpc8272ads_setup.c
arch/ppc/platforms/mpc8272ads_setup.c
+5
-5
arch/ppc/syslib/pq2_devices.c
arch/ppc/syslib/pq2_devices.c
+8
-8
arch/ppc/syslib/pq2_sys.c
arch/ppc/syslib/pq2_sys.c
+4
-4
drivers/net/e1000/e1000_main.c
drivers/net/e1000/e1000_main.c
+9
-1
drivers/net/pcnet32.c
drivers/net/pcnet32.c
+0
-2
drivers/net/wireless/arlan-main.c
drivers/net/wireless/arlan-main.c
+2
-2
drivers/net/wireless/wavelan.c
drivers/net/wireless/wavelan.c
+1
-1
drivers/s390/net/ctcmain.c
drivers/s390/net/ctcmain.c
+13
-13
drivers/s390/net/ctctty.c
drivers/s390/net/ctctty.c
+5
-5
drivers/s390/net/cu3088.c
drivers/s390/net/cu3088.c
+5
-5
drivers/s390/net/iucv.c
drivers/s390/net/iucv.c
+18
-18
drivers/s390/net/iucv.h
drivers/s390/net/iucv.h
+311
-311
drivers/s390/net/lcs.c
drivers/s390/net/lcs.c
+173
-172
drivers/s390/net/lcs.h
drivers/s390/net/lcs.h
+9
-5
drivers/s390/net/netiucv.c
drivers/s390/net/netiucv.c
+18
-18
drivers/s390/net/qeth.h
drivers/s390/net/qeth.h
+9
-9
drivers/s390/net/qeth_eddp.c
drivers/s390/net/qeth_eddp.c
+9
-9
drivers/s390/net/qeth_fs.h
drivers/s390/net/qeth_fs.h
+1
-1
drivers/s390/net/qeth_main.c
drivers/s390/net/qeth_main.c
+55
-52
drivers/s390/net/qeth_mpc.h
drivers/s390/net/qeth_mpc.h
+2
-2
drivers/s390/net/qeth_proc.c
drivers/s390/net/qeth_proc.c
+4
-4
drivers/s390/net/qeth_sys.c
drivers/s390/net/qeth_sys.c
+3
-3
drivers/s390/net/qeth_tso.h
drivers/s390/net/qeth_tso.h
+2
-2
drivers/serial/cpm_uart/cpm_uart_core.c
drivers/serial/cpm_uart/cpm_uart_core.c
+5
-3
drivers/serial/cpm_uart/cpm_uart_cpm2.c
drivers/serial/cpm_uart/cpm_uart_cpm2.c
+1
-1
No files found.
MAINTAINERS
View file @
89f8185e
...
...
@@ -565,7 +565,7 @@ BROADBAND PROCESSOR ARCHITECTURE
P: Arnd Bergmann
M: arnd@arndb.de
L: linuxppc-dev@ozlabs.org
W: http://
linuxppc64.org
W: http://
www.penguinppc.org/ppc64/
S: Supported
BTTV VIDEO4LINUX DRIVER
...
...
@@ -1716,7 +1716,7 @@ M: paulus@au.ibm.com
P: Anton Blanchard
M: anton@samba.org
M: anton@au.ibm.com
W: http://
linuxppc64.org
W: http://
www.penguinppc.org/ppc64/
L: linuxppc-dev@ozlabs.org
S: Supported
...
...
arch/powerpc/kernel/prom_init.c
View file @
89f8185e
...
...
@@ -2057,10 +2057,45 @@ static void __init flatten_device_tree(void)
}
static
void
__init
fixup_device_tree
(
void
)
#ifdef CONFIG_PPC_MAPLE
/* PIBS Version 1.05.0000 04/26/2005 has an incorrect /ht/isa/ranges property.
* The values are bad, and it doesn't even have the right number of cells. */
static
void
__init
fixup_device_tree_maple
(
void
)
{
phandle
isa
;
u32
isa_ranges
[
6
];
isa
=
call_prom
(
"finddevice"
,
1
,
1
,
ADDR
(
"/ht@0/isa@4"
));
if
(
!
PHANDLE_VALID
(
isa
))
return
;
if
(
prom_getprop
(
isa
,
"ranges"
,
isa_ranges
,
sizeof
(
isa_ranges
))
==
PROM_ERROR
)
return
;
if
(
isa_ranges
[
0
]
!=
0x1
||
isa_ranges
[
1
]
!=
0xf4000000
||
isa_ranges
[
2
]
!=
0x00010000
)
return
;
prom_printf
(
"fixing up bogus ISA range on Maple...
\n
"
);
isa_ranges
[
0
]
=
0x1
;
isa_ranges
[
1
]
=
0x0
;
isa_ranges
[
2
]
=
0x01002000
;
/* IO space; PCI device = 4 */
isa_ranges
[
3
]
=
0x0
;
isa_ranges
[
4
]
=
0x0
;
isa_ranges
[
5
]
=
0x00010000
;
prom_setprop
(
isa
,
"/ht@0/isa@4"
,
"ranges"
,
isa_ranges
,
sizeof
(
isa_ranges
));
}
#else
#define fixup_device_tree_maple()
#endif
#if defined(CONFIG_PPC64) && defined(CONFIG_PPC_PMAC)
static
void
__init
fixup_device_tree_pmac
(
void
)
{
phandle
u3
,
i2c
,
mpic
;
u32
u3_rev
;
u32
interrupts
[
2
];
...
...
@@ -2097,9 +2132,16 @@ static void __init fixup_device_tree(void)
parent
=
(
u32
)
mpic
;
prom_setprop
(
i2c
,
"/u3@0,f8000000/i2c@f8001000"
,
"interrupt-parent"
,
&
parent
,
sizeof
(
parent
));
#endif
}
#else
#define fixup_device_tree_pmac()
#endif
static
void
__init
fixup_device_tree
(
void
)
{
fixup_device_tree_maple
();
fixup_device_tree_pmac
();
}
static
void
__init
prom_find_boot_cpu
(
void
)
{
...
...
arch/ppc/kernel/asm-offsets.c
View file @
89f8185e
...
...
@@ -134,7 +134,7 @@ main(void)
DEFINE
(
TI_TASK
,
offsetof
(
struct
thread_info
,
task
));
DEFINE
(
TI_EXECDOMAIN
,
offsetof
(
struct
thread_info
,
exec_domain
));
DEFINE
(
TI_FLAGS
,
offsetof
(
struct
thread_info
,
flags
));
DEFINE
(
TI_LOCAL_FLAGS
,
offsetof
(
struct
thread_info
,
flags
));
DEFINE
(
TI_LOCAL_FLAGS
,
offsetof
(
struct
thread_info
,
local_
flags
));
DEFINE
(
TI_CPU
,
offsetof
(
struct
thread_info
,
cpu
));
DEFINE
(
TI_PREEMPT
,
offsetof
(
struct
thread_info
,
preempt_count
));
...
...
arch/ppc/platforms/mpc8272ads_setup.c
View file @
89f8185e
...
...
@@ -279,11 +279,11 @@ static int mpc8272ads_platform_notify(struct device *dev)
static
const
struct
platform_notify_dev_map
dev_map
[]
=
{
{
.
bus_id
=
"fsl-cpm-fcc"
,
.
rtn
=
mpc8272ads_fixup_enet_pdata
.
rtn
=
mpc8272ads_fixup_enet_pdata
,
},
{
.
bus_id
=
"fsl-cpm-scc:uart"
,
.
rtn
=
mpc
.
rtn
=
mpc
8272ads_fixup_uart_pdata
,
},
{
.
bus_id
=
NULL
...
...
@@ -335,15 +335,15 @@ struct platform_device* early_uart_get_pdev(int index)
struct
platform_device
*
pdev
=
NULL
;
if
(
index
)
{
/*assume SCC4 here*/
pdev
=
&
ppc_sys_platform_devices
[
MPC82xx_CPM_SCC4
];
pinfo
=
&
mpc8272
<
F12
>
_uart_pdata
[
1
];
pinfo
=
&
mpc8272
_uart_pdata
[
fsid_scc4_uart
];
}
else
{
/*over SCC1*/
pdev
=
&
ppc_sys_platform_devices
[
MPC82xx_CPM_SCC1
];
pinfo
=
&
mpc8272_uart_pdata
[
0
];
pinfo
=
&
mpc8272_uart_pdata
[
fsid_scc1_uart
];
}
pinfo
->
uart_clk
=
bd
->
bi_intfreq
;
pdev
->
dev
.
platform_data
=
pinfo
;
ppc_sys_fixup_mem_resource
(
pdev
,
I
MAP_ADDR
);
ppc_sys_fixup_mem_resource
(
pdev
,
CPM_
MAP_ADDR
);
return
NULL
;
}
...
...
arch/ppc/syslib/pq2_devices.c
View file @
89f8185e
...
...
@@ -121,13 +121,13 @@ struct platform_device ppc_sys_platform_devices[] = {
.
num_resources
=
3
,
.
resource
=
(
struct
resource
[])
{
{
.
name
=
"
scc_mem
"
,
.
name
=
"
regs
"
,
.
start
=
0x11A00
,
.
end
=
0x11A1F
,
.
flags
=
IORESOURCE_MEM
,
},
{
.
name
=
"
scc_
pram"
,
.
name
=
"pram"
,
.
start
=
0x8000
,
.
end
=
0x80ff
,
.
flags
=
IORESOURCE_MEM
,
...
...
@@ -145,13 +145,13 @@ struct platform_device ppc_sys_platform_devices[] = {
.
num_resources
=
3
,
.
resource
=
(
struct
resource
[])
{
{
.
name
=
"
scc_mem
"
,
.
name
=
"
regs
"
,
.
start
=
0x11A20
,
.
end
=
0x11A3F
,
.
flags
=
IORESOURCE_MEM
,
},
{
.
name
=
"
scc_
pram"
,
.
name
=
"pram"
,
.
start
=
0x8100
,
.
end
=
0x81ff
,
.
flags
=
IORESOURCE_MEM
,
...
...
@@ -169,13 +169,13 @@ struct platform_device ppc_sys_platform_devices[] = {
.
num_resources
=
3
,
.
resource
=
(
struct
resource
[])
{
{
.
name
=
"
scc_mem
"
,
.
name
=
"
regs
"
,
.
start
=
0x11A40
,
.
end
=
0x11A5F
,
.
flags
=
IORESOURCE_MEM
,
},
{
.
name
=
"
scc_
pram"
,
.
name
=
"pram"
,
.
start
=
0x8200
,
.
end
=
0x82ff
,
.
flags
=
IORESOURCE_MEM
,
...
...
@@ -193,13 +193,13 @@ struct platform_device ppc_sys_platform_devices[] = {
.
num_resources
=
3
,
.
resource
=
(
struct
resource
[])
{
{
.
name
=
"
scc_mem
"
,
.
name
=
"
regs
"
,
.
start
=
0x11A60
,
.
end
=
0x11A7F
,
.
flags
=
IORESOURCE_MEM
,
},
{
.
name
=
"
scc_
pram"
,
.
name
=
"pram"
,
.
start
=
0x8300
,
.
end
=
0x83ff
,
.
flags
=
IORESOURCE_MEM
,
...
...
arch/ppc/syslib/pq2_sys.c
View file @
89f8185e
...
...
@@ -139,13 +139,13 @@ struct ppc_sys_spec ppc_sys_specs[] = {
.
ppc_sys_name
=
"8272"
,
.
mask
=
0x0000ff00
,
.
value
=
0x00000c00
,
.
num_devices
=
1
1
,
.
num_devices
=
1
2
,
.
device_list
=
(
enum
ppc_sys_devices
[])
{
MPC82xx_CPM_FCC1
,
MPC82xx_CPM_FCC2
,
MPC82xx_CPM_SCC1
,
MPC82xx_CPM_SCC2
,
MPC82xx_CPM_SCC3
,
MPC82xx_CPM_S
MC1
,
MPC82xx_CPM_SMC
2
,
MPC82xx_CPM_SPI
,
MPC82xx_CPM_I2C
,
MPC82xx_CPM_USB
,
MPC82xx_SEC1
,
MPC82xx_CPM_SCC2
,
MPC82xx_CPM_SCC3
,
MPC82xx_CPM_S
CC4
,
MPC82xx_CPM_SMC
1
,
MPC82xx_CPM_SMC2
,
MPC82xx_CPM_SPI
,
MPC82xx_CPM_
I2C
,
MPC82xx_CPM_
USB
,
MPC82xx_SEC1
,
},
},
/* below is a list of the 8280 family of processors */
...
...
drivers/net/e1000/e1000_main.c
View file @
89f8185e
...
...
@@ -220,6 +220,7 @@ static void e1000_restore_vlan(struct e1000_adapter *adapter);
static
int
e1000_suspend
(
struct
pci_dev
*
pdev
,
pm_message_t
state
);
static
int
e1000_resume
(
struct
pci_dev
*
pdev
);
#endif
static
void
e1000_shutdown
(
struct
pci_dev
*
pdev
);
#ifdef CONFIG_NET_POLL_CONTROLLER
/* for netdump / net console */
...
...
@@ -235,8 +236,9 @@ static struct pci_driver e1000_driver = {
/* Power Managment Hooks */
#ifdef CONFIG_PM
.
suspend
=
e1000_suspend
,
.
resume
=
e1000_resume
.
resume
=
e1000_resume
,
#endif
.
shutdown
=
e1000_shutdown
};
MODULE_AUTHOR
(
"Intel Corporation, <linux.nics@intel.com>"
);
...
...
@@ -4611,6 +4613,12 @@ e1000_resume(struct pci_dev *pdev)
return
0
;
}
#endif
static
void
e1000_shutdown
(
struct
pci_dev
*
pdev
)
{
e1000_suspend
(
pdev
,
PMSG_SUSPEND
);
}
#ifdef CONFIG_NET_POLL_CONTROLLER
/*
* Polling 'interrupt' - used by things like netconsole to send skbs
...
...
drivers/net/pcnet32.c
View file @
89f8185e
...
...
@@ -1774,8 +1774,6 @@ static int pcnet32_open(struct net_device *dev)
lp
->
rx_dma_addr
[
i
]
=
0
;
}
pcnet32_free_ring
(
dev
);
/*
* Switch back to 16bit mode to avoid problems with dumb
* DOS packet driver after a warm reboot
...
...
drivers/net/wireless/arlan-main.c
View file @
89f8185e
...
...
@@ -1838,7 +1838,7 @@ struct net_device * __init arlan_probe(int unit)
}
#ifdef MODULE
int
init_module
(
void
)
int
__init
init_module
(
void
)
{
int
i
=
0
;
...
...
@@ -1860,7 +1860,7 @@ int init_module(void)
}
void
cleanup_module
(
void
)
void
__exit
cleanup_module
(
void
)
{
int
i
=
0
;
struct
net_device
*
dev
;
...
...
drivers/net/wireless/wavelan.c
View file @
89f8185e
...
...
@@ -4306,7 +4306,7 @@ struct net_device * __init wavelan_probe(int unit)
* Insertion of the module
* I'm now quite proud of the multi-device support.
*/
int
init_module
(
void
)
int
__init
init_module
(
void
)
{
int
ret
=
-
EIO
;
/* Return error if no cards found */
int
i
;
...
...
drivers/s390/net/ctcmain.c
View file @
89f8185e
...
...
@@ -1486,13 +1486,13 @@ ch_action_iofatal(fsm_instance * fi, int event, void *arg)
}
}
static
void
static
void
ch_action_reinit
(
fsm_instance
*
fi
,
int
event
,
void
*
arg
)
{
struct
channel
*
ch
=
(
struct
channel
*
)
arg
;
struct
net_device
*
dev
=
ch
->
netdev
;
struct
ctc_priv
*
privptr
=
dev
->
priv
;
DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
ch_action_iofatal
(
fi
,
event
,
arg
);
fsm_addtimer
(
&
privptr
->
restart_timer
,
1000
,
DEV_EVENT_RESTART
,
dev
);
...
...
@@ -1624,7 +1624,7 @@ less_than(char *id1, char *id2)
}
dev1
=
simple_strtoul
(
id1
,
&
id1
,
16
);
dev2
=
simple_strtoul
(
id2
,
&
id2
,
16
);
return
(
dev1
<
dev2
);
}
...
...
@@ -1895,7 +1895,7 @@ ctc_irq_handler(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
irb
->
scsw
.
dstat
);
return
;
}
priv
=
((
struct
ccwgroup_device
*
)
cdev
->
dev
.
driver_data
)
->
dev
.
driver_data
;
...
...
@@ -1909,7 +1909,7 @@ ctc_irq_handler(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
"device %s
\n
"
,
cdev
->
dev
.
bus_id
);
return
;
}
dev
=
(
struct
net_device
*
)
(
ch
->
netdev
);
if
(
dev
==
NULL
)
{
ctc_pr_crit
(
"ctc: ctc_irq_handler dev=NULL bus_id=%s, ch=0x%p
\n
"
,
...
...
@@ -2008,12 +2008,12 @@ dev_action_stop(fsm_instance * fi, int event, void *arg)
fsm_event
(
ch
->
fsm
,
CH_EVENT_STOP
,
ch
);
}
}
static
void
static
void
dev_action_restart
(
fsm_instance
*
fi
,
int
event
,
void
*
arg
)
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
arg
;
struct
ctc_priv
*
privptr
=
dev
->
priv
;
DBF_TEXT
(
trace
,
3
,
__FUNCTION__
);
ctc_pr_debug
(
"%s: Restarting
\n
"
,
dev
->
name
);
dev_action_stop
(
fi
,
event
,
arg
);
...
...
@@ -2193,7 +2193,7 @@ transmit_skb(struct channel *ch, struct sk_buff *skb)
DBF_TEXT
(
trace
,
5
,
__FUNCTION__
);
/* we need to acquire the lock for testing the state
* otherwise we can have an IRQ changing the state to
* otherwise we can have an IRQ changing the state to
* TXIDLE after the test but before acquiring the lock.
*/
spin_lock_irqsave
(
&
ch
->
collect_lock
,
saveflags
);
...
...
@@ -2393,7 +2393,7 @@ ctc_tx(struct sk_buff *skb, struct net_device * dev)
/**
* If channels are not running, try to restart them
* and throw away packet.
* and throw away packet.
*/
if
(
fsm_getstate
(
privptr
->
fsm
)
!=
DEV_STATE_RUNNING
)
{
fsm_event
(
privptr
->
fsm
,
DEV_EVENT_START
,
dev
);
...
...
@@ -2738,7 +2738,7 @@ ctc_remove_files(struct device *dev)
/**
* Add ctc specific attributes.
* Add ctc private data.
*
*
* @param cgdev pointer to ccwgroup_device just added
*
* @returns 0 on success, !0 on failure.
...
...
@@ -2869,7 +2869,7 @@ ctc_new_device(struct ccwgroup_device *cgdev)
DBF_TEXT
(
setup
,
3
,
buffer
);
type
=
get_channel_type
(
&
cgdev
->
cdev
[
0
]
->
id
);
snprintf
(
read_id
,
CTC_ID_SIZE
,
"ch-%s"
,
cgdev
->
cdev
[
0
]
->
dev
.
bus_id
);
snprintf
(
write_id
,
CTC_ID_SIZE
,
"ch-%s"
,
cgdev
->
cdev
[
1
]
->
dev
.
bus_id
);
...
...
@@ -2907,7 +2907,7 @@ ctc_new_device(struct ccwgroup_device *cgdev)
channel_get
(
type
,
direction
==
READ
?
read_id
:
write_id
,
direction
);
if
(
privptr
->
channel
[
direction
]
==
NULL
)
{
if
(
direction
==
WRITE
)
if
(
direction
==
WRITE
)
channel_free
(
privptr
->
channel
[
READ
]);
ctc_free_netdevice
(
dev
,
1
);
...
...
@@ -2955,7 +2955,7 @@ ctc_shutdown_device(struct ccwgroup_device *cgdev)
{
struct
ctc_priv
*
priv
;
struct
net_device
*
ndev
;
DBF_TEXT
(
setup
,
3
,
__FUNCTION__
);
pr_debug
(
"%s() called
\n
"
,
__FUNCTION__
);
...
...
drivers/s390/net/ctctty.c
View file @
89f8185e
...
...
@@ -130,7 +130,7 @@ ctc_tty_readmodem(ctc_tty_info *info)
if
((
tty
=
info
->
tty
))
{
if
(
info
->
mcr
&
UART_MCR_RTS
)
{
struct
sk_buff
*
skb
;
if
((
skb
=
skb_dequeue
(
&
info
->
rx_queue
)))
{
int
len
=
skb
->
len
;
tty_insert_flip_string
(
tty
,
skb
->
data
,
len
);
...
...
@@ -328,7 +328,7 @@ ctc_tty_inject(ctc_tty_info *info, char c)
{
int
skb_res
;
struct
sk_buff
*
skb
;
DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
if
(
ctc_tty_shuttingdown
)
return
;
...
...
@@ -497,7 +497,7 @@ ctc_tty_write(struct tty_struct *tty, const u_char * buf, int count)
c
=
(
count
<
CTC_TTY_XMIT_SIZE
)
?
count
:
CTC_TTY_XMIT_SIZE
;
if
(
c
<=
0
)
break
;
skb_res
=
info
->
netdev
->
hard_header_len
+
sizeof
(
info
->
mcr
)
+
+
sizeof
(
__u32
);
skb
=
dev_alloc_skb
(
skb_res
+
c
);
...
...
@@ -828,7 +828,7 @@ ctc_tty_block_til_ready(struct tty_struct *tty, struct file *filp, ctc_tty_info
if
(
tty_hung_up_p
(
filp
)
||
(
info
->
flags
&
CTC_ASYNC_CLOSING
))
{
if
(
info
->
flags
&
CTC_ASYNC_CLOSING
)
wait_event
(
info
->
close_wait
,
wait_event
(
info
->
close_wait
,
!
(
info
->
flags
&
CTC_ASYNC_CLOSING
));
#ifdef MODEM_DO_RESTART
if
(
info
->
flags
&
CTC_ASYNC_HUP_NOTIFY
)
...
...
@@ -1247,7 +1247,7 @@ ctc_tty_unregister_netdev(struct net_device *dev) {
void
ctc_tty_cleanup
(
void
)
{
unsigned
long
saveflags
;
DBF_TEXT
(
trace
,
2
,
__FUNCTION__
);
spin_lock_irqsave
(
&
ctc_tty_lock
,
saveflags
);
ctc_tty_shuttingdown
=
1
;
...
...
drivers/s390/net/cu3088.c
View file @
89f8185e
...
...
@@ -20,7 +20,7 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#include <linux/init.h>
#include <linux/module.h>
#include <linux/err.h>
...
...
@@ -77,7 +77,7 @@ group_write(struct device_driver *drv, const char *buf, size_t count)
int
len
;
if
(
!
(
end
=
strchr
(
start
,
delim
[
i
])))
return
count
;
return
-
EINVAL
;
len
=
min_t
(
ptrdiff_t
,
BUS_ID_SIZE
,
end
-
start
+
1
);
strlcpy
(
bus_ids
[
i
],
start
,
len
);
argv
[
i
]
=
bus_ids
[
i
];
...
...
@@ -94,7 +94,7 @@ static DRIVER_ATTR(group, 0200, NULL, group_write);
/* Register-unregister for ctc&lcs */
int
register_cu3088_discipline
(
struct
ccwgroup_driver
*
dcp
)
register_cu3088_discipline
(
struct
ccwgroup_driver
*
dcp
)
{
int
rc
;
...
...
@@ -109,7 +109,7 @@ register_cu3088_discipline(struct ccwgroup_driver *dcp)
rc
=
driver_create_file
(
&
dcp
->
driver
,
&
driver_attr_group
);
if
(
rc
)
ccwgroup_driver_unregister
(
dcp
);
return
rc
;
}
...
...
@@ -137,7 +137,7 @@ static int __init
cu3088_init
(
void
)
{
int
rc
;
cu3088_root_dev
=
s390_root_dev_register
(
"cu3088"
);
if
(
IS_ERR
(
cu3088_root_dev
))
return
PTR_ERR
(
cu3088_root_dev
);
...
...
drivers/s390/net/iucv.c
View file @
89f8185e
/*
/*
* IUCV network driver
*
* Copyright (C) 2001 IBM Deutschland Entwicklung GmbH, IBM Corporation
...
...
@@ -28,7 +28,7 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
/* #define DEBUG */
#include <linux/module.h>
...
...
@@ -81,7 +81,7 @@ iucv_bus_match (struct device *dev, struct device_driver *drv)
struct
bus_type
iucv_bus
=
{
.
name
=
"iucv"
,
.
match
=
iucv_bus_match
,
};
};
struct
device
*
iucv_root
;
...
...
@@ -297,7 +297,7 @@ MODULE_LICENSE("GPL");
/*
* Debugging stuff
*******************************************************************************/
#ifdef DEBUG
static
int
debuglevel
=
0
;
...
...
@@ -344,7 +344,7 @@ do { \
/*
* Internal functions
*******************************************************************************/
/**
* print start banner
*/
...
...
@@ -810,7 +810,7 @@ iucv_register_program (__u8 pgmname[16],
sizeof
(
new_handler
->
id
.
userid
));
EBC_TOUPPER
(
new_handler
->
id
.
userid
,
sizeof
(
new_handler
->
id
.
userid
));
if
(
pgmmask
)
{
memcpy
(
new_handler
->
id
.
mask
,
pgmmask
,
sizeof
(
new_handler
->
id
.
mask
));
...
...
@@ -1229,7 +1229,7 @@ iucv_purge (__u16 pathid, __u32 msgid, __u32 srccls, __u32 *audit)
/* parm->ipaudit has only 3 bytes */
*
audit
>>=
8
;
}
release_param
(
parm
);
iucv_debug
(
1
,
"b2f0_result = %ld"
,
b2f0_result
);
...
...
@@ -2330,14 +2330,14 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
temp_buff1
[
j
]
&=
(
h
->
id
.
mask
)[
j
];
temp_buff2
[
j
]
&=
(
h
->
id
.
mask
)[
j
];
}
iucv_dumpit
(
"temp_buff1:"
,
temp_buff1
,
sizeof
(
temp_buff1
));
iucv_dumpit
(
"temp_buff2"
,
temp_buff2
,
sizeof
(
temp_buff2
));
if
(
!
memcmp
(
temp_buff1
,
temp_buff2
,
24
))
{
iucv_debug
(
2
,
"found a matching handler"
);
break
;
...
...
@@ -2368,7 +2368,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
}
else
iucv_sever
(
int_buf
->
ippathid
,
no_listener
);
break
;
case
0x02
:
/*connection complete */
if
(
messagesDisabled
)
{
iucv_setmask
(
~
0
);
...
...
@@ -2387,7 +2387,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
}
else
iucv_sever
(
int_buf
->
ippathid
,
no_listener
);
break
;
case
0x03
:
/* connection severed */
if
(
messagesDisabled
)
{
iucv_setmask
(
~
0
);
...
...
@@ -2398,13 +2398,13 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
interrupt
->
ConnectionSevered
(
(
iucv_ConnectionSevered
*
)
int_buf
,
h
->
pgm_data
);
else
iucv_sever
(
int_buf
->
ippathid
,
no_listener
);
}
else
iucv_sever
(
int_buf
->
ippathid
,
no_listener
);
break
;
case
0x04
:
/* connection quiesced */
if
(
messagesDisabled
)
{
iucv_setmask
(
~
0
);
...
...
@@ -2420,7 +2420,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
"ConnectionQuiesced not called"
);
}
break
;
case
0x05
:
/* connection resumed */
if
(
messagesDisabled
)
{
iucv_setmask
(
~
0
);
...
...
@@ -2436,7 +2436,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
"ConnectionResumed not called"
);
}
break
;
case
0x06
:
/* priority message complete */
case
0x07
:
/* nonpriority message complete */
if
(
h
)
{
...
...
@@ -2449,7 +2449,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
"MessageComplete not called"
);
}
break
;
case
0x08
:
/* priority message pending */
case
0x09
:
/* nonpriority message pending */
if
(
h
)
{
...
...
@@ -2467,7 +2467,7 @@ iucv_do_int(iucv_GeneralInterrupt * int_buf)
__FUNCTION__
);
break
;
}
/* end switch */
iucv_debug
(
2
,
"exiting pathid %d, type %02X"
,
int_buf
->
ippathid
,
int_buf
->
iptype
);
...
...
drivers/s390/net/iucv.h
View file @
89f8185e
This diff is collapsed.
Click to expand it.
drivers/s390/net/lcs.c
View file @
89f8185e
This diff is collapsed.
Click to expand it.
drivers/s390/net/lcs.h
View file @
89f8185e
...
...
@@ -73,13 +73,17 @@ do { \
/**
* LCS sense byte definitions
*/
#define LCS_SENSE_BYTE_0 0
#define LCS_SENSE_BYTE_1 1
#define LCS_SENSE_BYTE_2 2
#define LCS_SENSE_BYTE_3 3
#define LCS_SENSE_INTERFACE_DISCONNECT 0x01
#define LCS_SENSE_EQUIPMENT_CHECK 0x10
#define LCS_SENSE_BUS_OUT_CHECK 0x20
#define LCS_SENSE_INTERVENTION_REQUIRED 0x40
#define LCS_SENSE_CMD_REJECT 0x80
#define LCS_SENSE_RESETTING_EVENT 0x
00
80
#define LCS_SENSE_DEVICE_ONLINE 0x
00
20
#define LCS_SENSE_RESETTING_EVENT 0x80
#define LCS_SENSE_DEVICE_ONLINE 0x20
/**
* LCS packet type definitions
...
...
@@ -152,10 +156,9 @@ enum lcs_dev_states {
enum
lcs_threads
{
LCS_SET_MC_THREAD
=
1
,
LCS_STARTLAN_THREAD
=
2
,
LCS_STOPLAN_THREAD
=
4
,
LCS_STARTUP_THREAD
=
8
,
LCS_RECOVERY_THREAD
=
2
,
};
/**
* LCS struct declarations
*/
...
...
@@ -286,6 +289,7 @@ struct lcs_card {
struct
net_device_stats
stats
;
unsigned
short
(
*
lan_type_trans
)(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
struct
ccwgroup_device
*
gdev
;
struct
lcs_channel
read
;
struct
lcs_channel
write
;
struct
lcs_buffer
*
tx_buffer
;
...
...
drivers/s390/net/netiucv.c
View file @
89f8185e
...
...
@@ -30,7 +30,7 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#undef DEBUG
#include <linux/module.h>
...
...
@@ -65,7 +65,7 @@ MODULE_AUTHOR
(
"(C) 2001 IBM Corporation by Fritz Elfert (felfert@millenux.com)"
);
MODULE_DESCRIPTION
(
"Linux for S/390 IUCV network driver"
);
#define PRINTK_HEADER " iucv: "
/* for debugging */
static
struct
device_driver
netiucv_driver
=
{
...
...
@@ -202,7 +202,7 @@ netiucv_printname(char *name)
*
p
=
'\0'
;
return
tmp
;
}
/**
* States of the interface statemachine.
*/
...
...
@@ -244,7 +244,7 @@ static const char *dev_event_names[] = {
"Connection up"
,
"Connection down"
,
};
/**
* Events of the connection statemachine
*/
...
...
@@ -364,7 +364,7 @@ static const char *conn_state_names[] = {
"Connect error"
,
};
/**
* Debug Facility Stuff
*/
...
...
@@ -516,7 +516,7 @@ static void
fsm_action_nop
(
fsm_instance
*
fi
,
int
event
,
void
*
arg
)
{
}
/**
* Actions of the connection statemachine
*****************************************************************************/
...
...
@@ -993,7 +993,7 @@ static const fsm_node conn_fsm[] = {
static
const
int
CONN_FSM_LEN
=
sizeof
(
conn_fsm
)
/
sizeof
(
fsm_node
);
/**
* Actions for interface - statemachine.
*****************************************************************************/
...
...
@@ -1182,7 +1182,7 @@ netiucv_transmit_skb(struct iucv_connection *conn, struct sk_buff *skb) {
fsm_newstate
(
conn
->
fsm
,
CONN_STATE_TX
);
conn
->
prof
.
send_stamp
=
xtime
;
rc
=
iucv_send
(
conn
->
pathid
,
NULL
,
0
,
0
,
1
/* single_flag */
,
0
,
nskb
->
data
,
nskb
->
len
);
/* Shut up, gcc! nskb is always below 2G. */
...
...
@@ -1220,7 +1220,7 @@ netiucv_transmit_skb(struct iucv_connection *conn, struct sk_buff *skb) {
return
rc
;
}
/**
* Interface API for upper network layers
*****************************************************************************/
...
...
@@ -1291,7 +1291,7 @@ static int netiucv_tx(struct sk_buff *skb, struct net_device *dev)
/**
* If connection is not running, try to restart it
* and throw away packet.
* and throw away packet.
*/
if
(
fsm_getstate
(
privptr
->
fsm
)
!=
DEV_STATE_RUNNING
)
{
fsm_event
(
privptr
->
fsm
,
DEV_EVENT_START
,
dev
);
...
...
@@ -1538,7 +1538,7 @@ static ssize_t
maxcq_write
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
netiucv_priv
*
priv
=
dev
->
driver_data
;
IUCV_DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
priv
->
conn
->
prof
.
maxcqueue
=
0
;
return
count
;
...
...
@@ -1559,7 +1559,7 @@ static ssize_t
sdoio_write
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
netiucv_priv
*
priv
=
dev
->
driver_data
;
IUCV_DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
priv
->
conn
->
prof
.
doios_single
=
0
;
return
count
;
...
...
@@ -1580,7 +1580,7 @@ static ssize_t
mdoio_write
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
netiucv_priv
*
priv
=
dev
->
driver_data
;
IUCV_DBF_TEXT
(
trace
,
5
,
__FUNCTION__
);
priv
->
conn
->
prof
.
doios_multi
=
0
;
return
count
;
...
...
@@ -1601,7 +1601,7 @@ static ssize_t
txlen_write
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
netiucv_priv
*
priv
=
dev
->
driver_data
;
IUCV_DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
priv
->
conn
->
prof
.
txlen
=
0
;
return
count
;
...
...
@@ -1622,7 +1622,7 @@ static ssize_t
txtime_write
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
netiucv_priv
*
priv
=
dev
->
driver_data
;
IUCV_DBF_TEXT
(
trace
,
4
,
__FUNCTION__
);
priv
->
conn
->
prof
.
tx_time
=
0
;
return
count
;
...
...
@@ -2000,7 +2000,7 @@ conn_write(struct device_driver *drv, const char *buf, size_t count)
}
PRINT_INFO
(
"%s: '%s'
\n
"
,
dev
->
name
,
netiucv_printname
(
username
));
return
count
;
out_free_ndev:
...
...
@@ -2099,7 +2099,7 @@ static int __init
netiucv_init
(
void
)
{
int
ret
;
ret
=
iucv_register_dbf_views
();
if
(
ret
)
{
PRINT_WARN
(
"netiucv_init failed, "
...
...
@@ -2128,7 +2128,7 @@ netiucv_init(void)
}
return
ret
;
}
module_init
(
netiucv_init
);
module_exit
(
netiucv_exit
);
MODULE_LICENSE
(
"GPL"
);
drivers/s390/net/qeth.h
View file @
89f8185e
...
...
@@ -376,7 +376,7 @@ struct qeth_hdr_osn {
__u8
reserved3
[
18
];
__u32
ccid
;
}
__attribute__
((
packed
));
struct
qeth_hdr
{
union
{
struct
qeth_hdr_layer2
l2
;
...
...
@@ -825,7 +825,7 @@ struct qeth_card {
int
use_hard_stop
;
int
(
*
orig_hard_header
)(
struct
sk_buff
*
,
struct
net_device
*
,
unsigned
short
,
void
*
,
void
*
,
unsigned
);
struct
qeth_osn_info
osn_info
;
struct
qeth_osn_info
osn_info
;
};
struct
qeth_card_list_struct
{
...
...
@@ -944,7 +944,7 @@ qeth_get_netdev_flags(struct qeth_card *card)
return
0
;
switch
(
card
->
info
.
type
)
{
case
QETH_CARD_TYPE_IQD
:
case
QETH_CARD_TYPE_OSN
:
case
QETH_CARD_TYPE_OSN
:
return
IFF_NOARP
;
#ifdef CONFIG_QETH_IPV6
default:
...
...
@@ -981,7 +981,7 @@ static inline int
qeth_get_max_mtu_for_card
(
int
cardtype
)
{
switch
(
cardtype
)
{
case
QETH_CARD_TYPE_UNKNOWN
:
case
QETH_CARD_TYPE_OSAE
:
case
QETH_CARD_TYPE_OSN
:
...
...
@@ -1097,9 +1097,9 @@ qeth_string_to_ipaddr4(const char *buf, __u8 *addr)
int
count
=
0
,
rc
=
0
;
int
in
[
4
];
rc
=
sscanf
(
buf
,
"%d.%d.%d.%d%n"
,
rc
=
sscanf
(
buf
,
"%d.%d.%d.%d%n"
,
&
in
[
0
],
&
in
[
1
],
&
in
[
2
],
&
in
[
3
],
&
count
);
if
(
rc
!=
4
||
count
)
if
(
rc
!=
4
||
count
<=
0
)
return
-
EINVAL
;
for
(
count
=
0
;
count
<
4
;
count
++
)
{
if
(
in
[
count
]
>
255
)
...
...
@@ -1131,7 +1131,7 @@ qeth_string_to_ipaddr6(const char *buf, __u8 *addr)
cnt
=
out
=
found
=
save_cnt
=
num2
=
0
;
end
=
start
=
(
char
*
)
buf
;
in
=
(
__u16
*
)
addr
;
in
=
(
__u16
*
)
addr
;
memset
(
in
,
0
,
16
);
while
(
end
)
{
end
=
strchr
(
end
,
':'
);
...
...
@@ -1139,7 +1139,7 @@ qeth_string_to_ipaddr6(const char *buf, __u8 *addr)
end
=
(
char
*
)
buf
+
(
strlen
(
buf
));
out
=
1
;
}
if
((
end
-
start
))
{
if
((
end
-
start
))
{
memset
(
num
,
0
,
5
);
memcpy
(
num
,
start
,
end
-
start
);
if
(
!
qeth_isxdigit
(
num
))
...
...
@@ -1241,5 +1241,5 @@ qeth_osn_register(unsigned char *read_dev_no,
extern
void
qeth_osn_deregister
(
struct
net_device
*
);
#endif
/* __QETH_H__ */
drivers/s390/net/qeth_eddp.c
View file @
89f8185e
...
...
@@ -81,7 +81,7 @@ void
qeth_eddp_buf_release_contexts
(
struct
qeth_qdio_out_buffer
*
buf
)
{
struct
qeth_eddp_context_reference
*
ref
;
QETH_DBF_TEXT
(
trace
,
6
,
"eddprctx"
);
while
(
!
list_empty
(
&
buf
->
ctx_list
)){
ref
=
list_entry
(
buf
->
ctx_list
.
next
,
...
...
@@ -135,7 +135,7 @@ qeth_eddp_fill_buffer(struct qeth_qdio_out_q *queue,
"buffer!
\n
"
);
goto
out
;
}
}
}
/* check if the whole next skb fits into current buffer */
if
((
QETH_MAX_BUFFER_ELEMENTS
(
queue
->
card
)
-
buf
->
next_element_to_fill
)
...
...
@@ -148,7 +148,7 @@ qeth_eddp_fill_buffer(struct qeth_qdio_out_q *queue,
* and increment ctx's refcnt */
must_refcnt
=
1
;
continue
;
}
}
if
(
must_refcnt
){
must_refcnt
=
0
;
if
(
qeth_eddp_buf_ref_context
(
buf
,
ctx
)){
...
...
@@ -266,7 +266,7 @@ qeth_eddp_copy_data_tcp(char *dst, struct qeth_eddp_data *eddp, int len,
int
left_in_frag
;
int
copy_len
;
u8
*
src
;
QETH_DBF_TEXT
(
trace
,
5
,
"eddpcdtc"
);
if
(
skb_shinfo
(
eddp
->
skb
)
->
nr_frags
==
0
)
{
memcpy
(
dst
,
eddp
->
skb
->
data
+
eddp
->
skb_offset
,
len
);
...
...
@@ -408,7 +408,7 @@ __qeth_eddp_fill_context_tcp(struct qeth_eddp_context *ctx,
struct
tcphdr
*
tcph
;
int
data_len
;
u32
hcsum
;
QETH_DBF_TEXT
(
trace
,
5
,
"eddpftcp"
);
eddp
->
skb_offset
=
sizeof
(
struct
qeth_hdr
)
+
eddp
->
nhl
+
eddp
->
thl
;
if
(
eddp
->
qh
.
hdr
.
l2
.
id
==
QETH_HEADER_TYPE_LAYER2
)
{
...
...
@@ -465,13 +465,13 @@ __qeth_eddp_fill_context_tcp(struct qeth_eddp_context *ctx,
eddp
->
th
.
tcp
.
h
.
seq
+=
data_len
;
}
}
static
inline
int
qeth_eddp_fill_context_tcp
(
struct
qeth_eddp_context
*
ctx
,
struct
sk_buff
*
skb
,
struct
qeth_hdr
*
qhdr
)
{
struct
qeth_eddp_data
*
eddp
=
NULL
;
QETH_DBF_TEXT
(
trace
,
5
,
"eddpficx"
);
/* create our segmentation headers and copy original headers */
if
(
skb
->
protocol
==
ETH_P_IP
)
...
...
@@ -512,7 +512,7 @@ qeth_eddp_calc_num_pages(struct qeth_eddp_context *ctx, struct sk_buff *skb,
int
hdr_len
)
{
int
skbs_per_page
;
QETH_DBF_TEXT
(
trace
,
5
,
"eddpcanp"
);
/* can we put multiple skbs in one page? */
skbs_per_page
=
PAGE_SIZE
/
(
skb_shinfo
(
skb
)
->
tso_size
+
hdr_len
);
...
...
@@ -588,7 +588,7 @@ qeth_eddp_create_context_tcp(struct qeth_card *card, struct sk_buff *skb,
struct
qeth_hdr
*
qhdr
)
{
struct
qeth_eddp_context
*
ctx
=
NULL
;
QETH_DBF_TEXT
(
trace
,
5
,
"creddpct"
);
if
(
skb
->
protocol
==
ETH_P_IP
)
ctx
=
qeth_eddp_create_context_generic
(
card
,
skb
,
...
...
drivers/s390/net/qeth_fs.h
View file @
89f8185e
...
...
@@ -42,7 +42,7 @@ qeth_create_device_attributes_osn(struct device *dev);
extern
void
qeth_remove_device_attributes_osn
(
struct
device
*
dev
);
extern
int
qeth_create_driver_attributes
(
void
);
...
...
drivers/s390/net/qeth_main.c
View file @
89f8185e
This diff is collapsed.
Click to expand it.
drivers/s390/net/qeth_mpc.h
View file @
89f8185e
...
...
@@ -445,7 +445,7 @@ enum qeth_ipa_arp_return_codes {
/* Helper functions */
#define IS_IPA_REPLY(cmd) ((cmd->hdr.initiator == IPA_CMD_INITIATOR_HOST) || \
(cmd->hdr.initiator == IPA_CMD_INITIATOR_OSA_REPLY))
/*****************************************************************************/
/* END OF IP Assist related definitions */
/*****************************************************************************/
...
...
@@ -490,7 +490,7 @@ extern unsigned char ULP_ENABLE[];
/* Layer 2 defintions */
#define QETH_PROT_LAYER2 0x08
#define QETH_PROT_TCPIP 0x03
#define QETH_PROT_OSN2 0x0a
#define QETH_PROT_OSN2 0x0a
#define QETH_ULP_ENABLE_PROT_TYPE(buffer) (buffer+0x50)
#define QETH_IPA_CMD_PROT_TYPE(buffer) (buffer+0x19)
...
...
drivers/s390/net/qeth_proc.c
View file @
89f8185e
...
...
@@ -36,7 +36,7 @@ qeth_procfile_seq_start(struct seq_file *s, loff_t *offset)
{
struct
device
*
dev
=
NULL
;
loff_t
nr
=
0
;
down_read
(
&
qeth_ccwgroup_driver
.
driver
.
bus
->
subsys
.
rwsem
);
if
(
*
offset
==
0
)
return
SEQ_START_TOKEN
;
...
...
@@ -60,8 +60,8 @@ static void *
qeth_procfile_seq_next
(
struct
seq_file
*
s
,
void
*
it
,
loff_t
*
offset
)
{
struct
device
*
prev
,
*
next
;
if
(
it
==
SEQ_START_TOKEN
)
if
(
it
==
SEQ_START_TOKEN
)
prev
=
NULL
;
else
prev
=
(
struct
device
*
)
it
;
...
...
@@ -180,7 +180,7 @@ qeth_perf_procfile_seq_show(struct seq_file *s, void *it)
struct
device
*
device
;
struct
qeth_card
*
card
;
if
(
it
==
SEQ_START_TOKEN
)
return
0
;
...
...
drivers/s390/net/qeth_sys.c
View file @
89f8185e
...
...
@@ -785,7 +785,7 @@ qeth_dev_large_send_store(struct device *dev, struct device_attribute *attr, con
}
if
(
card
->
options
.
large_send
==
type
)
return
count
;
if
((
rc
=
qeth_set_large_send
(
card
,
type
)))
if
((
rc
=
qeth_set_large_send
(
card
,
type
)))
return
rc
;
return
count
;
}
...
...
@@ -1682,7 +1682,7 @@ qeth_create_device_attributes(struct device *dev)
if
(
card
->
info
.
type
==
QETH_CARD_TYPE_OSN
)
return
sysfs_create_group
(
&
dev
->
kobj
,
&
qeth_osn_device_attr_group
);
if
((
ret
=
sysfs_create_group
(
&
dev
->
kobj
,
&
qeth_device_attr_group
)))
return
ret
;
if
((
ret
=
sysfs_create_group
(
&
dev
->
kobj
,
&
qeth_device_ipato_group
))){
...
...
@@ -1713,7 +1713,7 @@ qeth_remove_device_attributes(struct device *dev)
if
(
card
->
info
.
type
==
QETH_CARD_TYPE_OSN
)
return
sysfs_remove_group
(
&
dev
->
kobj
,
&
qeth_osn_device_attr_group
);
sysfs_remove_group
(
&
dev
->
kobj
,
&
qeth_device_attr_group
);
sysfs_remove_group
(
&
dev
->
kobj
,
&
qeth_device_ipato_group
);
sysfs_remove_group
(
&
dev
->
kobj
,
&
qeth_device_vipa_group
);
...
...
drivers/s390/net/qeth_tso.h
View file @
89f8185e
...
...
@@ -117,11 +117,11 @@ __qeth_fill_buffer_frag(struct sk_buff *skb, struct qdio_buffer *buffer,
int
fragno
;
unsigned
long
addr
;
int
element
,
cnt
,
dlen
;
fragno
=
skb_shinfo
(
skb
)
->
nr_frags
;
element
=
*
next_element_to_fill
;
dlen
=
0
;
if
(
is_tso
)
buffer
->
element
[
element
].
flags
=
SBAL_FLAGS_MIDDLE_FRAG
;
...
...
drivers/serial/cpm_uart/cpm_uart_core.c
View file @
89f8185e
...
...
@@ -1164,14 +1164,16 @@ static int __init cpm_uart_console_setup(struct console *co, char *options)
struct
fs_uart_platform_info
*
pdata
;
struct
platform_device
*
pdev
=
early_uart_get_pdev
(
co
->
index
);
port
=
(
struct
uart_port
*
)
&
cpm_uart_ports
[
cpm_uart_port_map
[
co
->
index
]];
pinfo
=
(
struct
uart_cpm_port
*
)
port
;
if
(
!
pdev
)
{
pr_info
(
"cpm_uart: console: compat mode
\n
"
);
/* compatibility - will be cleaned up */
cpm_uart_init_portdesc
();
}
port
=
(
struct
uart_port
*
)
&
cpm_uart_ports
[
cpm_uart_port_map
[
co
->
index
]];
pinfo
=
(
struct
uart_cpm_port
*
)
port
;
if
(
!
pdev
)
{
if
(
pinfo
->
set_lineif
)
pinfo
->
set_lineif
(
pinfo
);
}
else
{
...
...
drivers/serial/cpm_uart/cpm_uart_cpm2.c
View file @
89f8185e
...
...
@@ -213,7 +213,7 @@ int cpm_uart_allocbuf(struct uart_cpm_port *pinfo, unsigned int is_con)
L1_CACHE_ALIGN
(
pinfo
->
tx_nrfifos
*
pinfo
->
tx_fifosize
);
if
(
is_con
)
{
mem_addr
=
alloc_bootmem
(
memsz
);
dma_addr
=
mem_addr
;
dma_addr
=
virt_to_bus
(
mem_addr
)
;
}
else
mem_addr
=
dma_alloc_coherent
(
NULL
,
memsz
,
&
dma_addr
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment