Necessary changes to parse required CEA extension EDID blocks
have been made to vendor specific drivers. No need to retain
the block parsing in DRM framework.
This reverts commit 1e3594cbb8.
Bug: 139653858
Change-Id: Ia88ab5ed0314b964ad44556e40c2e4d55e0b181c
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Necessary changes to parse required CEA extension EDID blocks
have been made to vendor specific drivers. No need to retain
the block parsing in DRM framework.
This reverts commit 0152f0b272.
Bug: 139653858
Change-Id: I44570da5c06403c9bfb75c853e78cac233a4eeac
Signed-off-by: Alistair Delva <adelva@google.com>
Unlike DP 1.2 edid corruption test, DP 1.4 requires to calculate
real CRC value of the last edid data block, and write it back.
Current edid CRC calculates routine adds the last CRC byte,
and check if non-zero.
This behavior is not accurate; actually, we need to return
the actual CRC value when corruption is detected.
This commit changes this issue by returning the calculated CRC,
and initiate the required sequence.
Change since v7
- Fix for CI.CHECKPATCH
Change since v6
- Add return check
Change since v5
- Obtain real CRC value before dumping bad edid
Change since v4
- Fix for CI.CHECKPATCH
Change since v3
- Fix a minor typo.
Change since v2
- Rewrite checksum computation routine to avoid duplicated code.
- Rename to avoid confusion.
Change since v1
- Have separate routine for returning real CRC.
Change-Id: I6a67007357e5176994f54c4f30c07f42a2d57bd7
Signed-off-by: Jerry (Fangzhi) Zuo <Jerry.Zuo@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
[abhinavk: resolved conflict with android-5.4's drm_dp_helper.h]
Bug: 139653858
Link: https://patchwork.kernel.org/patch/11375865/
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
A newer version of the patch is now available upstream.
This reverts commit 132de0efda.
Bug: 139653858
Change-Id: I5a1816bf843f81eb484a8f28fac13cf9660f62be
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Unlike DP 1.2 edid corruption test, DP 1.4 requires to calculate
real CRC value of the last edid data block, and write it back.
Current edid CRC calculates routine adds the last CRC byte,
and check if non-zero.
This behavior is not accurate; actually, we need to return
the actual CRC value when corruption is detected.
This commit changes this issue by returning the calculated CRC,
and initiate the required sequence.
Change since v5
- Obtain real CRC value before dumping bad edid
Change since v4
- Fix for CI.CHECKPATCH
Change since v3
- Fix a minor typo.
Change since v2
- Rewrite checksum computation routine to avoid duplicated code.
- Rename to avoid confusion.
Change since v1
- Have separate routine for returning real CRC.
Signed-off-by: Jerry (Fangzhi) Zuo <Jerry.Zuo@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
[adelva: resolved conflict with android-5.4's drm_dp_helper.h]
Bug: 139653858
Link: https://patchwork.freedesktop.org/patch/351454/
Change-Id: Ib93f7cc21d77e29d6846a44de4368d96c50f5682
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Signed-off-by: Alistair Delva <adelva@google.com>
CEA 861.3 spec adds colorimetry data block for HDMI.
Parsing the block to get the colorimetry data from
panel.
This was posted by Uma Shankar at
https://patchwork.kernel.org/patch/10861327/
Modified by Abhinav Kumar:
- Use macros to distinguish the bit fields for clarity
Changes in v2:
- Use the drm_edid.h macros in drm_edid.c (Stephen Boyd)
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
[adelva: rebased on earlier non-upstream changes]
Bug: 139653858
Link: https://patchwork.kernel.org/patch/11349269/
Change-Id: I2f5f23ba22e13745a0dd7daf7b8cde6eb3d7803b
Signed-off-by: Alistair Delva <adelva@google.com>
Because between HDMI and DP have different colorspaces, it adds
drm_mode_create_dp_colorspace_property() function for creating of DP
colorspace property.
v3: Addressed review comments from Ville
- Add new colorimetry options for DP 1.4a spec.
- Separate set of colorimetry enum values for DP.
v4: Add additional comments to struct drm_prop_enum_list.
Polishing an enum string of struct drm_prop_enum_list
v5: Change definitions of DRM_MODE_COLORIMETRYs to follow HDMI prefix and
DP abbreviations.
Add missed variables on dp_colorspaces.
Fix typo. [Uma]
v6: Addressed review comments from Ilia and Ville
- Split drm_mode_create_colorspace_property() to DP and HDMI connector.
v7: Fix typo [Jani Saarinen]
Fix white space.
v8: Addressed review comments from Ville
- Drop colorimetries which have another way to distinguish or which
would not be used.
v9: Addressed review comments from Ville
- Split hunk into renaming and adding of code.
Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190919195311.13972-5-gwan-gyeong.mun@intel.com
(cherry picked from commit 45cf0e91df)
Bug: 139653858
Change-Id: I8bd640ed6dcea7e59f2360730ad06c636c056d01
Signed-off-by: Alistair Delva <adelva@google.com>
As between HDMI and DP have different colorspaces, in order to distinguish
colorspace of DP and HDMI, it renames drm_mode_create_colorspace_property()
function to drm_mode_create_hdmi_colorspace_property() function for HDMI
connector.
In order to apply changed drm api, i915 driver has channged.
It addresses review comments from Ville.
- Split hunk into renaming and adding of code.
Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190919195311.13972-4-gwan-gyeong.mun@intel.com
(cherry picked from commit 8806cd3aa0)
Bug: 139653858
Change-Id: I7522cf1d51a4d1be6d2e427872a618c63b404b7b
Signed-off-by: Alistair Delva <adelva@google.com>
Changes in 5.4.7
af_packet: set defaule value for tmo
fjes: fix missed check in fjes_acpi_add
mod_devicetable: fix PHY module format
net: dst: Force 4-byte alignment of dst_metrics
net: gemini: Fix memory leak in gmac_setup_txqs
net: hisilicon: Fix a BUG trigered by wrong bytes_compl
net: nfc: nci: fix a possible sleep-in-atomic-context bug in nci_uart_tty_receive()
net: phy: ensure that phy IDs are correctly typed
net: qlogic: Fix error paths in ql_alloc_large_buffers()
net-sysfs: Call dev_hold always in rx_queue_add_kobject
net: usb: lan78xx: Fix suspend/resume PHY register access error
nfp: flower: fix stats id allocation
qede: Disable hardware gro when xdp prog is installed
qede: Fix multicast mac configuration
sctp: fix memleak on err handling of stream initialization
sctp: fully initialize v4 addr in some functions
selftests: forwarding: Delete IPv6 address at the end
neighbour: remove neigh_cleanup() method
bonding: fix bond_neigh_init()
net: ena: fix default tx interrupt moderation interval
net: ena: fix issues in setting interrupt moderation params in ethtool
dpaa2-ptp: fix double free of the ptp_qoriq IRQ
mlxsw: spectrum_router: Remove unlikely user-triggerable warning
net: ethernet: ti: davinci_cpdma: fix warning "device driver frees DMA memory with different size"
net: stmmac: platform: Fix MDIO init for platforms without PHY
net: dsa: b53: Fix egress flooding settings
NFC: nxp-nci: Fix probing without ACPI
btrfs: don't double lock the subvol_sem for rename exchange
btrfs: do not call synchronize_srcu() in inode_tree_del
Btrfs: make tree checker detect checksum items with overlapping ranges
btrfs: return error pointer from alloc_test_extent_buffer
Btrfs: fix missing data checksums after replaying a log tree
btrfs: send: remove WARN_ON for readonly mount
btrfs: abort transaction after failed inode updates in create_subvol
btrfs: skip log replay on orphaned roots
btrfs: do not leak reloc root if we fail to read the fs root
btrfs: handle ENOENT in btrfs_uuid_tree_iterate
Btrfs: fix removal logic of the tree mod log that leads to use-after-free issues
ALSA: pcm: Avoid possible info leaks from PCM stream buffers
ALSA: hda/ca0132 - Keep power on during processing DSP response
ALSA: hda/ca0132 - Avoid endless loop
ALSA: hda/ca0132 - Fix work handling in delayed HP detection
drm/vc4/vc4_hdmi: fill in connector info
drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper.
drm: mst: Fix query_payload ack reply struct
drm/mipi-dbi: fix a loop in debugfs code
drm/panel: Add missing drm_panel_init() in panel drivers
drm: exynos: exynos_hdmi: use cec_notifier_conn_(un)register
drm: Use EOPNOTSUPP, not ENOTSUPP
drm/amd/display: verify stream link before link test
drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings
drm/amd/display: OTC underflow fix
iio: max31856: add missing of_node and parent references to iio_dev
iio: light: bh1750: Resolve compiler warning and make code more readable
drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code
drm/amdgpu: grab the id mgr lock while accessing passid_mapping
drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2)
drm/amd/display: Rebuild mapped resources after pipe split
ath10k: add cleanup in ath10k_sta_state()
drm/amd/display: Handle virtual signal type in disable_link()
ath10k: Check if station exists before forwarding tx airtime report
spi: Add call to spi_slave_abort() function when spidev driver is released
drm/meson: vclk: use the correct G12A frac max value
staging: rtl8192u: fix multiple memory leaks on error path
staging: rtl8188eu: fix possible null dereference
rtlwifi: prevent memory leak in rtl_usb_probe
libertas: fix a potential NULL pointer dereference
Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit30 when using SSI_SCK2 and SSI_WS2"
Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit31 when using SIM0_D"
ath10k: fix backtrace on coredump
IB/iser: bound protection_sg size by data_sg size
drm/komeda: Workaround for broken FLIP_COMPLETE timestamps
spi: gpio: prevent memory leak in spi_gpio_probe
media: am437x-vpfe: Setting STD to current value is not an error
media: cedrus: fill in bus_info for media device
media: seco-cec: Add a missing 'release_region()' in an error handling path
media: vim2m: Fix abort issue
media: vim2m: Fix BUG_ON in vim2m_device_release()
media: max2175: Fix build error without CONFIG_REGMAP_I2C
media: ov6650: Fix control handler not freed on init error
media: i2c: ov2659: fix s_stream return value
media: ov6650: Fix crop rectangle alignment not passed back
media: i2c: ov2659: Fix missing 720p register config
media: ov6650: Fix stored frame format not in sync with hardware
media: ov6650: Fix stored crop rectangle not in sync with hardware
tools/power/cpupower: Fix initializer override in hsw_ext_cstates
media: venus: core: Fix msm8996 frequency table
ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq
media: vimc: Fix gpf in rmmod path when stream is active
drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
pinctrl: devicetree: Avoid taking direct reference to device name string
drm/sun4i: dsi: Fix TCON DRQ set bits
drm/amdkfd: fix a potential NULL pointer dereference (v2)
x86/math-emu: Check __copy_from_user() result
drm/amd/powerplay: A workaround to GPU RESET on APU
selftests/bpf: Correct path to include msg + path
drm/amd/display: set minimum abm backlight level
media: venus: Fix occasionally failures to suspend
rtw88: fix NSS of hw_cap
drm/amd/display: fix struct init in update_bounding_box
usb: renesas_usbhs: add suspend event support in gadget mode
crypto: aegis128-neon - use Clang compatible cflags for ARM
hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if not idled
regulator: max8907: Fix the usage of uninitialized variable in max8907_regulator_probe()
tools/memory-model: Fix data race detection for unordered store and load
media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init()
media: cec-funcs.h: add status_req checks
media: meson/ao-cec: move cec_notifier_cec_adap_register after hw setup
drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller
samples: pktgen: fix proc_cmd command result check logic
block: Fix writeback throttling W=1 compiler warnings
drm/amdkfd: Fix MQD size calculation
MIPS: futex: Emit Loongson3 sync workarounds within asm
mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring
drm/drm_vblank: Change EINVAL by the correct errno
selftests/bpf: Fix btf_dump padding test case
libbpf: Fix struct end padding in btf_dump
libbpf: Fix passing uninitialized bytes to setsockopt
net/smc: increase device refcount for added link group
team: call RCU read lock when walking the port_list
media: cx88: Fix some error handling path in 'cx8800_initdev()'
crypto: inside-secure - Fix a maybe-uninitialized warning
crypto: aegis128/simd - build 32-bit ARM for v8 architecture explicitly
misc: fastrpc: fix memory leak from miscdev->name
ASoC: SOF: enable sync_write in hdac_bus
media: ti-vpe: vpe: Fix Motion Vector vpdma stride
media: ti-vpe: vpe: fix a v4l2-compliance warning about invalid pixel format
media: ti-vpe: vpe: fix a v4l2-compliance failure about frame sequence number
media: ti-vpe: vpe: Make sure YUYV is set as default format
media: ti-vpe: vpe: fix a v4l2-compliance failure causing a kernel panic
media: ti-vpe: vpe: ensure buffers are cleaned up properly in abort cases
drm/amd/display: Properly round nominal frequency for SPD
drm/amd/display: wait for set pipe mcp command completion
media: ti-vpe: vpe: fix a v4l2-compliance failure about invalid sizeimage
drm/amd/display: add new active dongle to existent w/a
syscalls/x86: Use the correct function type in SYSCALL_DEFINE0
drm/amd/display: Fix dongle_caps containing stale information.
extcon: sm5502: Reset registers during initialization
drm/amd/display: Program DWB watermarks from correct state
x86/mm: Use the correct function type for native_set_fixmap()
ath10k: Correct error handling of dma_map_single()
rtw88: coex: Set 4 slot mode for A2DP
drm/bridge: dw-hdmi: Restore audio when setting a mode
perf test: Report failure for mmap events
perf report: Add warning when libunwind not compiled in
perf test: Avoid infinite loop for task exit case
perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname
usb: usbfs: Suppress problematic bind and unbind uevents.
drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20
iio: adc: max1027: Reset the device at probe time
Bluetooth: btusb: avoid unused function warning
Bluetooth: missed cpu_to_le16 conversion in hci_init4_req
Bluetooth: Workaround directed advertising bug in Broadcom controllers
Bluetooth: hci_core: fix init for HCI_USER_CHANNEL
bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack()
x86/mce: Lower throttling MCE messages' priority to warning
drm/amd/display: enable hostvm based on roimmu active for dcn2.1
drm/amd/display: fix header for RN clk mgr
drm/amdgpu: fix amdgpu trace event print string format error
staging: iio: ad9834: add a check for devm_clk_get
power: supply: cpcap-battery: Check voltage before orderly_poweroff
perf tests: Disable bp_signal testing for arm64
selftests/bpf: Make a copy of subtest name
net: hns3: log and clear hardware error after reset complete
RDMA/hns: Fix wrong parameters when initial mtt of srq->idx_que
drm/gma500: fix memory disclosures due to uninitialized bytes
ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue
rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot
RDMA/siw: Fix SQ/RQ drain logic
ipmi: Don't allow device module unload when in use
x86/ioapic: Prevent inconsistent state when moving an interrupt
media: cedrus: Fix undefined shift with a SHIFT_AND_MASK_BITS macro
media: aspeed: set hsync and vsync polarities to normal before starting mode detection
drm/nouveau: Don't grab runtime PM refs for HPD IRQs
media: ov6650: Fix stored frame interval not in sync with hardware
media: ad5820: Define entity function
media: ov5640: Make 2592x1944 mode only available at 15 fps
media: st-mipid02: add a check for devm_gpiod_get_optional
media: imx7-mipi-csis: Add a check for devm_regulator_get
media: aspeed: clear garbage interrupts
media: smiapp: Register sensor after enabling runtime PM on the device
md: no longer compare spare disk superblock events in super_load
staging: wilc1000: potential corruption in wilc_parse_join_bss_param()
md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit
drm: Don't free jobs in wait_event_interruptible()
EDAC/amd64: Set grain per DIMM
arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill()
drm/amd/display: setting the DIG_MODE to the correct value.
i40e: initialize ITRN registers with correct values
drm/amd/display: correctly populate dpp refclk in fpga
i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO
net: phy: dp83867: enable robust auto-mdix
drm/tegra: sor: Use correct SOR index on Tegra210
regulator: core: Release coupled_rdevs on regulator_init_coupling() error
ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions
spi: sprd: adi: Add missing lock protection when rebooting
ACPI: button: Add DMI quirk for Medion Akoya E2215T
RDMA/qedr: Fix memory leak in user qp and mr
RDMA/hns: Fix memory leak on 'context' on error return path
RDMA/qedr: Fix srqs xarray initialization
RDMA/core: Set DMA parameters correctly
staging: wilc1000: check if device is initialzied before changing vif
gpu: host1x: Allocate gather copy for host1x
net: dsa: LAN9303: select REGMAP when LAN9303 enable
phy: renesas: phy-rcar-gen2: Fix the array off by one warning
phy: qcom-usb-hs: Fix extcon double register after power cycle
s390/time: ensure get_clock_monotonic() returns monotonic values
s390: add error handling to perf_callchain_kernel
s390/mm: add mm_pxd_folded() checks to pxd_free()
net: hns3: add struct netdev_queue debug info for TX timeout
libata: Ensure ata_port probe has completed before detach
loop: fix no-unmap write-zeroes request behavior
net/mlx5e: Verify that rule has at least one fwd/drop action
pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B
ALSA: bebob: expand sleep just after breaking connections for protocol version 1
iio: dln2-adc: fix iio_triggered_buffer_postenable() position
libbpf: Fix error handling in bpf_map__reuse_fd()
Bluetooth: Fix advertising duplicated flags
ALSA: pcm: Fix missing check of the new non-cached buffer type
spi: sifive: disable clk when probe fails and remove
ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency
pinctrl: qcom: sc7180: Add missing tile info in SDC_QDSD_PINGROUP/UFS_RESET
pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler()
ixgbe: protect TX timestamping from API misuse
cpufreq: sun50i: Fix CPU speed bin detection
media: rcar_drif: fix a memory disclosure
media: v4l2-core: fix touch support in v4l_g_fmt
nvme: introduce "Command Aborted By host" status code
media: staging/imx: Use a shorter name for driver
nvmem: imx-ocotp: reset error status on probe
nvmem: core: fix nvmem_cell_write inline function
ASoC: SOF: topology: set trigger order for FE DAI link
media: vivid: media_device_cleanup was called too early
spi: dw: Fix Designware SPI loopback
bnx2x: Fix PF-VF communication over multi-cos queues.
spi: img-spfi: fix potential double release
ALSA: timer: Limit max amount of slave instances
RDMA/core: Fix return code when modify_port isn't supported
drm: msm: a6xx: fix debug bus register configuration
rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt()
perf probe: Fix to find range-only function instance
perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR
perf probe: Fix to list probe event with correct line number
perf jevents: Fix resource leak in process_mapfile() and main()
perf probe: Walk function lines in lexical blocks
perf probe: Fix to probe an inline function which has no entry pc
perf probe: Fix to show ranges of variables in functions without entry_pc
perf probe: Fix to show inlined function callsite without entry_pc
libsubcmd: Use -O0 with DEBUG=1
perf probe: Fix to probe a function which has no entry pc
perf tools: Fix cross compile for ARM64
perf tools: Splice events onto evlist even on error
drm/amdgpu: disallow direct upload save restore list from gfx driver
drm/amd/powerplay: fix struct init in renoir_print_clk_levels
drm/amdgpu: fix potential double drop fence reference
ice: Check for null pointer dereference when setting rings
xen/gntdev: Use select for DMA_SHARED_BUFFER
perf parse: If pmu configuration fails free terms
perf probe: Skip overlapped location on searching variables
net: avoid potential false sharing in neighbor related code
perf probe: Return a better scope DIE if there is no best scope
perf probe: Fix to show calling lines of inlined functions
perf probe: Skip end-of-sequence and non statement lines
perf probe: Filter out instances except for inlined subroutine and subprogram
libbpf: Fix negative FD close() in xsk_setup_xdp_prog()
s390/bpf: Use kvcalloc for addrs array
cgroup: freezer: don't change task and cgroups status unnecessarily
selftests: proc: Make va_max 1MB
drm/amdgpu: Avoid accidental thread reactivation.
media: exynos4-is: fix wrong mdev and v4l2 dev order in error path
ath10k: fix get invalid tx rate for Mesh metric
fsi: core: Fix small accesses and unaligned offsets via sysfs
selftests: net: Fix printf format warnings on arm
media: pvrusb2: Fix oops on tear-down when radio support is not present
soundwire: intel: fix PDI/stream mapping for Bulk
crypto: atmel - Fix authenc support when it is set to m
ice: delay less
media: si470x-i2c: add missed operations in remove
media: cedrus: Use helpers to access capture queue
media: v4l2-ctrl: Lock main_hdl on operations of requests_queued.
iio: cros_ec_baro: set info_mask_shared_by_all_available field
EDAC/ghes: Fix grain calculation
media: vicodec: media_device_cleanup was called too early
media: vim2m: media_device_cleanup was called too early
spi: pxa2xx: Add missed security checks
ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile
iio: dac: ad5446: Add support for new AD5600 DAC
bpf, testing: Workaround a verifier failure for test_progs
ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint
net: dsa: sja1105: Disallow management xmit during switch reset
r8169: respect EEE user setting when restarting network
s390/disassembler: don't hide instruction addresses
net: ethernet: ti: Add dependency for TI_DAVINCI_EMAC
nvme: Discard workaround for non-conformant devices
parport: load lowlevel driver if ports not found
bcache: fix static checker warning in bcache_device_free()
cpufreq: Register drivers only after CPU devices have been registered
qtnfmac: fix debugfs support for multiple cards
qtnfmac: fix invalid channel information output
x86/crash: Add a forward declaration of struct kimage
qtnfmac: fix using skb after free
RDMA/efa: Clear the admin command buffer prior to its submission
tracing: use kvcalloc for tgid_map array allocation
MIPS: ralink: enable PCI support only if driver for mt7621 SoC is selected
tracing/kprobe: Check whether the non-suffixed symbol is notrace
bcache: fix deadlock in bcache_allocator
iwlwifi: mvm: fix unaligned read of rx_pkt_status
ASoC: wm8904: fix regcache handling
regulator: core: Let boot-on regulators be powered off
spi: tegra20-slink: add missed clk_unprepare
tun: fix data-race in gro_normal_list()
xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI
crypto: virtio - deal with unsupported input sizes
mmc: tmio: Add MMC_CAP_ERASE to allow erase/discard/trim requests
btrfs: don't prematurely free work in end_workqueue_fn()
btrfs: don't prematurely free work in run_ordered_work()
sched/uclamp: Fix overzealous type replacement
ASoC: wm2200: add missed operations in remove and probe failure
spi: st-ssc4: add missed pm_runtime_disable
ASoC: wm5100: add missed pm_runtime_disable
perf/core: Fix the mlock accounting, again
selftests, bpf: Fix test_tc_tunnel hanging
selftests, bpf: Workaround an alu32 sub-register spilling issue
bnxt_en: Return proper error code for non-existent NVM variable
net: phy: avoid matching all-ones clause 45 PHY IDs
firmware_loader: Fix labels with comma for builtin firmware
ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1
x86/insn: Add some Intel instructions to the opcode map
net-af_xdp: Use correct number of channels from ethtool
brcmfmac: remove monitor interface when detaching
perf session: Fix decompression of PERF_RECORD_COMPRESSED records
perf probe: Fix to show function entry line as probe-able
s390/crypto: Fix unsigned variable compared with zero
s390/kasan: support memcpy_real with TRACE_IRQFLAGS
bnxt_en: Improve RX buffer error handling.
iwlwifi: check kasprintf() return value
fbtft: Make sure string is NULL terminated
ASoC: soc-pcm: check symmetry before hw_params
net: ethernet: ti: ale: clean ale tbl on init and intf restart
mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs
s390/cpumf: Adjust registration of s390 PMU device drivers
crypto: sun4i-ss - Fix 64-bit size_t warnings
crypto: sun4i-ss - Fix 64-bit size_t warnings on sun4i-ss-hash.c
mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED
crypto: vmx - Avoid weird build failures
libtraceevent: Fix memory leakage in copy_filter_type
mips: fix build when "48 bits virtual memory" is enabled
drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2
ice: Only disable VF state when freeing each VF resources
ice: Fix setting coalesce to handle DCB configuration
net: phy: initialise phydev speed and duplex sanely
tools, bpf: Fix build for 'make -s tools/bpf O=<dir>'
RDMA/bnxt_re: Fix missing le16_to_cpu
RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices
bpf: Provide better register bounds after jmp32 instructions
RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series
ibmvnic: Fix completion structure initialization
net: wireless: intel: iwlwifi: fix GRO_NORMAL packet stalling
MIPS: futex: Restore \n after sync instructions
btrfs: don't prematurely free work in reada_start_machine_worker()
btrfs: don't prematurely free work in scrub_missing_raid56_worker()
Revert "mmc: sdhci: Fix incorrect switch to HS mode"
mmc: mediatek: fix CMD_TA to 2 for MT8173 HS200/HS400 mode
tpm_tis: reserve chip for duration of tpm_tis_core_init
tpm: fix invalid locking in NONBLOCKING mode
iommu: fix KASAN use-after-free in iommu_insert_resv_region
iommu: set group default domain before creating direct mappings
iommu/vt-d: Fix dmar pte read access not set error
iommu/vt-d: Set ISA bridge reserved region as relaxable
iommu/vt-d: Allocate reserved region for ISA with correct permission
can: xilinx_can: Fix missing Rx can packets on CANFD2.0
can: m_can: tcan4x5x: add required delay after reset
can: j1939: j1939_sk_bind(): take priv after lock is held
can: flexcan: fix possible deadlock and out-of-order reception after wakeup
can: flexcan: poll MCR_LPM_ACK instead of GPR ACK for stop mode acknowledgment
can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices
selftests: net: tls: remove recv_rcvbuf test
spi: dw: Correct handling of native chipselect
spi: cadence: Correct handling of native chipselect
usb: xhci: Fix build warning seen with CONFIG_PM=n
drm/amdgpu: fix uninitialized variable pasid_mapping_needed
ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()"
RDMA/siw: Fix post_recv QP state locking
md: avoid invalid memory access for array sb->dev_roles
s390/ftrace: fix endless recursion in function_graph tracer
ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
can: flexcan: add low power enter/exit acknowledgment helper
usbip: Fix receive error in vhci-hcd when using scatter-gather
usbip: Fix error path of vhci_recv_ret_submit()
spi: fsl: don't map irq during probe
spi: fsl: use platform_get_irq() instead of of_irq_to_resource()
efi/memreserve: Register reservations as 'reserved' in /proc/iomem
cpufreq: Avoid leaving stale IRQ work items during CPU offline
KEYS: asymmetric: return ENOMEM if akcipher_request_alloc() fails
mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG
USB: EHCI: Do not return -EPIPE when hub is disconnected
intel_th: pci: Add Comet Lake PCH-V support
intel_th: pci: Add Elkhart Lake SOC support
intel_th: Fix freeing IRQs
intel_th: msu: Fix window switching without windows
platform/x86: hp-wmi: Make buffer for HPWMI_FEATURE2_QUERY 128 bytes
staging: comedi: gsc_hpdi: check dma_alloc_coherent() return value
tty/serial: atmel: fix out of range clock divider handling
serial: sprd: Add clearing break interrupt operation
pinctrl: baytrail: Really serialize all register accesses
clk: imx: clk-imx7ulp: Add missing sentinel of ulp_div_table
clk: imx: clk-composite-8m: add lock to gate/mux
clk: imx: pll14xx: fix clk_pll14xx_wait_lock
ext4: fix ext4_empty_dir() for directories with holes
ext4: check for directory entries too close to block end
ext4: unlock on error in ext4_expand_extra_isize()
ext4: validate the debug_want_extra_isize mount option at parse time
iocost: over-budget forced IOs should schedule async delay
KVM: PPC: Book3S HV: Fix regression on big endian hosts
kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD
kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD
KVM: arm/arm64: Properly handle faulting of device mappings
KVM: arm64: Ensure 'params' is initialised when looking up sys register
x86/intel: Disable HPET on Intel Coffee Lake H platforms
x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure()
x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[]
x86/mce: Fix possibly incorrect severity calculation on AMD
powerpc/vcpu: Assume dedicated processors as non-preempt
powerpc/irq: fix stack overflow verification
ocxl: Fix concurrent AFU open and device removal
mmc: sdhci-msm: Correct the offset and value for DDR_CONFIG register
mmc: sdhci-of-esdhc: Revert "mmc: sdhci-of-esdhc: add erratum A-009204 support"
mmc: sdhci: Update the tuning failed messages to pr_debug level
mmc: sdhci-of-esdhc: fix P2020 errata handling
mmc: sdhci: Workaround broken command queuing on Intel GLK
mmc: sdhci: Add a quirk for broken command queuing
nbd: fix shutdown and recv work deadlock v2
iwlwifi: pcie: move power gating workaround earlier in the flow
Linux 5.4.7
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I3585238149235bf73bb453e25861d9a6b9193dfa
MSM DSI framework has capability to batch commands and
do kickoff once MIPI_DSI_MSG_LASTCOMMAND flag is set. This enables
related commands to be grouped and sent in one dma kickoff.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I2742c62a90e9a194848a612eef40a22103bb6596
Add support for parsing additional cea extension blocks
such as CEA HDR metadata block, VCDB block, Colorimetry
data block and VSVDB.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: Iae84749b816cd8bc0f598654c018cde475a31df9
Add support for notfier of panel blank/unblank events.
This allows external drivers such as touch, backlight
drivers etc to subscribe to panel related events.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I3ac644c1c931b959a511ee4a999a417a4b7bdcd1
Add the definitions for various DPCD register offsets and
corresponding parameter values for DP Link compliance tests
for PHY audio/link training/link status tests.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: If6aa7d9b77e6234780086f27515c346b6495a46f
Add two dsi mode flag namely MIPI_DSI_MODE_VIDEO_BLLP
and MIPI_DSI_MODE_VIDEO_EOF_BLLP. MIPI_DSI_MODE_VIDEO_BLLP
flag is used when DSI is allowed to enter low power stop mode
during BLLP period, and MIPI_DSI_MODE_VIDEO_EOF_BLLP
is used when DSI is allowed to enter low power stop mode in
the BLLP area of the last line of a frame.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I54c1d0cc7a87d23054b82cfa975117f0590ca2d3
Add support into the drm_mipi_dsi framework to support
unicasting DCS commands to specific DSI controls within a panel.
This is required for partial update where region of interest
spans only on one controller in a dual controller configuration.
Also, Some display panel have the requirement of waiting for certain
duration before dsi host can read back the response from panel during
a DCS read command. This change adds the support to store
the delay required in dsi message structure.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I3a99437441410a2514f9486d08ae3ba68670769e
Increase drm property count from 24 to 64 to make
room for custom properties of drm plane and drm
crtc objects.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I3e42c1fc684d7d7cea828fc35b96673bdef598f4
drm_self_refresh_helper_update_avg_times() was incorrectly accessing the
new incoming state after drm_atomic_helper_commit_hw_done(). But this
state might have already been superceeded by an !nonblock atomic update
resulting in dereferencing an already free'd crtc_state.
TODO I *think* this will more or less do the right thing.. althought I'm
not 100% sure if, for example, we enter psr in a nonblock commit, and
then leave psr in a !nonblock commit that overtakes the completion of
the nonblock commit. Not sure if this sort of scenario can happen in
practice. But not crashing is better than crashing, so I guess we
should either take this patch or rever the self-refresh helpers until
Sean can figure out a better solution.
Fixes: d4da4e3334 ("drm: Measure Self Refresh Entry/Exit times to avoid thrashing")
Cc: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
[seanpaul fixed up some checkpatch warns]
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20191104173737.142558-1-robdclark@gmail.com
Currently the self refresh idle timer is a const set by the crtc. This
is fine if the self refresh entry/exit times are well-known for all
panels used on that crtc. However panels and workloads can vary quite a
bit, and a timeout which works well for one doesn't work well for
another.
In the extreme, if the timeout is too short we could get in a situation
where the self refresh exits are taking so long we queue up a self refresh
entry before the exit commit is even finished.
This patch changes the idle timeout to a moving average of the entry
times + a moving average of exit times + the crtc constant.
This patch was tested on rockchip, with a kevin CrOS panel the idle
delay averages out to about ~235ms (35 entry + 100 exit + 100 const). On
the same board, the bob panel idle delay lands around ~340ms (90 entry
+ 150 exit + 100 const).
WRT the dedicated mutex in self_refresh_data, it would be nice if we
could rely on drm_crtc.mutex to protect the average times, but there are
a few reasons why a separate lock is a better choice:
- We can't rely on drm_crtc.mutex being held if we're doing a nonblocking
commit
- We can't grab drm_crtc.mutex since drm_modeset_lock() doesn't tell us
whether the lock was already held in the acquire context (it eats
-EALREADY), so we can't tell if we should drop it or not
- We don't need such a heavy-handed lock for what we're trying to do,
commit ordering doesn't matter, so a point-of-use lock will be less
contentious
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link to v1: https://patchwork.freedesktop.org/patch/msgid/20190917200443.64481-2-sean@poorly.run
Link: https://patchwork.freedesktop.org/patch/msgid/20190918200734.149876-2-sean@poorly.run
Changes in v2:
- Migrate locking explanation from comment to commit msg (Daniel)
- Turf constant entry delay and multiply the avg times by 2 (Daniel)
Lockdep reports a circular locking dependency with pages_lock taken in
the shrinker callback. The deadlock can't actually happen with current
users at least as a BO will never be purgeable when pages_lock is held.
To be safe, let's use mutex_trylock() instead and bail if a BO is locked
already.
WARNING: possible circular locking dependency detected
5.3.0-rc1+ #100 Tainted: G L
------------------------------------------------------
kswapd0/171 is trying to acquire lock:
000000009b9823fd (&shmem->pages_lock){+.+.}, at: drm_gem_shmem_purge+0x20/0x40
but task is already holding lock:
00000000f82369b6 (fs_reclaim){+.+.}, at: __fs_reclaim_acquire+0x0/0x40
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (fs_reclaim){+.+.}:
fs_reclaim_acquire.part.18+0x34/0x40
fs_reclaim_acquire+0x20/0x28
__kmalloc_node+0x6c/0x4c0
kvmalloc_node+0x38/0xa8
drm_gem_get_pages+0x80/0x1d0
drm_gem_shmem_get_pages+0x58/0xa0
drm_gem_shmem_get_pages_sgt+0x48/0xd0
panfrost_mmu_map+0x38/0xf8 [panfrost]
panfrost_gem_open+0xc0/0xe8 [panfrost]
drm_gem_handle_create_tail+0xe8/0x198
drm_gem_handle_create+0x3c/0x50
panfrost_gem_create_with_handle+0x70/0xa0 [panfrost]
panfrost_ioctl_create_bo+0x48/0x80 [panfrost]
drm_ioctl_kernel+0xb8/0x110
drm_ioctl+0x244/0x3f0
do_vfs_ioctl+0xbc/0x910
ksys_ioctl+0x78/0xa8
__arm64_sys_ioctl+0x1c/0x28
el0_svc_common.constprop.0+0x90/0x168
el0_svc_handler+0x28/0x78
el0_svc+0x8/0xc
-> #0 (&shmem->pages_lock){+.+.}:
__lock_acquire+0xa2c/0x1d70
lock_acquire+0xdc/0x228
__mutex_lock+0x8c/0x800
mutex_lock_nested+0x1c/0x28
drm_gem_shmem_purge+0x20/0x40
panfrost_gem_shrinker_scan+0xc0/0x180 [panfrost]
do_shrink_slab+0x208/0x500
shrink_slab+0x10c/0x2c0
shrink_node+0x28c/0x4d8
balance_pgdat+0x2c8/0x570
kswapd+0x22c/0x638
kthread+0x128/0x130
ret_from_fork+0x10/0x18
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(fs_reclaim);
lock(&shmem->pages_lock);
lock(fs_reclaim);
lock(&shmem->pages_lock);
*** DEADLOCK ***
3 locks held by kswapd0/171:
#0: 00000000f82369b6 (fs_reclaim){+.+.}, at: __fs_reclaim_acquire+0x0/0x40
#1: 00000000ceb37808 (shrinker_rwsem){++++}, at: shrink_slab+0xbc/0x2c0
#2: 00000000f31efa81 (&pfdev->shrinker_lock){+.+.}, at: panfrost_gem_shrinker_scan+0x34/0x180 [panfrost]
Fixes: 17acb9f35e ("drm/shmem: Add madvise state and purge helpers")
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Sean Paul <sean@poorly.run>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Steven Price <steven.price@arm.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190823021216.5862-6-robh@kernel.org
We need the rename of reservation_object to dma_resv.
The solution on this merge came from linux-next:
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 14 Aug 2019 12:48:39 +1000
Subject: [PATCH] drm: fix up fallout from "dma-buf: rename reservation_object to dma_resv"
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
drivers/gpu/drm/i915/gt/intel_engine_pool.c | 8 ++++----
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pool.c b/drivers/gpu/drm/i915/gt/intel_engine_pool.c
index 03d90b49584a..4cd54c569911 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_pool.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_pool.c
@@ -43,12 +43,12 @@ static int pool_active(struct i915_active *ref)
{
struct intel_engine_pool_node *node =
container_of(ref, typeof(*node), active);
- struct reservation_object *resv = node->obj->base.resv;
+ struct dma_resv *resv = node->obj->base.resv;
int err;
- if (reservation_object_trylock(resv)) {
- reservation_object_add_excl_fence(resv, NULL);
- reservation_object_unlock(resv);
+ if (dma_resv_trylock(resv)) {
+ dma_resv_add_excl_fence(resv, NULL);
+ dma_resv_unlock(resv);
}
err = i915_gem_object_pin_pages(node->obj);
which is a simplified version from a previous one which had:
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drm-misc-next for 5.4:
UAPI Changes:
Cross-subsystem Changes:
Core Changes:
- dma-buf: add reservation_object_fences helper, relax
reservation_object_add_shared_fence, remove
reservation_object seq number (and then
restored)
- dma-fence: Shrinkage of the dma_fence structure,
Merge dma_fence_signal and dma_fence_signal_locked,
Store the timestamp in struct dma_fence in a union with
cb_list
Driver Changes:
- More dt-bindings YAML conversions
- More removal of drmP.h includes
- dw-hdmi: Support get_eld and various i2s improvements
- gm12u320: Few fixes
- meson: Global cleanup
- panfrost: Few refactors, Support for GPU heap allocations
- sun4i: Support for DDC enable GPIO
- New panels: TI nspire, NEC NL8048HL11, LG Philips LB035Q02,
Sharp LS037V7DW01, Sony ACX565AKM, Toppoly TD028TTEC1
Toppoly TD043MTEA1
Signed-off-by: Dave Airlie <airlied@redhat.com>
[airlied: fixup dma_resv rename fallout]
From: Maxime Ripard <maxime.ripard@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190819141923.7l2adietcr2pioct@flea
drm-next-5.4-2019-08-09:
Same as drm-next-5.4-2019-08-06, but with the
readq/writeq stuff fixed and 5.3-rc3 backmerged.
amdgpu:
- Add navi14 support
- Add navi12 support
- Add Arcturus support
- Enable mclk DPM for Navi
- Misc DC display fixes
- Add perfmon support for DF
- Add scatter/gather display support for Raven
- Improve SMU handling for GPU reset
- RAS support for GFX
- Drop last of drmP.h
- Add support for wiping memory on buffer release
- Allow cursor async updates for fb swaps
- Misc fixes and cleanups
amdkfd:
- Add navi14 support
- Add navi12 support
- Add Arcturus support
- CWSR trap handlers updates for gfx9, 10
- Drop last of drmP.h
- Update MAINTAINERS
radeon:
- Misc fixes and cleanups
- Make kexec more reliable by tearing down the GPU
ttm:
- Add release_notify callback
uapi:
- Add wipe memory on release flag for buffer creation
Signed-off-by: Dave Airlie <airlied@redhat.com>
[airlied: resolved conflicts with ttm resv moving]
From: Alex Deucher <alexdeucher@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190809184807.3381-1-alexander.deucher@amd.com
drm-misc-next for 5.4:
UAPI Changes:
- HDCP: Add a Content protection type property
Cross-subsystem Changes:
Core Changes:
- Continue to rework the include dependencies
- fb: Remove the unused drm_gem_fbdev_fb_create function
- drm-dp-helper: Make the link rate calculation more tolerant to
non-explicitly defined, yet supported, rates
- fb-helper: Map DRM client buffer only when required, and instanciate a
shadow buffer when the device has a dirty function or says so
- connector: Add a helper to link the DDC adapter used by that connector to
the userspace
- vblank: Switch from DRM_WAIT_ON to wait_event_interruptible_timeout
- dma-buf: Fix a stack corruption
- ttm: Embed a drm_gem_object struct to make ttm_buffer_object a
superclass of GEM, and convert drivers to use it.
- hdcp: Improvements to report the content protection type to the
userspace
Driver Changes:
- Remove drm_gem_prime_import/export from being defined in the drivers
- Drop DRM_AUTH usage from drivers
- Continue to drop drmP.h
- Convert drivers to the connector ddc helper
- ingenic: Add support for more panel-related cases
- komeda: Support for dual-link
- lima: Reduce logging
- mpag200: Fix the cursor support
- panfrost: Export GPU features register to userspace through an ioctl
- pl111: Remove the CLD pads wiring support from the DT
- rockchip: Rework to use DRM PSR helpers, fix a bug in the VOP_WIN_GET
macro
- sun4i: Improve support for color encoding and range
- tinydrm: Rework SPI support, improve MIPI-DBI support, move to drm/tiny
- vkms: Rework of the CRC tracking
- bridges:
- sii902x: Add support for audio graph card
- tc358767: Rework AUX data handling code
- ti-sn65dsi86: Add Debugfs and proper DSI mode flags support
- panels
- Support for GiantPlus GPM940B0, Sharp LQ070Y3DG3B, Ortustech
COM37H3M, Novatek NT39016, Sharp LS020B1DD01D, Raydium RM67191,
Boe Himax8279d, Sharp LD-D5116Z01B
- Conversion of the device tree bindings to the YAML description
- jh057n00900: Rework the enable / disable path
- fbdev:
- ssd1307fb: Support more devices based on that controller
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Maxime Ripard <maxime.ripard@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190808121423.xzpedzkpyecvsiy4@flea
CRC generation can be impacted by commits coming from userspace, and
enabling CRC generation may itself trigger a commit. Add notes about
this to the kerneldoc.
Changes since v1:
- Clarified that anything that would disable CRCs counts as a full
modeset, and so userspace needs to reconfigure after full modesets
Changes since v2:
- Add these notes
- Rebase onto drm-misc-next (trivial conflict in comment)
Signed-off-by: Brian Starkey <brian.starkey@arm.com>
Signed-off-by: Ayan Kumar Halder <ayan.halder@arm.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link:- https://patchwork.freedesktop.org/patch/321974/
This patch adds a DRM ENUM property to the selected connectors.
This property is used for mentioning the protected content's type
from userspace to kernel HDCP authentication.
Type of the stream is decided by the protected content providers.
Type 0 content can be rendered on any HDCP protected display wires.
But Type 1 content can be rendered only on HDCP2.2 protected paths.
So when a userspace sets this property to Type 1 and starts the HDCP
enable, kernel will honour it only if HDCP2.2 authentication is through
for type 1. Else HDCP enable will be failed.
Pekka have completed the Weston DRM-backend review in
https://gitlab.freedesktop.org/wayland/weston/merge_requests/48
and the UAPI for HDCP 2.2 looks good.
The userspace is accepted in Weston.
v2:
cp_content_type is replaced with content_protection_type [daniel]
check at atomic_set_property is removed [Maarten]
v3:
%s/content_protection_type/hdcp_content_type [Pekka]
v4:
property is created for the first requested connector and then reused.
[Danvet]
v5:
kernel doc nits addressed [Daniel]
Rebased as part of patch reordering.
v6:
Kernel docs are modified [pekka]
v7:
More details in Kernel docs. [pekka]
v8:
Few more clarification into kernel doc of content type [pekka]
v9:
Small fixes in coding style.
v10:
Moving DRM_MODE_HDCP_CONTENT_TYPEx definition to drm_hdcp.h [pekka]
Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/320957/?series=57232&rev=14