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
nexedi
linux
Commits
2c2a68b8
Commit
2c2a68b8
authored
Jul 23, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/home/rmk/linux-2.6-serial
parents
c94c0d20
056a8763
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
70 additions
and
110 deletions
+70
-110
arch/arm/configs/bast_defconfig
arch/arm/configs/bast_defconfig
+0
-1
arch/arm/configs/s3c2410_defconfig
arch/arm/configs/s3c2410_defconfig
+0
-1
arch/arm/mach-s3c2410/mach-bast.c
arch/arm/mach-s3c2410/mach-bast.c
+37
-0
drivers/serial/8250_pci.c
drivers/serial/8250_pci.c
+31
-20
drivers/serial/Kconfig
drivers/serial/Kconfig
+0
-7
drivers/serial/Makefile
drivers/serial/Makefile
+0
-1
drivers/serial/bast_sio.c
drivers/serial/bast_sio.c
+0
-80
include/linux/pci_ids.h
include/linux/pci_ids.h
+2
-0
No files found.
arch/arm/configs/bast_defconfig
View file @
2c2a68b8
...
...
@@ -561,7 +561,6 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y
#
CONFIG_SERIAL_S3C2410=y
CONFIG_SERIAL_S3C2410_CONSOLE=y
CONFIG_SERIAL_BAST_SIO=y
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
...
...
arch/arm/configs/s3c2410_defconfig
View file @
2c2a68b8
...
...
@@ -570,7 +570,6 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y
#
CONFIG_SERIAL_S3C2410=y
CONFIG_SERIAL_S3C2410_CONSOLE=y
CONFIG_SERIAL_BAST_SIO=y
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
...
...
arch/arm/mach-s3c2410/mach-bast.c
View file @
2c2a68b8
...
...
@@ -28,6 +28,7 @@
* 14-Mar-2006 BJD Updated for __iomem changes
* 22-Jun-2006 BJD Added DM9000 platform information
* 28-Jun-2006 BJD Moved pm functionality out to common code
* 17-Jul-2006 BJD Changed to platform device for SuperIO 16550s
*/
#include <linux/kernel.h>
...
...
@@ -64,6 +65,8 @@
#include <linux/mtd/nand_ecc.h>
#include <linux/mtd/partitions.h>
#include <linux/serial_8250.h>
#include "clock.h"
#include "devs.h"
#include "cpu.h"
...
...
@@ -351,6 +354,39 @@ static struct platform_device bast_device_dm9k = {
}
};
/* serial devices */
#define SERIAL_BASE (S3C2410_CS2 + BAST_PA_SUPERIO)
#define SERIAL_FLAGS (UPF_BOOT_AUTOCONF | UPF_IOREMAP | UPF_SHARE_IRQ)
#define SERIAL_CLK (1843200)
static
struct
plat_serial8250_port
bast_sio_data
[]
=
{
[
0
]
=
{
.
mapbase
=
SERIAL_BASE
+
0x2f8
,
.
irq
=
IRQ_PCSERIAL1
,
.
flags
=
SERIAL_FLAGS
,
.
iotype
=
UPIO_MEM
,
.
regshift
=
0
,
.
uartclk
=
SERIAL_CLK
,
},
[
1
]
=
{
.
mapbase
=
SERIAL_BASE
+
0x3f8
,
.
irq
=
IRQ_PCSERIAL2
,
.
flags
=
SERIAL_FLAGS
,
.
iotype
=
UPIO_MEM
,
.
regshift
=
0
,
.
uartclk
=
SERIAL_CLK
,
},
{
}
};
static
struct
platform_device
bast_sio
=
{
.
name
=
"serial8250"
,
.
id
=
0
,
.
dev
=
{
.
platform_data
=
&
bast_sio_data
,
},
};
/* Standard BAST devices */
...
...
@@ -364,6 +400,7 @@ static struct platform_device *bast_devices[] __initdata = {
&
s3c_device_nand
,
&
bast_device_nor
,
&
bast_device_dm9k
,
&
bast_sio
,
};
static
struct
clk
*
bast_clocks
[]
=
{
...
...
drivers/serial/8250_pci.c
View file @
2c2a68b8
...
...
@@ -389,6 +389,9 @@ static void __devexit sbs_exit(struct pci_dev *dev)
* - 10x cards have control registers in IO and/or memory space;
* - 20x cards have control registers in standard PCI configuration space.
*
* There are also Quartet Serial cards which use Oxford Semiconductor
* 16954 quad UART PCI chip clocked by 18.432 MHz quartz.
*
* Note: some SIIG cards are probed by the parport_serial object.
*/
...
...
@@ -1026,6 +1029,8 @@ enum pci_board_num_t {
pbn_b0_2_921600
,
pbn_b0_4_921600
,
pbn_b0_4_1152000
,
pbn_b0_bt_1_115200
,
pbn_b0_bt_2_115200
,
pbn_b0_bt_8_115200
,
...
...
@@ -1158,6 +1163,12 @@ static struct pci_board pci_boards[] __devinitdata = {
.
base_baud
=
921600
,
.
uart_offset
=
8
,
},
[
pbn_b0_4_1152000
]
=
{
.
flags
=
FL_BASE0
,
.
num_ports
=
4
,
.
base_baud
=
1152000
,
.
uart_offset
=
8
,
},
[
pbn_b0_bt_1_115200
]
=
{
.
flags
=
FL_BASE0
|
FL_BASE_BARS
,
...
...
@@ -1755,33 +1766,30 @@ pciserial_init_one(struct pci_dev *dev, const struct pci_device_id *ent)
static
void
__devexit
pciserial_remove_one
(
struct
pci_dev
*
dev
)
{
struct
serial_private
*
priv
=
pci_get_drvdata
(
dev
);
struct
pci_serial_quirk
*
quirk
;
int
i
;
pci_set_drvdata
(
dev
,
NULL
);
if
(
priv
)
{
struct
pci_serial_quirk
*
quirk
;
int
i
;
for
(
i
=
0
;
i
<
priv
->
nr
;
i
++
)
serial8250_unregister_port
(
priv
->
line
[
i
]);
for
(
i
=
0
;
i
<
priv
->
nr
;
i
++
)
serial8250_unregister_port
(
priv
->
line
[
i
]);
for
(
i
=
0
;
i
<
PCI_NUM_BAR_RESOURCES
;
i
++
)
{
if
(
priv
->
remapped_bar
[
i
])
iounmap
(
priv
->
remapped_bar
[
i
]);
priv
->
remapped_bar
[
i
]
=
NULL
;
}
for
(
i
=
0
;
i
<
PCI_NUM_BAR_RESOURCES
;
i
++
)
{
if
(
priv
->
remapped_bar
[
i
])
iounmap
(
priv
->
remapped_bar
[
i
]);
priv
->
remapped_bar
[
i
]
=
NULL
;
}
/*
* Find the exit quirks.
*/
quirk
=
find_quirk
(
dev
);
if
(
quirk
->
exit
)
quirk
->
exit
(
dev
);
/*
* Find the exit quirks.
*/
quirk
=
find_quirk
(
dev
);
if
(
quirk
->
exit
)
quirk
->
exit
(
dev
);
pci_disable_device
(
dev
);
pci_disable_device
(
dev
);
kfree
(
priv
);
}
kfree
(
priv
);
}
static
int
pciserial_suspend_one
(
struct
pci_dev
*
dev
,
pm_message_t
state
)
...
...
@@ -1977,6 +1985,9 @@ static struct pci_device_id serial_pci_tbl[] = {
{
PCI_VENDOR_ID_SPECIALIX
,
PCI_DEVICE_ID_OXSEMI_16PCI954
,
PCI_VENDOR_ID_SPECIALIX
,
PCI_SUBDEVICE_ID_SPECIALIX_SPEED4
,
0
,
0
,
pbn_b0_4_921600
},
{
PCI_VENDOR_ID_OXSEMI
,
PCI_DEVICE_ID_OXSEMI_16PCI954
,
PCI_SUBVENDOR_ID_SIIG
,
PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL
,
0
,
0
,
pbn_b0_4_1152000
},
{
PCI_VENDOR_ID_OXSEMI
,
PCI_DEVICE_ID_OXSEMI_16PCI954
,
PCI_ANY_ID
,
PCI_ANY_ID
,
0
,
0
,
pbn_b0_4_115200
},
...
...
drivers/serial/Kconfig
View file @
2c2a68b8
...
...
@@ -306,13 +306,6 @@ config SERIAL_S3C2410_CONSOLE
your boot loader about how to pass options to the kernel at
boot time.)
config SERIAL_BAST_SIO
bool "Support for BAST SuperIO serial ports"
depends on ARCH_BAST && SERIAL_8250=y
help
Support for registerin the SuperIO chip on BAST board with
the 8250/16550 uart code.
config SERIAL_DZ
bool "DECstation DZ serial driver"
depends on MACH_DECSTATION && MIPS32
...
...
drivers/serial/Makefile
View file @
2c2a68b8
...
...
@@ -44,7 +44,6 @@ obj-$(CONFIG_SERIAL_LH7A40X) += serial_lh7a40x.o
obj-$(CONFIG_SERIAL_AU1X00)
+=
au1x00_uart.o
obj-$(CONFIG_SERIAL_DZ)
+=
dz.o
obj-$(CONFIG_SERIAL_SH_SCI)
+=
sh-sci.o
obj-$(CONFIG_SERIAL_BAST_SIO)
+=
bast_sio.o
obj-$(CONFIG_SERIAL_SGI_L1_CONSOLE)
+=
sn_console.o
obj-$(CONFIG_SERIAL_CPM)
+=
cpm_uart/
obj-$(CONFIG_SERIAL_IMX)
+=
imx.o
...
...
drivers/serial/bast_sio.c
deleted
100644 → 0
View file @
c94c0d20
/* linux/drivers/serial/bast_sio.c
*
* Copyright (c) 2004 Simtec Electronics
* Ben Dooks <ben@simtec.co.uk>
*
* http://www.simtec.co.uk/products/EB2410ITX/
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* Modifications:
* 23-Sep-2004 BJD Added copyright header
* 23-Sep-2004 BJD Added serial port remove code
*/
#include <linux/module.h>
#include <linux/config.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/tty.h>
#include <linux/serial.h>
#include <linux/serial_core.h>
#include <linux/types.h>
#include <asm/io.h>
#include <asm/serial.h>
#include <asm/mach-types.h>
#include <asm/arch/map.h>
#include <asm/arch/irqs.h>
#include <asm/arch/bast-map.h>
#include <asm/arch/bast-irq.h>
static
int
__init
serial_bast_register
(
unsigned
long
port
,
unsigned
int
irq
)
{
struct
serial_struct
serial_req
;
serial_req
.
flags
=
UPF_AUTOPROBE
|
UPF_SHARE_IRQ
;
serial_req
.
baud_base
=
BASE_BAUD
;
serial_req
.
irq
=
irq
;
serial_req
.
io_type
=
UPIO_MEM
;
serial_req
.
iomap_base
=
port
;
serial_req
.
iomem_base
=
ioremap
(
port
,
0x10
);
serial_req
.
iomem_reg_shift
=
0
;
return
register_serial
(
&
serial_req
);
}
#define SERIAL_BASE (S3C2410_CS2 + BAST_PA_SUPERIO)
static
int
port
[
2
]
=
{
-
1
,
-
1
};
static
int
__init
serial_bast_init
(
void
)
{
if
(
machine_is_bast
())
{
port
[
0
]
=
serial_bast_register
(
SERIAL_BASE
+
0x2f8
,
IRQ_PCSERIAL1
);
port
[
1
]
=
serial_bast_register
(
SERIAL_BASE
+
0x3f8
,
IRQ_PCSERIAL2
);
}
return
0
;
}
static
void
__exit
serial_bast_exit
(
void
)
{
if
(
port
[
0
]
!=
-
1
)
unregister_serial
(
port
[
0
]);
if
(
port
[
1
]
!=
-
1
)
unregister_serial
(
port
[
1
]);
}
module_init
(
serial_bast_init
);
module_exit
(
serial_bast_exit
);
MODULE_LICENSE
(
"GPL"
);
MODULE_AUTHOR
(
"Ben Dooks, ben@simtec.co.uk"
);
MODULE_DESCRIPTION
(
"BAST Onboard Serial setup"
);
include/linux/pci_ids.h
View file @
2c2a68b8
...
...
@@ -1872,6 +1872,7 @@
#define PCI_DEVICE_ID_CBOARDS_DAS1602_16 0x0001
#define PCI_VENDOR_ID_SIIG 0x131f
#define PCI_SUBVENDOR_ID_SIIG 0x131f
#define PCI_DEVICE_ID_SIIG_1S_10x_550 0x1000
#define PCI_DEVICE_ID_SIIG_1S_10x_650 0x1001
#define PCI_DEVICE_ID_SIIG_1S_10x_850 0x1002
...
...
@@ -1909,6 +1910,7 @@
#define PCI_DEVICE_ID_SIIG_2S1P_20x_550 0x2060
#define PCI_DEVICE_ID_SIIG_2S1P_20x_650 0x2061
#define PCI_DEVICE_ID_SIIG_2S1P_20x_850 0x2062
#define PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL 0x2050
#define PCI_VENDOR_ID_RADISYS 0x1331
#define PCI_DEVICE_ID_RADISYS_ENP2611 0x0030
...
...
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