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
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