android_kernel_oneplus_msm8998/drivers/parisc
Helge Deller f5c0d4a616 parisc: Disable HP HSC-PCI Cards to prevent kernel crash
commit 5fa1659105fac63e0f3c199b476025c2e04111ce upstream.

The HP Dino PCI controller chip can be used in two variants: as on-board
controller (e.g. in B160L), or on an Add-On card ("Card-Mode") to bridge
PCI components to systems without a PCI bus, e.g. to a HSC/GSC bus.  One
such Add-On card is the HP HSC-PCI Card which has one or more DEC Tulip
PCI NIC chips connected to the on-card Dino PCI controller.

Dino in Card-Mode has a big disadvantage: All PCI memory accesses need
to go through the DINO_MEM_DATA register, so Linux drivers will not be
able to use the ioremap() function. Without ioremap() many drivers will
not work, one example is the tulip driver which then simply crashes the
kernel if it tries to access the ports on the HP HSC card.

This patch disables the HP HSC card if it finds one, and as such
fixes the kernel crash on a HP D350/2 machine.

Signed-off-by: Helge Deller <deller@gmx.de>
Noticed-by: Phil Scarr <phil.scarr@pm.me>
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-05 12:27:52 +02:00
..
asp.c
ccio-dma.c parisc: Use implicit space register selection for loading the coherence index of I/O pdirs 2019-06-11 12:24:13 +02:00
ccio-rm-dma.c
dino.c parisc: Disable HP HSC-PCI Cards to prevent kernel crash 2019-10-05 12:27:52 +02:00
eisa.c
eisa_eeprom.c eisa_eeprom: switch to fixed_size_llseek() 2013-06-29 12:57:29 +04:00
eisa_enumerator.c treewide: Fix typo in printk messages 2015-03-06 23:05:39 +01:00
gsc.c
gsc.h
hppb.c drivers/parisc: Use printf extension %pR for struct resource 2013-02-20 22:47:24 +01:00
iommu-helpers.h parisc iommu: fix panic due to trying to allocate too large region 2015-12-12 16:07:25 +01:00
iosapic.c parisc/irq: Use access helper irq_data_get_affinity_mask() 2015-07-31 22:20:04 +02:00
iosapic_private.h
Kconfig parisc: led driver requires CONFIG_VM_EVENT_COUNTERS 2013-02-20 22:51:52 +01:00
lasi.c
lba_pci.c parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode 2018-05-30 07:49:10 +02:00
led.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
Makefile
pdc_stable.c parisc: pdc_stable.c: Avoid potential stack overflows 2014-09-21 22:31:08 +02:00
power.c sched, cleanup, treewide: Remove set_current_state(TASK_RUNNING) after schedule() 2014-09-19 12:35:17 +02:00
README.dino
sba_iommu.c parisc: Use implicit space register selection for loading the coherence index of I/O pdirs 2019-06-11 12:24:13 +02:00
superio.c parisc: %pf is only for function pointers 2015-04-24 13:45:54 +02:00
wax.c

/*
** HP VISUALIZE Workstation PCI Bus Defect
**
** "HP has discovered a potential system defect that can affect
** the behavior of five models of HP VISUALIZE workstations when
** equipped with third-party or customer-installed PCI I/O expansion
** cards. The defect is limited to the HP C180, C160, C160L, B160L,
** and B132L VISUALIZE workstations, and will only be encountered
** when data is transmitted through PCI I/O expansion cards on the
** PCI bus. HP-supplied graphics cards that utilize the PCI bus are
** not affected."
**
** http://h20000.www2.hp.com/bizsupport/TechSupport/Home.jsp?locale=en_US&prodTypeId=12454&prodSeriesId=44443
**
**	Product		First Good Serial Number
**  C200/C240 (US)	US67350000
**B132L+/B180 (US)	US67390000
**   C200 (Europe)	3713G01000
**  B180L (Europe)	3720G01000
**
** Note that many boards were fixed/replaced under a free replacement
** program. Assume a machine is only "suspect" until proven otherwise.
**
** "The pci_check program will also be available as application
**  patch PHSS_12295"
*/