linux_dsm_epyc7002/drivers
Linus Walleij ca454bd42d drm/pl111: Support the Versatile Express
The Versatile Express uses a special configuration controller
deeply embedded in the system motherboard FPGA to multiplex the
two to three (!) display controller instances out to the single
SiI9022 bridge.

Set up an extra file with the logic to probe to the FPGA mux
register on the system controller bus, then parse the device
tree to see if there is a CLCD or HDLCD instance on the core
tile (also known as the daughterboard) by looking in the
root of the device tree for compatible nodes.

- If there is a HDLCD on the core tile, and there is a driver
  for it, we exit probe and deactivate the motherboard CLCD.
  We do not touch the DVI mux in this case, to make sure we
  don't break HDLCD.

- If there is a CLCD on both the motherboard and the core tile
  (only the CA9 has this) the core tile CLCD takes precedence
  and get muxed to the DVI connector.

- Only if there is no working graphics on the core tile, the
  motherboard CLCD is probed and muxed to the DVI connector.

Core tile graphics should always take precedence as it can
address all memory and is also faster, however the motherboard
CLCD is good to have around for diagnostics and testing.

It is possible to test the motherboard CLCD by setting the
status = "disabled" property on the core tile CLCD or
HDLCD.

Scale down the Versatile Express to 16BPP so we can support a
1024x768 display despite the bus bandwidth restrictions on this
platform. (The motherboard CLCD supports slightly lower
resolution.)

Cc: Liviu Dudau <liviu.dudau@arm.com>
Cc: Pawel Moll <pawel.moll@arm.com>
Acked-by: Eric Anholt <eric@anholt.net>
Tested-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20180502134719.8388-1-linus.walleij@linaro.org
2018-05-02 19:13:28 +02:00
..
accessibility
acpi Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm 2018-03-22 18:37:49 -07:00
amba
android
ata libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version 2018-03-19 08:36:38 -07:00
atm
auxdisplay auxdisplay: img-ascii-lcd: Silence 2 uninitialized warnings 2018-03-13 18:16:38 +01:00
base regmap: MMIO regmap clock configuration 2018-04-11 12:35:42 +02:00
bcma
block loop: Fix lost writes caused by missing flag 2018-03-09 08:36:36 -07:00
bluetooth Bluetooth: hci_bcm: Set pulsed_host_wake flag in sleep parameters 2018-03-15 19:39:37 +01:00
bus
cdrom
char
clk clk: bcm2835: Protect sections updating shared registers 2018-03-19 09:27:37 -07:00
clocksource clocksource/atmel-st: Add 'depends on HAS_IOMEM' to fix unmet dependency 2018-03-09 11:11:58 +01:00
connector
cpufreq Merge branch 'cpufreq-scpi' 2018-03-02 10:44:44 +01:00
cpuidle
crypto
dax
dca
devfreq
dio
dma dmaengine: stm32-dmamux: fix a potential buffer overflow 2018-03-22 10:51:35 +05:30
dma-buf
edac
eisa
extcon
firewire
firmware Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-03-18 11:56:53 -07:00
fmc
fpga
fsi
gpio gpio: rcar: Use wakeup_path i.s.o. explicit clock handling 2018-03-05 09:01:21 +01:00
gpu drm/pl111: Support the Versatile Express 2018-05-02 19:13:28 +02:00
hid
hsi
hv Drivers: hv: vmbus: Fix ring buffer signaling 2018-03-06 09:52:59 -08:00
hwmon
hwspinlock
hwtracing
i2c i2c: octeon: Prevent error message on bus error 2018-03-02 11:11:15 +01:00
ide
idle
iio iio: st_pressure: st_accel: pass correct platform data to init 2018-03-10 16:28:05 +00:00
infiniband Fourth pull request for 4.16-rc 2018-03-20 17:39:07 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2018-03-07 17:37:32 -08:00
iommu
ipack
irqchip irqchip/irq-imx-gpcv2: Remove unused function 2018-03-11 13:27:12 +00:00
isdn
leds
lightnvm
macintosh
mailbox
mcb
md dm mpath: fix passing integrity data 2018-03-14 15:39:33 -04:00
media media: dvb: fix a Kconfig typo 2018-03-05 07:57:41 -05:00
memory
memstick
message
mfd
misc powerpc fixes for 4.16 #5 2018-03-09 09:33:48 -08:00
mmc mmc: sdhci-acpi: Fix IRQ 0 2018-03-21 11:10:20 +01:00
mtd mtd: nand: fsl_ifc: Read ECCSTAT0 and ECCSTAT1 registers for IFC 2.0 2018-03-21 10:22:28 +01:00
mux
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-03-22 14:10:29 -07:00
nfc
ntb
nubus
nvdimm libnvdimm, nfit: fix persistence domain reporting 2018-03-21 15:12:07 -07:00
nvme nvme_fc: rework sqsize handling 2018-03-08 10:39:58 -07:00
nvmem
of Linux 4.16-rc7 2018-03-28 14:30:41 +10:00
opp
oprofile
parisc
parport
pci Linux 4.16-rc7 2018-03-28 14:30:41 +10:00
pcmcia
perf
phy phy: qcom-ufs: add MODULE_LICENSE tag 2018-03-12 15:11:59 +05:30
pinctrl pinctrl: samsung: Validate alias coming from DT 2018-03-08 13:02:26 +01:00
platform platform-drivers-x86 for v4.16-7 2018-03-14 13:01:14 -07:00
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator Merge remote-tracking branches 'regulator/fix/resume' and 'regulator/fix/stm32-vfrefbuf' into regulator-linus 2018-03-07 14:39:07 +00:00
remoteproc
reset
rpmsg
rtc
s390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-03-22 14:10:29 -07:00
sbus
scsi SCSI fixes on 20180320 2018-03-20 16:59:01 -07:00
sfi
sh
siox
slimbus
sn
soc soc/fsl/qbman: fix issue in qman_delete_cgr_safe() 2018-03-14 13:16:23 -04:00
soundwire
spi
spmi
ssb
staging Merge airlied/drm-next into drm-misc-next 2018-03-30 12:35:45 -04:00
target
tc
tee
thermal
thunderbolt
tty tty: vt: fix up tabstops properly 2018-03-25 07:04:00 -10:00
uio
usb usb: musb: Fix external abort in musb_remove on omap2430 2018-03-13 16:36:59 +01:00
uwb
vfio Revert: "vfio-pci: Mask INTx if a device is not capabable of enabling it" 2018-03-21 22:50:19 -06:00
vhost vhost_net: examine pointer types during un-producing 2018-03-09 12:02:59 -05:00
video Linux 4.16-rc7 2018-03-28 14:30:41 +10:00
virt
virtio virtio_ring: fix num_free handling in error case 2018-03-01 18:53:38 +02:00
visorbus
vlynq
vme
w1
watchdog ACPI / watchdog: Fix off-by-one error at resource assignment 2018-03-19 23:17:07 +01:00
xen xen: fix for V4.16-rc5 2018-03-09 16:54:18 -08:00
zorro
Kconfig
Makefile