Loading arch/arm/configs/bast_defconfig +0 −1 Original line number Diff line number Diff line Loading @@ -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 Loading arch/arm/configs/s3c2410_defconfig +0 −1 Original line number Diff line number Diff line Loading @@ -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 Loading arch/arm/mach-s3c2410/mach-bast.c +37 −0 Original line number Diff line number Diff line Loading @@ -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> Loading Loading @@ -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" Loading Loading @@ -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 */ Loading @@ -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[] = { Loading drivers/serial/8250_pci.c +31 −20 Original line number Diff line number Diff line Loading @@ -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. */ Loading Loading @@ -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, Loading Loading @@ -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, Loading Loading @@ -1755,13 +1766,11 @@ 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); pci_set_drvdata(dev, NULL); if (priv) { struct pci_serial_quirk *quirk; int i; pci_set_drvdata(dev, NULL); for (i = 0; i < priv->nr; i++) serial8250_unregister_port(priv->line[i]); Loading @@ -1782,7 +1791,6 @@ static void __devexit pciserial_remove_one(struct pci_dev *dev) kfree(priv); } } static int pciserial_suspend_one(struct pci_dev *dev, pm_message_t state) { Loading Loading @@ -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 }, Loading drivers/serial/Kconfig +0 −7 Original line number Diff line number Diff line Loading @@ -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 Loading Loading
arch/arm/configs/bast_defconfig +0 −1 Original line number Diff line number Diff line Loading @@ -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 Loading
arch/arm/configs/s3c2410_defconfig +0 −1 Original line number Diff line number Diff line Loading @@ -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 Loading
arch/arm/mach-s3c2410/mach-bast.c +37 −0 Original line number Diff line number Diff line Loading @@ -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> Loading Loading @@ -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" Loading Loading @@ -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 */ Loading @@ -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[] = { Loading
drivers/serial/8250_pci.c +31 −20 Original line number Diff line number Diff line Loading @@ -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. */ Loading Loading @@ -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, Loading Loading @@ -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, Loading Loading @@ -1755,13 +1766,11 @@ 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); pci_set_drvdata(dev, NULL); if (priv) { struct pci_serial_quirk *quirk; int i; pci_set_drvdata(dev, NULL); for (i = 0; i < priv->nr; i++) serial8250_unregister_port(priv->line[i]); Loading @@ -1782,7 +1791,6 @@ static void __devexit pciserial_remove_one(struct pci_dev *dev) kfree(priv); } } static int pciserial_suspend_one(struct pci_dev *dev, pm_message_t state) { Loading Loading @@ -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 }, Loading
drivers/serial/Kconfig +0 −7 Original line number Diff line number Diff line Loading @@ -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 Loading