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
7f729ccf
Commit
7f729ccf
authored
Nov 13, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/home/rmk/linux-2.6-serial
parents
cbc74951
ee31b337
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
82 additions
and
65 deletions
+82
-65
drivers/serial/8250.c
drivers/serial/8250.c
+4
-1
drivers/serial/8250_pnp.c
drivers/serial/8250_pnp.c
+2
-0
drivers/serial/dz.c
drivers/serial/dz.c
+24
-24
drivers/serial/mpc52xx_uart.c
drivers/serial/mpc52xx_uart.c
+2
-2
drivers/serial/sa1100.c
drivers/serial/sa1100.c
+1
-3
drivers/serial/serial_core.c
drivers/serial/serial_core.c
+49
-35
No files found.
drivers/serial/8250.c
View file @
7f729ccf
...
@@ -999,6 +999,9 @@ static void autoconfig(struct uart_8250_port *up, unsigned int probeflags)
...
@@ -999,6 +999,9 @@ static void autoconfig(struct uart_8250_port *up, unsigned int probeflags)
serial_outp
(
up
,
UART_MCR
,
save_mcr
);
serial_outp
(
up
,
UART_MCR
,
save_mcr
);
serial8250_clear_fifos
(
up
);
serial8250_clear_fifos
(
up
);
(
void
)
serial_in
(
up
,
UART_RX
);
(
void
)
serial_in
(
up
,
UART_RX
);
if
(
up
->
capabilities
&
UART_CAP_UUE
)
serial_outp
(
up
,
UART_IER
,
UART_IER_UUE
);
else
serial_outp
(
up
,
UART_IER
,
0
);
serial_outp
(
up
,
UART_IER
,
0
);
out:
out:
...
...
drivers/serial/8250_pnp.c
View file @
7f729ccf
...
@@ -323,6 +323,8 @@ static const struct pnp_device_id pnp_dev_table[] = {
...
@@ -323,6 +323,8 @@ static const struct pnp_device_id pnp_dev_table[] = {
{
"USR9180"
,
0
},
{
"USR9180"
,
0
},
/* U.S. Robotics 56K Voice INT PnP*/
/* U.S. Robotics 56K Voice INT PnP*/
{
"USR9190"
,
0
},
{
"USR9190"
,
0
},
/* HP Compaq Tablet PC tc1100 Wacom tablet */
{
"WACF005"
,
0
},
/* Rockwell's (PORALiNK) 33600 INT PNP */
/* Rockwell's (PORALiNK) 33600 INT PNP */
{
"WCI0003"
,
0
},
{
"WCI0003"
,
0
},
/* Unkown PnP modems */
/* Unkown PnP modems */
...
...
drivers/serial/dz.c
View file @
7f729ccf
...
@@ -645,9 +645,9 @@ static void __init dz_init_ports(void)
...
@@ -645,9 +645,9 @@ static void __init dz_init_ports(void)
if
(
mips_machtype
==
MACH_DS23100
||
if
(
mips_machtype
==
MACH_DS23100
||
mips_machtype
==
MACH_DS5100
)
mips_machtype
==
MACH_DS5100
)
base
=
(
unsigned
long
)
KN01_DZ11_BASE
;
base
=
CKSEG1ADDR
(
KN01_SLOT_BASE
+
KN01_DZ11
)
;
else
else
base
=
(
unsigned
long
)
KN02_DZ11_BASE
;
base
=
CKSEG1ADDR
(
KN02_SLOT_BASE
+
KN02_DZ11
)
;
for
(
i
=
0
,
dport
=
dz_ports
;
i
<
DZ_NB_PORT
;
i
++
,
dport
++
)
{
for
(
i
=
0
,
dport
=
dz_ports
;
i
<
DZ_NB_PORT
;
i
++
,
dport
++
)
{
spin_lock_init
(
&
dport
->
port
.
lock
);
spin_lock_init
(
&
dport
->
port
.
lock
);
...
...
drivers/serial/mpc52xx_uart.c
View file @
7f729ccf
...
@@ -725,7 +725,7 @@ mpc52xx_uart_probe(struct platform_device *dev)
...
@@ -725,7 +725,7 @@ mpc52xx_uart_probe(struct platform_device *dev)
int
i
,
idx
,
ret
;
int
i
,
idx
,
ret
;
/* Check validity & presence */
/* Check validity & presence */
idx
=
p
dev
->
id
;
idx
=
dev
->
id
;
if
(
idx
<
0
||
idx
>=
MPC52xx_PSC_MAXNUM
)
if
(
idx
<
0
||
idx
>=
MPC52xx_PSC_MAXNUM
)
return
-
EINVAL
;
return
-
EINVAL
;
...
@@ -748,7 +748,7 @@ mpc52xx_uart_probe(struct platform_device *dev)
...
@@ -748,7 +748,7 @@ mpc52xx_uart_probe(struct platform_device *dev)
port
->
ops
=
&
mpc52xx_uart_ops
;
port
->
ops
=
&
mpc52xx_uart_ops
;
/* Search for IRQ and mapbase */
/* Search for IRQ and mapbase */
for
(
i
=
0
;
i
<
p
dev
->
num_resources
;
i
++
,
res
++
)
{
for
(
i
=
0
;
i
<
dev
->
num_resources
;
i
++
,
res
++
)
{
if
(
res
->
flags
&
IORESOURCE_MEM
)
if
(
res
->
flags
&
IORESOURCE_MEM
)
port
->
mapbase
=
res
->
start
;
port
->
mapbase
=
res
->
start
;
else
if
(
res
->
flags
&
IORESOURCE_IRQ
)
else
if
(
res
->
flags
&
IORESOURCE_IRQ
)
...
...
drivers/serial/sa1100.c
View file @
7f729ccf
...
@@ -156,7 +156,7 @@ static void sa1100_stop_tx(struct uart_port *port)
...
@@ -156,7 +156,7 @@ static void sa1100_stop_tx(struct uart_port *port)
}
}
/*
/*
*
interrupts may not be disabled on entry
*
port locked and interrupts disabled
*/
*/
static
void
sa1100_start_tx
(
struct
uart_port
*
port
)
static
void
sa1100_start_tx
(
struct
uart_port
*
port
)
{
{
...
@@ -164,11 +164,9 @@ static void sa1100_start_tx(struct uart_port *port)
...
@@ -164,11 +164,9 @@ static void sa1100_start_tx(struct uart_port *port)
unsigned
long
flags
;
unsigned
long
flags
;
u32
utcr3
;
u32
utcr3
;
spin_lock_irqsave
(
&
sport
->
port
.
lock
,
flags
);
utcr3
=
UART_GET_UTCR3
(
sport
);
utcr3
=
UART_GET_UTCR3
(
sport
);
sport
->
port
.
read_status_mask
|=
UTSR0_TO_SM
(
UTSR0_TFS
);
sport
->
port
.
read_status_mask
|=
UTSR0_TO_SM
(
UTSR0_TFS
);
UART_PUT_UTCR3
(
sport
,
utcr3
|
UTCR3_TIE
);
UART_PUT_UTCR3
(
sport
,
utcr3
|
UTCR3_TIE
);
spin_unlock_irqrestore
(
&
sport
->
port
.
lock
,
flags
);
}
}
/*
/*
...
...
drivers/serial/serial_core.c
View file @
7f729ccf
...
@@ -209,8 +209,14 @@ static void uart_shutdown(struct uart_state *state)
...
@@ -209,8 +209,14 @@ static void uart_shutdown(struct uart_state *state)
struct
uart_info
*
info
=
state
->
info
;
struct
uart_info
*
info
=
state
->
info
;
struct
uart_port
*
port
=
state
->
port
;
struct
uart_port
*
port
=
state
->
port
;
if
(
!
(
info
->
flags
&
UIF_INITIALIZED
))
/*
return
;
* Set the TTY IO error marker
*/
if
(
info
->
tty
)
set_bit
(
TTY_IO_ERROR
,
&
info
->
tty
->
flags
);
if
(
info
->
flags
&
UIF_INITIALIZED
)
{
info
->
flags
&=
~
UIF_INITIALIZED
;
/*
/*
* Turn off DTR and RTS early.
* Turn off DTR and RTS early.
...
@@ -236,6 +242,12 @@ static void uart_shutdown(struct uart_state *state)
...
@@ -236,6 +242,12 @@ static void uart_shutdown(struct uart_state *state)
* Ensure that the IRQ handler isn't running on another CPU.
* Ensure that the IRQ handler isn't running on another CPU.
*/
*/
synchronize_irq
(
port
->
irq
);
synchronize_irq
(
port
->
irq
);
}
/*
* kill off our tasklet
*/
tasklet_kill
(
&
info
->
tlet
);
/*
/*
* Free the transmit buffer page.
* Free the transmit buffer page.
...
@@ -244,15 +256,6 @@ static void uart_shutdown(struct uart_state *state)
...
@@ -244,15 +256,6 @@ static void uart_shutdown(struct uart_state *state)
free_page
((
unsigned
long
)
info
->
xmit
.
buf
);
free_page
((
unsigned
long
)
info
->
xmit
.
buf
);
info
->
xmit
.
buf
=
NULL
;
info
->
xmit
.
buf
=
NULL
;
}
}
/*
* kill off our tasklet
*/
tasklet_kill
(
&
info
->
tlet
);
if
(
info
->
tty
)
set_bit
(
TTY_IO_ERROR
,
&
info
->
tty
->
flags
);
info
->
flags
&=
~
UIF_INITIALIZED
;
}
}
/**
/**
...
@@ -1928,14 +1931,25 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *port)
...
@@ -1928,14 +1931,25 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *port)
if
(
state
->
info
&&
state
->
info
->
flags
&
UIF_INITIALIZED
)
{
if
(
state
->
info
&&
state
->
info
->
flags
&
UIF_INITIALIZED
)
{
struct
uart_ops
*
ops
=
port
->
ops
;
struct
uart_ops
*
ops
=
port
->
ops
;
int
ret
;
ops
->
set_mctrl
(
port
,
0
);
ops
->
set_mctrl
(
port
,
0
);
ops
->
startup
(
port
);
ret
=
ops
->
startup
(
port
);
if
(
ret
==
0
)
{
uart_change_speed
(
state
,
NULL
);
uart_change_speed
(
state
,
NULL
);
spin_lock_irq
(
&
port
->
lock
);
spin_lock_irq
(
&
port
->
lock
);
ops
->
set_mctrl
(
port
,
port
->
mctrl
);
ops
->
set_mctrl
(
port
,
port
->
mctrl
);
ops
->
start_tx
(
port
);
ops
->
start_tx
(
port
);
spin_unlock_irq
(
&
port
->
lock
);
spin_unlock_irq
(
&
port
->
lock
);
}
else
{
/*
* Failed to resume - maybe hardware went away?
* Clear the "initialized" flag so we won't try
* to call the low level drivers shutdown method.
*/
state
->
info
->
flags
&=
~
UIF_INITIALIZED
;
uart_shutdown
(
state
);
}
}
}
up
(
&
state
->
sem
);
up
(
&
state
->
sem
);
...
...
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