mirror-linux/drivers/parisc
Leon Romanovsky 7f2e8e1d22 parisc: Set valid bit in high byte of 64‑bit physical address
On 32‑bit systems, phys_addr_t is defined as u32. However, parisc
expects physical addresses to be 64‑bit values so it can store a
validity bit in the upper byte.

Resolve this mismatch by casting the physical address to unsigned
long, ensuring it is treated as a 64‑bit value where required. This
fixes the failure to start block device drivers on the C3700
platform, as reported by Guenter.

QEMU command line to reproduce the issue (with Debian SID as rootfs):
  qemu-system-hppa -machine C3700 \
	-kernel arch/parisc/boot/bzImage \
	-append "console=ttyS0 \
	root=/dev/sda rw rootwait panic=-1" \
	-nographic \
	-device lsi53c895a \
	-drive file=rootfs-hppa.img,if=none,format=raw,id=hd0 \
	-device scsi-hd,drive=hd0

Fixes: 96ddf2ef58 ("parisc: Convert DMA map_page to map_phys interface")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Closes: https://lore.kernel.org/all/b184f1bf-96dc-4546-8512-9cba5ecb58f7@roeck-us.net/
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
[mszyprow: dropped the lpa() macro removal]
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20251218-fix-parisc-conversion-v1-1-4a04d26b0168@nvidia.com
2025-12-19 13:56:17 +01:00
..
Kconfig parisc: led: Rewrite LED/LCD driver to utilizize Linux LED subsystem 2023-08-28 17:58:14 +02:00
Makefile parisc: Makefile: Adjust order in which drivers should be loaded 2023-08-27 09:17:37 +02:00
README.dino
asp.c parisc: asp: Initialize asp driver via arch_initcall() 2023-08-27 11:09:10 +02:00
ccio-dma.c parisc: Convert DMA map_page to map_phys interface 2025-10-29 10:27:30 +01:00
dino.c parisc: dino: Convert dino PCI bus driver to use arch_initcall() 2023-08-27 09:17:37 +02:00
eisa.c parisc: eisa: Convert HP EISA bus driver to use arch_initcall() 2023-08-27 09:17:37 +02:00
eisa_eeprom.c char: misc: Register fixed minor EISA_EEPROM_MINOR in linux/miscdevice.h 2025-08-19 12:41:18 +02:00
eisa_enumerator.c parisc: Fix spelling mistake "mis-match" -> "mismatch" in eisa driver 2022-10-14 20:06:30 +02:00
gsc.c parisc: Do not reprogram affinitiy on ASP chip 2025-11-25 15:23:02 +01:00
gsc.h
hppb.c parisc: hppb: Convert HP PB bus driver to use arch_initcall() 2023-08-27 09:17:37 +02:00
iommu-helpers.h parisc: Convert DMA map_page to map_phys interface 2025-10-29 10:27:30 +01:00
iommu.h
iosapic.c parisc: iosapic.c: Fix sparse warnings 2023-08-31 21:42:42 +02:00
iosapic_private.h parisc: iosapic.c: Fix sparse warnings 2023-08-31 21:42:42 +02:00
lasi.c parisc: lasi: Initialize LASI driver via arch_initcall() 2023-08-27 11:09:10 +02:00
lba_pci.c parisc: lba: Convert LBA PCI bus driver to use arch_initcall() 2023-08-27 09:25:48 +02:00
led.c parisc: led: Use scnprintf() to avoid string truncation warning 2025-03-09 22:27:54 +01:00
pdc_stable.c parisc: pdc_stable: Constify struct kobj_type 2024-09-09 08:53:17 +02:00
power.c parisc/power: Move soft-power into power.c 2025-07-23 11:52:48 +02:00
sba_iommu.c parisc: Set valid bit in high byte of 64‑bit physical address 2025-12-19 13:56:17 +01:00
superio.c
wax.c parisc: wax: Initialize wax driver via arch_initcall() 2023-08-27 11:09:10 +02:00

README.dino

/*
** 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"
*/