git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This commit was manufactured by cvs2svn to create tag
[linux-2.6.git]
/
drivers
/
s390
/
net
/
ctctty.c
diff --git
a/drivers/s390/net/ctctty.c
b/drivers/s390/net/ctctty.c
index
6290b5c
..
52d1da3
100644
(file)
--- a/
drivers/s390/net/ctctty.c
+++ b/
drivers/s390/net/ctctty.c
@@
-1,5
+1,5
@@
/*
/*
- * $Id: ctctty.c,v 1.2
6 2004/08/04 11:06:55 mschwide
Exp $
+ * $Id: ctctty.c,v 1.2
1 2004/07/02 16:31:22 ptiedem
Exp $
*
* CTC / ESCON network driver, tty interface.
*
*
* CTC / ESCON network driver, tty interface.
*
@@
-27,7
+27,6
@@
#include <linux/tty.h>
#include <linux/serial_reg.h>
#include <linux/interrupt.h>
#include <linux/tty.h>
#include <linux/serial_reg.h>
#include <linux/interrupt.h>
-#include <linux/delay.h>
#include <asm/uaccess.h>
#include <linux/devfs_fs_kernel.h>
#include "ctctty.h"
#include <asm/uaccess.h>
#include <linux/devfs_fs_kernel.h>
#include "ctctty.h"
@@
-105,7
+104,7
@@
ctc_tty_try_read(ctc_tty_info * info, struct sk_buff *skb)
int len;
struct tty_struct *tty;
int len;
struct tty_struct *tty;
- DBF_TEXT(trace,
5
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if ((tty = info->tty)) {
if (info->mcr & UART_MCR_RTS) {
c = TTY_FLIPBUF_SIZE - tty->flip.count;
if ((tty = info->tty)) {
if (info->mcr & UART_MCR_RTS) {
c = TTY_FLIPBUF_SIZE - tty->flip.count;
@@
-135,7
+134,7
@@
ctc_tty_readmodem(ctc_tty_info *info)
int ret = 1;
struct tty_struct *tty;
int ret = 1;
struct tty_struct *tty;
- DBF_TEXT(trace,
5
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if ((tty = info->tty)) {
if (info->mcr & UART_MCR_RTS) {
int c = TTY_FLIPBUF_SIZE - tty->flip.count;
if ((tty = info->tty)) {
if (info->mcr & UART_MCR_RTS) {
int c = TTY_FLIPBUF_SIZE - tty->flip.count;
@@
-169,7
+168,7
@@
ctc_tty_setcarrier(struct net_device *netdev, int on)
{
int i;
{
int i;
- DBF_TEXT(trace,
4
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if ((!driver) || ctc_tty_shuttingdown)
return;
for (i = 0; i < CTC_TTY_MAX_DEVICES; i++)
if ((!driver) || ctc_tty_shuttingdown)
return;
for (i = 0; i < CTC_TTY_MAX_DEVICES; i++)
@@
-190,7
+189,7
@@
ctc_tty_netif_rx(struct sk_buff *skb)
int i;
ctc_tty_info *info = NULL;
int i;
ctc_tty_info *info = NULL;
- DBF_TEXT(trace,
5
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (!skb)
return;
if ((!skb->dev) || (!driver) || ctc_tty_shuttingdown) {
if (!skb)
return;
if ((!skb->dev) || (!driver) || ctc_tty_shuttingdown) {
@@
-255,7
+254,7
@@
ctc_tty_tint(ctc_tty_info * info)
int wake = 1;
int rc;
int wake = 1;
int rc;
- DBF_TEXT(trace,
4
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (!info->netdev) {
if (skb)
kfree_skb(skb);
if (!info->netdev) {
if (skb)
kfree_skb(skb);
@@
-348,7
+347,7
@@
ctc_tty_inject(ctc_tty_info *info, char c)
int skb_res;
struct sk_buff *skb;
int skb_res;
struct sk_buff *skb;
- DBF_TEXT(trace,
4
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (ctc_tty_shuttingdown)
return;
skb_res = info->netdev->hard_header_len + sizeof(info->mcr) +
if (ctc_tty_shuttingdown)
return;
skb_res = info->netdev->hard_header_len + sizeof(info->mcr) +
@@
-369,7
+368,7
@@
ctc_tty_inject(ctc_tty_info *info, char c)
static void
ctc_tty_transmit_status(ctc_tty_info *info)
{
static void
ctc_tty_transmit_status(ctc_tty_info *info)
{
- DBF_TEXT(trace,
5
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (ctc_tty_shuttingdown)
return;
info->flags |= CTC_ASYNC_TX_LINESTAT;
if (ctc_tty_shuttingdown)
return;
info->flags |= CTC_ASYNC_TX_LINESTAT;
@@
-383,7
+382,7
@@
ctc_tty_change_speed(ctc_tty_info * info)
unsigned int quot;
int i;
unsigned int quot;
int i;
- DBF_TEXT(trace,
3
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (!info->tty || !info->tty->termios)
return;
cflag = info->tty->termios->c_cflag;
if (!info->tty || !info->tty->termios)
return;
cflag = info->tty->termios->c_cflag;
@@
-422,7
+421,7
@@
ctc_tty_change_speed(ctc_tty_info * info)
static int
ctc_tty_startup(ctc_tty_info * info)
{
static int
ctc_tty_startup(ctc_tty_info * info)
{
- DBF_TEXT(trace,
3
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (info->flags & CTC_ASYNC_INITIALIZED)
return 0;
#ifdef CTC_DEBUG_MODEM_OPEN
if (info->flags & CTC_ASYNC_INITIALIZED)
return 0;
#ifdef CTC_DEBUG_MODEM_OPEN
@@
-465,7
+464,7
@@
ctc_tty_stopdev(unsigned long data)
static void
ctc_tty_shutdown(ctc_tty_info * info)
{
static void
ctc_tty_shutdown(ctc_tty_info * info)
{
- DBF_TEXT(trace,
3
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (!(info->flags & CTC_ASYNC_INITIALIZED))
return;
#ifdef CTC_DEBUG_MODEM_OPEN
if (!(info->flags & CTC_ASYNC_INITIALIZED))
return;
#ifdef CTC_DEBUG_MODEM_OPEN
@@
-498,7
+497,7
@@
ctc_tty_write(struct tty_struct *tty, int from_user, const u_char * buf, int cou
int total = 0;
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
int total = 0;
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
- DBF_TEXT(trace,
5
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (ctc_tty_shuttingdown)
goto ex;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_write"))
if (ctc_tty_shuttingdown)
goto ex;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_write"))
@@
-576,7
+575,7
@@
ctc_tty_flush_buffer(struct tty_struct *tty)
ctc_tty_info *info;
unsigned long flags;
ctc_tty_info *info;
unsigned long flags;
- DBF_TEXT(trace,
4
, __FUNCTION__);
+ DBF_TEXT(trace,
2
, __FUNCTION__);
if (!tty)
goto ex;
spin_lock_irqsave(&ctc_tty_lock, flags);
if (!tty)
goto ex;
spin_lock_irqsave(&ctc_tty_lock, flags);
@@
-602,7
+601,6
@@
ctc_tty_flush_chars(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_shuttingdown)
return;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_flush_chars"))
if (ctc_tty_shuttingdown)
return;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_flush_chars"))
@@
-625,7
+623,6
@@
ctc_tty_throttle(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_throttle"))
return;
info->mcr &= ~UART_MCR_RTS;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_throttle"))
return;
info->mcr &= ~UART_MCR_RTS;
@@
-639,7
+636,6
@@
ctc_tty_unthrottle(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_unthrottle"))
return;
info->mcr |= UART_MCR_RTS;
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_unthrottle"))
return;
info->mcr |= UART_MCR_RTS;
@@
-671,7
+667,6
@@
ctc_tty_get_lsr_info(ctc_tty_info * info, uint __user *value)
uint result;
ulong flags;
uint result;
ulong flags;
- DBF_TEXT(trace, 4, __FUNCTION__);
spin_lock_irqsave(&ctc_tty_lock, flags);
status = info->lsr;
spin_unlock_irqrestore(&ctc_tty_lock, flags);
spin_lock_irqsave(&ctc_tty_lock, flags);
status = info->lsr;
spin_unlock_irqrestore(&ctc_tty_lock, flags);
@@
-689,7
+684,6
@@
static int ctc_tty_tiocmget(struct tty_struct *tty, struct file *file)
uint result;
ulong flags;
uint result;
ulong flags;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
@@
-714,7
+708,6
@@
ctc_tty_tiocmset(struct tty_struct *tty, struct file *file,
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
@@
-743,7
+736,6
@@
ctc_tty_ioctl(struct tty_struct *tty, struct file *file,
int error;
int retval;
int error;
int retval;
- DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_ioctl"))
return -ENODEV;
if (tty->flags & (1 << TTY_IO_ERROR))
@@
-811,8
+803,6
@@
ctc_tty_set_termios(struct tty_struct *tty, struct termios *old_termios)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
unsigned int cflag = tty->termios->c_cflag;
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
unsigned int cflag = tty->termios->c_cflag;
-
- DBF_TEXT(trace, 4, __FUNCTION__);
ctc_tty_change_speed(info);
/* Handle transition to B0 */
ctc_tty_change_speed(info);
/* Handle transition to B0 */
@@
-850,7
+840,6
@@
ctc_tty_block_til_ready(struct tty_struct *tty, struct file *filp, ctc_tty_info
unsigned long flags;
int retval;
unsigned long flags;
int retval;
- DBF_TEXT(trace, 4, __FUNCTION__);
/*
* If the device is in the middle of being closed, then block
* until it's done, and then try again.
/*
* If the device is in the middle of being closed, then block
* until it's done, and then try again.
@@
-955,7
+944,6
@@
ctc_tty_open(struct tty_struct *tty, struct file *filp)
int retval,
line;
int retval,
line;
- DBF_TEXT(trace, 3, __FUNCTION__);
line = tty->index;
if (line < 0 || line > CTC_TTY_MAX_DEVICES)
return -ENODEV;
line = tty->index;
if (line < 0 || line > CTC_TTY_MAX_DEVICES)
return -ENODEV;
@@
-1002,7
+990,7
@@
ctc_tty_close(struct tty_struct *tty, struct file *filp)
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
ulong flags;
ulong timeout;
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
ulong flags;
ulong timeout;
- DBF_TEXT(trace, 3, __FUNCTION__);
+
if (!info || ctc_tty_paranoia_check(info, tty->name, "ctc_tty_close"))
return;
spin_lock_irqsave(&ctc_tty_lock, flags);
if (!info || ctc_tty_paranoia_check(info, tty->name, "ctc_tty_close"))
return;
spin_lock_irqsave(&ctc_tty_lock, flags);
@@
-1054,8
+1042,9
@@
ctc_tty_close(struct tty_struct *tty, struct file *filp)
*/
timeout = jiffies + HZ;
while (!(info->lsr & UART_LSR_TEMT)) {
*/
timeout = jiffies + HZ;
while (!(info->lsr & UART_LSR_TEMT)) {
+ set_current_state(TASK_INTERRUPTIBLE);
spin_unlock_irqrestore(&ctc_tty_lock, flags);
spin_unlock_irqrestore(&ctc_tty_lock, flags);
-
msleep(500
);
+
schedule_timeout(HZ/2
);
spin_lock_irqsave(&ctc_tty_lock, flags);
if (time_after(jiffies,timeout))
break;
spin_lock_irqsave(&ctc_tty_lock, flags);
if (time_after(jiffies,timeout))
break;
@@
-1091,7
+1080,6
@@
ctc_tty_hangup(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *)tty->driver_data;
unsigned long saveflags;
{
ctc_tty_info *info = (ctc_tty_info *)tty->driver_data;
unsigned long saveflags;
- DBF_TEXT(trace, 3, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_hangup"))
return;
ctc_tty_shutdown(info);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_hangup"))
return;
ctc_tty_shutdown(info);
@@
-1115,7
+1103,6
@@
ctc_tty_task(unsigned long arg)
unsigned long saveflags;
int again;
unsigned long saveflags;
int again;
- DBF_TEXT(trace, 3, __FUNCTION__);
spin_lock_irqsave(&ctc_tty_lock, saveflags);
if ((!ctc_tty_shuttingdown) && info) {
again = ctc_tty_tint(info);
spin_lock_irqsave(&ctc_tty_lock, saveflags);
if ((!ctc_tty_shuttingdown) && info) {
again = ctc_tty_tint(info);
@@
-1153,7
+1140,6
@@
ctc_tty_init(void)
ctc_tty_info *info;
struct tty_driver *device;
ctc_tty_info *info;
struct tty_driver *device;
- DBF_TEXT(trace, 2, __FUNCTION__);
driver = kmalloc(sizeof(ctc_tty_driver), GFP_KERNEL);
if (driver == NULL) {
printk(KERN_WARNING "Out of memory in ctc_tty_modem_init\n");
driver = kmalloc(sizeof(ctc_tty_driver), GFP_KERNEL);
if (driver == NULL) {
printk(KERN_WARNING "Out of memory in ctc_tty_modem_init\n");
@@
-1213,7
+1199,6
@@
ctc_tty_register_netdev(struct net_device *dev) {
char *err;
char *p;
char *err;
char *p;
- DBF_TEXT(trace, 2, __FUNCTION__);
if ((!dev) || (!dev->name)) {
printk(KERN_WARNING
"ctc_tty_register_netdev called "
if ((!dev) || (!dev->name)) {
printk(KERN_WARNING
"ctc_tty_register_netdev called "
@@
-1261,7
+1246,6
@@
ctc_tty_unregister_netdev(struct net_device *dev) {
unsigned long saveflags;
ctc_tty_info *info = NULL;
unsigned long saveflags;
ctc_tty_info *info = NULL;
- DBF_TEXT(trace, 2, __FUNCTION__);
spin_lock_irqsave(&ctc_tty_lock, saveflags);
for (i = 0; i < CTC_TTY_MAX_DEVICES; i++)
if (driver->info[i].netdev == dev) {
spin_lock_irqsave(&ctc_tty_lock, saveflags);
for (i = 0; i < CTC_TTY_MAX_DEVICES; i++)
if (driver->info[i].netdev == dev) {
@@
-1280,7
+1264,6
@@
void
ctc_tty_cleanup(void) {
unsigned long saveflags;
ctc_tty_cleanup(void) {
unsigned long saveflags;
- DBF_TEXT(trace, 2, __FUNCTION__);
spin_lock_irqsave(&ctc_tty_lock, saveflags);
ctc_tty_shuttingdown = 1;
spin_unlock_irqrestore(&ctc_tty_lock, saveflags);
spin_lock_irqsave(&ctc_tty_lock, saveflags);
ctc_tty_shuttingdown = 1;
spin_unlock_irqrestore(&ctc_tty_lock, saveflags);