linux_dsm_epyc7002/drivers/tty/serial
Andy Shevchenko 7d8905d064 serial: 8250_pci: Enable device after we check black list
If the board we are guessing has been listed in black list we don't need
to enable it twice. The associated driver, if any, will take care about
proper initialization.

To achieve this we split out two helper functions, i.e.
serial_pci_is_class_communication() and serial_pci_is_blacklisted() which will
be called before pcim_enable_device(). We can do this since PCI specification
requires class, device and vendor ID registers to be always present in the
configuration space.

As an example what happens before this patch applied
(These are some debug prints, don't search for them in kernel sources):

	serial 0000:00:04.1: Mapped GSI28 to IRQ28
	serial 0000:00:04.2: Mapped GSI29 to IRQ29
	serial 0000:00:04.3: Mapped GSI54 to IRQ54
	8250_mid 0000:00:04.1: Mapped GSI28 to IRQ28
	8250_mid 0000:00:04.2: Mapped GSI29 to IRQ29
	8250_mid 0000:00:04.3: Mapped GSI54 to IRQ54

After we will have just last three lines out of above.

	8250_mid 0000:00:04.1: Mapped GSI28 to IRQ28
	8250_mid 0000:00:04.2: Mapped GSI29 to IRQ29
	8250_mid 0000:00:04.3: Mapped GSI54 to IRQ54

While here, correct a value of error code mentioned in the comment of
serial_pci_guess_board().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-30 07:44:55 -07:00
..
8250 serial: 8250_pci: Enable device after we check black list 2017-07-30 07:44:55 -07:00
cpm_uart tty: serial: cpm_uart: make use of for_each_node_by_type() 2017-02-03 10:12:16 +01:00
jsm tty: serial: jsm: constify pci_device_id. 2017-07-30 07:35:28 -07:00
21285.c
altera_jtaguart.c serial: altera_jtaguart: adding iounmap() 2017-05-18 16:43:55 +02:00
altera_uart.c serial: altera_uart: call iounmap() at driver remove 2017-05-25 14:36:37 +02:00
amba-pl010.c serial: pl010: Move uart_register_driver call to device probe 2017-05-18 16:19:16 +02:00
amba-pl011.c tty: pl011: use "qdf2400_e44" as the earlycon name for QDF2400 E44 2017-04-18 17:47:42 +02:00
amba-pl011.h
apbuart.c
apbuart.h
ar933x_uart.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
arc_uart.c serial: arc: Remove __init marking from early write 2017-07-30 07:38:50 -07:00
atmel_serial.c tty/serial: atmel: make the driver DT only 2017-06-14 12:48:48 +02:00
atmel_serial.h tty/serial: atmel: move atmel_serial header into driver directory 2017-03-14 10:59:04 +08:00
bcm63xx_uart.c serial/bcm63xx_uart: constify uart_ops structures 2016-09-02 15:01:16 +02:00
bfin_sport_uart.c tty: serial: constify dev_pm_ops structures 2017-01-19 14:20:23 +01:00
bfin_sport_uart.h
bfin_uart.c
clps711x.c serial: clps711x: Changing the compatibility string to match with the smallest supported chip 2016-07-06 17:38:16 +02:00
crisv10.c sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
crisv10.h
digicolor-usart.c tty/serial: digicolor: Fix bad usage of IS_ERR_VALUE 2016-02-14 17:39:36 -08:00
dz.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
dz.h
earlycon-arm-semihost.c tty/serial: mark __init early_smh_setup() static 2016-09-02 15:03:35 +02:00
earlycon.c ACPI: parse SPCR and enable matching console 2016-09-28 17:46:46 +02:00
efm32-uart.c serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' 2017-05-18 16:43:55 +02:00
etraxfs-uart.c
fsl_lpuart.c Merge 4.13-rc2 into tty-next 2017-07-23 20:04:33 -07:00
icom.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
icom.h
ifx6x60.c serial: ifx6x60: fix use-after-free on module unload 2017-05-18 16:43:55 +02:00
ifx6x60.h
imx.c serial: imx: drop useless member from driver data 2017-07-30 07:35:28 -07:00
ioc3_serial.c drivers: tty: serial: move inline before return type 2017-07-12 16:26:04 -07:00
ioc4_serial.c drivers: tty: serial: move inline before return type 2017-07-12 16:26:04 -07:00
ip22zilog.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
ip22zilog.h
Kconfig tty: serial: owl: Implement console driver 2017-07-18 09:28:29 +02:00
kgdb_nmi.c
kgdboc.c
lantiq.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
lpc32xx_hs.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
m32r_sio_reg.h
m32r_sio.c serial: m32r_sio: make it explicitly non-modular 2016-06-25 14:00:06 -07:00
Makefile tty: serial: Add Actions Semi Owl UART earlycon 2017-06-20 10:24:15 +08:00
max310x.c serial: max310x: Add support for newer silicon revisions 2017-01-12 11:51:24 +01:00
max3100.c tty: serial: constify uart_ops structures 2016-09-02 15:01:16 +02:00
mcf.c
men_z135_uart.c tty: serial: constify uart_ops structures 2016-09-02 15:01:16 +02:00
meson_uart.c tty/serial: meson_uart: update to stable bindings 2017-06-20 10:46:27 +08:00
mpc52xx_uart.c tty: Convert to using %pOF instead of full_name 2017-07-30 07:35:28 -07:00
mps2-uart.c serial: mps2-uart: make driver explicitly non-modular 2016-06-25 14:01:57 -07:00
mpsc.c serial/mpsc: switch to dma_alloc_attrs 2017-06-20 10:24:15 +08:00
msm_serial.c tty: serial: msm: Fix module autoload 2017-01-12 11:51:25 +01:00
mux.c
mvebu-uart.c serial: mvebu-uart: free the IRQ in ->shutdown() 2016-06-25 14:00:06 -07:00
mxs-auart.c serial: mxs-auart: Fix baudrate calculation 2017-03-31 17:26:19 +02:00
netx-serial.c
omap-serial.c serial: omap: Remove __init marking from early write 2017-07-30 07:38:50 -07:00
owl-uart.c tty: serial: owl: Implement console driver 2017-07-18 09:28:29 +02:00
pch_uart.c serial: pch_uart: use offset_in_page() macro 2017-05-18 16:34:55 +02:00
pic32_uart.c serial: pic32_uart: Fix 'request_irq' and 'free_irq' inconsistancy 2017-01-12 11:51:24 +01:00
pic32_uart.h serial: pic32_uart: Add PIC32 UART driver 2016-05-13 14:01:56 +02:00
pmac_zilog.c tty: Convert to using %pOF instead of full_name 2017-07-30 07:35:28 -07:00
pmac_zilog.h
pnx8xxx_uart.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
pxa.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
rp2.c
sa1100.c
samsung.c serial: samsung: Remove useless spinlock 2017-04-08 18:58:52 +02:00
samsung.h serial: samsung: Simplify DMA engine initialization code 2017-01-12 11:51:24 +01:00
sb1250-duart.c drivers: convert sbd_duart.map_guard from atomic_t to refcount_t 2017-03-14 11:01:40 +08:00
sc16is7xx.c sched/headers: Prepare for new header dependencies before moving code to <uapi/linux/sched/types.h> 2017-03-02 08:42:27 +01:00
sccnxp.c Fix serial console on SNI RM400 machines 2017-06-03 18:48:52 +09:00
serial_core.c serial: core: enforce type for upf_t when copying 2017-07-30 07:44:22 -07:00
serial_ks8695.c
serial_mctrl_gpio.c serial: mctrl_gpio: enable API usage only for initialized mctrl_gpios struct 2016-06-25 14:30:42 -07:00
serial_mctrl_gpio.h serial: mctrl_gpio: add modem control read routine 2016-06-25 14:30:42 -07:00
serial_txx9.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
serial-tegra.c serial: tegra: explicitly request exclusive reset control 2017-07-30 07:35:28 -07:00
sh-sci.c serial: sh-sci: Uninitialized variables in sysfs files 2017-07-17 13:19:19 +02:00
sh-sci.h serial: sh-sci: consider DR (data ready) bit adequately 2017-02-03 10:14:10 +01:00
sirfsoc_uart.c serial: sirf: make of_device_ids const 2017-06-20 10:24:15 +08:00
sirfsoc_uart.h serial: sirf: make fifo functions static 2016-06-25 14:01:57 -07:00
sn_console.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
sprd_serial.c serial: sprd: clear timeout interrupt only rather than all interrupts 2017-07-30 07:37:25 -07:00
st-asc.c serial: st-asc: Potential error pointer dereference 2017-07-17 13:19:19 +02:00
stm32-usart.c serial: stm32: add fifo support 2017-07-30 07:32:32 -07:00
stm32-usart.h serial: stm32: add fifo support 2017-07-30 07:32:32 -07:00
suncore.c
sunhv.c sparc64: Send break twice from console to return to boot prom 2017-02-23 08:27:24 -08:00
sunsab.c
sunsab.h
sunsu.c tty: Convert to using %pOF instead of full_name 2017-07-30 07:35:28 -07:00
sunzilog.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
sunzilog.h
tilegx.c
timbuart.c tty: serial: constify uart_ops structures 2016-09-02 15:01:16 +02:00
timbuart.h
uartlite.c uartlite: Adding a kernel parameter for the number of uartlites 2017-03-17 14:14:30 +09:00
ucc_uart.c QE-UART: add "fsl,t1040-ucc-uart" to of_device_id 2016-05-01 13:55:12 -07:00
vr41xx_siu.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
vt8500_serial.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
xilinx_uartps.c serial: xuartps: Remove __init marking from early write 2017-07-30 07:38:50 -07:00
zs.c tty: serial: constify uart_ops structures 2017-01-27 09:23:36 +01:00
zs.h