summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm (follow)
Commit message (Collapse)AuthorAge
...
| * | | | | | drm/msm: Remove adreno_last_fenceJordan Crouse2017-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | adreno_last_fence is no longer very useful since we have a handy per-ring pointer directly to the values we need. Change-Id: Ic0dedbadfb195551afcd016651776965da32fb2d Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | | | | drm/msm: Change the priority order of the ringbuffersJordan Crouse2017-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we first did preemption the priority was set at submission time. In order to be properly backwards compatible we made ring id 0 the lowest priority ring so that when a legacy app made a submission it didn't get itself onto the highest priority ring by accident. Now that we set the priority with submitqueues this is no longer a concern and ordering priorities this way goes against long standing convention in similar GPU drivers. Declare a flag day and invert the priority algorithm so that priority '0' is the highest priority and it descends from there. The lowest prority ring is 'number of rings - 1' where the number of active rings can be acquired through a parameter query of MSM_PARAM_NR_RINGS. This change also ensures that the legacy submitqueue id '0' will use the next-to-lowest ring buffer by default for legacy submissions. Change-Id: Ic0dedbadeea522e4f07babc4395cbf5fb7143fe3 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | | | | Merge "drm/msm: add support for parsing YUV 420 deep color"Linux Build Service Account2017-07-04
|\ \ \ \ \ \ \
| * | | | | | | drm/msm: add support for parsing YUV 420 deep colorAbhinav Kumar2017-06-30
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current upstream parser only handles RGB deep color modes. Add support in the SDE EDID parser module to parse HDMI VSDB block and indicate support for YUV 420 deep color modes in the sink. Change-Id: If6c007263094e7716a29cae503d3e3471ae04306 Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | | | | | Merge "drm/msm/sde: remove extra entries from interrupt table"Linux Build Service Account2017-07-04
|\ \ \ \ \ \ \
| * | | | | | | drm/msm/sde: remove extra entries from interrupt tableAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Four extra reserved entries are allocated in 88-91. These entries do not affect lookup logics but are conflicting with index listed in the documentation. Remove these extra reserved entries to match index with documentation. Change-Id: Id9e3a35e9bee9d13b479d7ef65dca1912ea1ff80 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: correct index lookup for interrupt clear registerAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interrupt get status function incorrectly uses interrupt index to lookup clear register offset. Correct get status function to use register index instead to lookup up interrupt offset register. CRs-Fixed: 2053107 Change-Id: I0c298e0b2b2cbc19758ff84be35ba2d2ce52aeb3 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: correct out of bound access in catalogAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct validate function to use proper size clearing property count array. Correct copy format function to check bound before accessing array element. CRs-Fixed: 2037027 Change-Id: Ied3a8e91eb4e6c2c19632b8f83b35d94d1773bb1 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm: add proper termination to device match arrayAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Device match array should be terminated with a null entry. Add this null entry to mdp version check to avoid check past end of array. CRs-Fixed: 2037027 Change-Id: Ib313fad468205e94eace94eee9db56f19f61ab0c Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: use current encoders to determine crtc interfaceAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using the cached interface type, which is updated during fence preparation time, determine interface type by enumerating over all matching encoders and query the interface directly. This avoids pontential stale interface types due to changing connector state. CRs-Fixed: 2009714 Change-Id: I31e1350cc62cafb5f014c0f32514d0692dec42d0 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: add support for a5x tile pixel formatsAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new modifier for a5x tile and support for a5x tile pixel format layout calculation. CRs-Fixed: 2009714 Change-Id: If0d1d6ba8d8d3e36dd5d5aef4a9b217d8e5779ba Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: move cdm csc setup to writeback commitAlan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CDM CSC is currently only initialized during power up. But on power collapse, CSC will be reset and produce incorrect YUV writeback output. Correct this by moving CSC setup to writeback commit to ensure CSC is always up-to-date. Change-Id: Iac004316c32040f83ef582aae83b02e1288514b1 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | | | | | drm/msm/sde: correct clamp shift for csc 10Alan Kwong2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clamp shift for csc 10 is 16 bit where csc 8 is 8 bit. Correct csc to apply proper clamp shift based on csc version. Change-Id: I34d30127384668f4cb222a6e634e6581c0054805 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
* | | | | | | | Merge "drm/msm: Add a parameter query for the number of ringbuffers"Linux Build Service Account2017-07-04
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | |
| * | | | | | | drm/msm: Add a parameter query for the number of ringbuffersJordan Crouse2017-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to manage ringbuffer priority to its fullest userspace should know how many ringbuffers it has to work with. Add a parameter to return the number of active rings. Change-Id: Ic0dedbada6010dd5122e8409141fd23b414d73e4 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | | | | | drm/msm: Change the profiling structureJordan Crouse2017-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the queued time from the profile struct and turn the submit time into a proper timespec (tv_sec + tv_nsec). This should sync up better with what userspace is used to seeing. Change-Id: Ic0dedbad0621fa248e6cffde2d1ee3f9b609e19d Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | | | | | Merge "drm/msm: Add kernel side submit profiling and tracing"Linux Build Service Account2017-07-04
|\| | | | | | |
| * | | | | | | drm/msm: Add kernel side submit profiling and tracingJordan Crouse2017-07-03
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Record the GPU always on timer value at the start and end of a submission on the ringbuffer. Since the timer runs at a constant 19.2 Mhz this is a handy way of tracking how long each submission takes. The timer values are recorded in the memptrs. Each ringbuffer is given a circular list of 128 entries to store the event ticks; this should be enough to avoid running out of room even when the ring is completely full of submissions. Add trace events for the user to track when submissions are queued, submitted to the ringbuffer and retired. The submitted trace point shows the GPU ticks and the current kernel time at submit time (as read by the CPU) and the retired trace event shows the GPU ticks at submission start/end as read by the GPU. Taken together these two events can provide a pretty close match between the current GPU time and the kernel time which is handy for tracing tools that try to match up the various kernel events with one another. Change-Id: Ic0dedbadbcf89f032890820785b9fb49a6362b01 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | | | | Merge "Merge branch 'android-4.4@77ddb50' (v4.4.74) into 'msm-4.4'"Linux Build Service Account2017-07-03
|\ \ \ \ \ \ \ | |/ / / / / / |/| | / / / / | | |/ / / / | |/| | | |
| * | | | | Merge branch 'android-4.4@77ddb50' (v4.4.74) into 'msm-4.4'Blagovest Kolenichev2017-06-28
| |\ \ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-77ddb50: UPSTREAM: usb: gadget: f_fs: avoid out of bounds access on comp_desc Linux 4.4.74 mm: fix new crash in unmapped_area_topdown() Allow stack to grow up to address space limit mm: larger stack guard gap, between vmas alarmtimer: Rate limit periodic intervals MIPS: Fix bnezc/jialc return address calculation usb: dwc3: exynos fix axius clock error path to do cleanup alarmtimer: Prevent overflow of relative timers genirq: Release resources in __setup_irq() error path swap: cond_resched in swap_cgroup_prepare() mm/memory-failure.c: use compound_head() flags for huge pages USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of IS_ERR() usb: r8a66597-hcd: decrease timeout usb: r8a66597-hcd: select a different endpoint on timeout USB: gadget: dummy_hcd: fix hub-descriptor removable fields pvrusb2: reduce stack usage pvr2_eeprom_analyze() usb: core: fix potential memory leak in error path during hcd creation USB: hub: fix SS max number of ports iio: proximity: as3935: recalibrate RCO after resume staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data() mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init() serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' mac80211: fix IBSS presp allocation size mac80211: fix CSA in IBSS mode mac80211/wpa: use constant time memory comparison for MACs mac80211: don't look at the PM bit of BAR frames vb2: Fix an off by one error in 'vb2_plane_vaddr' cpufreq: conservative: Allow down_threshold to take values from 1 to 10 can: gs_usb: fix memory leak in gs_cmd_reset() configfs: Fix race between create_link and configfs_rmdir UPSTREAM: bpf: don't let ldimm64 leak map addresses on unprivileged BACKPORT: ext4: fix data exposure after a crash ANDROID: sdcardfs: remove dead function open_flags_to_access_mode() ANDROID: android-base.cfg: split out arm64-specific configs Linux 4.4.73 sparc64: make string buffers large enough s390/kvm: do not rely on the ILC on kvm host protection fauls xtensa: don't use linux IRQ #0 tipc: ignore requests when the connection state is not CONNECTED proc: add a schedule point in proc_pid_readdir() romfs: use different way to generate fsid for BLOCK or MTD sctp: sctp_addr_id2transport should verify the addr before looking up assoc r8152: avoid start_xmit to schedule napi when napi is disabled r8152: fix rtl8152_post_reset function r8152: re-schedule napi for tx nfs: Fix "Don't increment lock sequence ID after NFS4ERR_MOVED" ravb: unmap descriptors when freeing rings drm/ast: Fixed system hanged if disable P2A drm/nouveau: Don't enabling polling twice on runtime resume parisc, parport_gsc: Fixes for printk continuation lines net: adaptec: starfire: add checks for dma mapping errors pinctrl: berlin-bg4ct: fix the value for "sd1a" of pin SCRD0_CRD_PRES gianfar: synchronize DMA API usage by free_skb_rx_queue w/ gfar_new_page net/mlx4_core: Avoid command timeouts during VF driver device shutdown drm/nouveau/fence/g84-: protect against concurrent access to semaphore buffers drm/nouveau: prevent userspace from deleting client object ipv6: fix flow labels when the traffic class is non-0 FS-Cache: Initialise stores_lock in netfs cookie fscache: Clear outstanding writes when disabling a cookie fscache: Fix dead object requeue ethtool: do not vzalloc(0) on registers dump log2: make order_base_2() behave correctly on const input value zero kasan: respect /proc/sys/kernel/traceoff_on_warning jump label: pass kbuild_cflags when checking for asm goto support PM / runtime: Avoid false-positive warnings from might_sleep_if() ipv6: Fix IPv6 packet loss in scenarios involving roaming + snooping switches i2c: piix4: Fix request_region size sierra_net: Add support for IPv6 and Dual-Stack Link Sense Indications sierra_net: Skip validating irrelevant fields for IDLE LSIs net: hns: Fix the device being used for dma mapping during TX NET: mkiss: Fix panic NET: Fix /proc/net/arp for AX.25 ipv6: Inhibit IPv4-mapped src address on the wire. ipv6: Handle IPv4-mapped src to in6addr_any dst. net: xilinx_emaclite: fix receive buffer overflow net: xilinx_emaclite: fix freezes due to unordered I/O Call echo service immediately after socket reconnect staging: rtl8192e: rtl92e_fill_tx_desc fix write to mapped out memory. ARM: dts: imx6dl: Fix the VDD_ARM_CAP voltage for 396MHz operation partitions/msdos: FreeBSD UFS2 file systems are not recognized s390/vmem: fix identity mapping usb: gadget: f_fs: Fix possibe deadlock Conflicts: drivers/usb/gadget/function/f_fs.c Change-Id: I23106e9fc2c4f2d0b06acce59b781f6c36487fcc Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
| | * | | | drm/ast: Fixed system hanged if disable P2AY.C. Chen2017-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 6c971c09f38704513c426ba6515f22fb3d6c87d5 ] The original ast driver will access some BMC configuration through P2A bridge that can be disabled since AST2300 and after. It will cause system hanged if P2A bridge is disabled. Here is the update to fix it. Signed-off-by: Y.C. Chen <yc_chen@aspeedtech.com> Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/nouveau: Don't enabling polling twice on runtime resumeLyude Paul2017-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit cae9ff036eea577856d5b12860b4c79c5e71db4a ] As it turns out, on cards that actually have CRTCs on them we're already calling drm_kms_helper_poll_enable(drm_dev) from nouveau_display_resume() before we call it in nouveau_pmops_runtime_resume(). This leads us to accidentally trying to enable polling twice, which results in a potential deadlock between the RPM locks and drm_dev->mode_config.mutex if we end up trying to enable polling the second time while output_poll_execute is running and holding the mode_config lock. As such, make sure we only enable polling in nouveau_pmops_runtime_resume() if we need to. This fixes hangs observed on the ThinkPad W541 Signed-off-by: Lyude <lyude@redhat.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Kilian Singer <kilian.singer@quantumtechnology.info> Cc: Lukas Wunner <lukas@wunner.de> Cc: David Airlie <airlied@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/nouveau/fence/g84-: protect against concurrent access to semaphore buffersBen Skeggs2017-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 96692b097ba76d0c637ae8af47b29c73da33c9d0 ] Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/nouveau: prevent userspace from deleting client objectBen Skeggs2017-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit c966b6279f610a24ac1d42dcbe30e10fa61220b2 ] Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | | | | Merge "drm/msm/sde: add kernel traces to measure enable/disable/kickoff times"Linux Build Service Account2017-06-28
|\ \ \ \ \ \
| * | | | | | drm/msm/sde: add kernel traces to measure enable/disable/kickoff timesNarendra Muppalla2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add kernel debug traces in drm to measure the performance of the driver during enable/disable/commit/kickoff. Change-Id: I7122e81b2c320f05bb42091971827908b7c6436f Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
* | | | | | | Merge "drm/msm: program hdr information to HDMI registers"Linux Build Service Account2017-06-28
|\ \ \ \ \ \ \
| * | | | | | | drm/msm: program hdr information to HDMI registersAbhinav Kumar2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HDR metadata information is passed down from userspace based on the HDR frame. Program these properties to relevant HDMI registers using the pre_kickoff callback registered for the DRM HDMI connector. This ensures that HDR information is updated on a per-frame basis to the sink. Change-Id: I20c4018316329b1b35a11b8ab4b96e923b3abb3a Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | | | | | | Merge "drm/msm/sde: add sde_connector kickoff callbacks"Linux Build Service Account2017-06-28
|\| | | | | | |
| * | | | | | | drm/msm/sde: add sde_connector kickoff callbacksAbhinav Kumar2017-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a callback into the connector framework to allow sending per-frame parameters at kickoff time. This is needed to support the HDR feature where the HDR metadata shall be sent to the sink on a per-frame basis. Change-Id: I48a3616509e2226ea9bf0f490f0f47873ca74781 Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | | | | | | Merge "drm/msm: pass the HDR metadata sent from userspace to sink"Linux Build Service Account2017-06-27
|\| | | | | | | | |_|/ / / / / |/| | | | | |
| * | | | | | drm/msm: pass the HDR metadata sent from userspace to sinkAbhinav Kumar2017-06-27
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use metadata information sent from userspace to configure sink. This info shall be used later on to program the HDMI specific infoframe registers. Change-Id: I26634452d8c3ab7ab49a65e89ad52a3961c64855 Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | | | | Merge "drm/msm/sde: fix color component order in sde"Linux Build Service Account2017-06-27
|\ \ \ \ \ \ | |/ / / / / |/| | / / / | | |/ / / | |/| | |
| * | | | drm/msm/sde: fix color component order in sdeDhaval Patel2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDE drm driver should support the default color component order instead of operating system specific order. For opensource compositor; it will use default color component order while android compositors will take care of reversing the color component order. Change-Id: I61b953ce892834453e92a8c2cfdcb427456966bb Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
* | | | | Merge "drm/msm/sde: expose 10 bit pixel format capabilities"Linux Build Service Account2017-06-27
|\| | | |
| * | | | drm/msm/sde: expose 10 bit pixel format capabilitiesabeykun2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch adds RGB 10bit both linear and compressed, P010 linear and and TP10 compressed pixel formats to plane and writeback capabilities. Change-Id: Ib5a0b2dacbc1ddc47c069b4348c0d1b9fbd7701e Signed-off-by: Alexander Beykun <abeykun@codeaurora.org>
| * | | | drm/msm/sde: size check fix for NV12 bufferAlexander Beykun2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently for NV12 linear/compressed format if the same gem object assigned to both planes, total size becomes twice more than actually allocated. In that case kernel cannot detect case where meta data planes not allocated for NV12 compressed buffer and smmu fault happens. Current patch sums sizes only for different gem objects allowing kernel to detect insufficient memory allocation for NV12 case. Change-Id: I0d9f49b8b310f0dff1fb787b4ba821a6d4a68140 Signed-off-by: Alexander Beykun <abeykun@codeaurora.org>
| * | | | drm/msm/sde: move pixel format flags to bitmapabeykun2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch changes type of pixel format flags from u32 to bitmap. Change-Id: I117f3737d78d22b9bd6d78abdb8e96f52fc4e874 Signed-off-by: Alexander Beykun <abeykun@codeaurora.org>
| * | | | drm/msm/sde: add tp10 compressed format supportabeykun2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add MOD_QCOM_TIGHT modifier on top of DRM_FORMAT_NV12 base pixel format and update plane size calculation to support compressed tp10 buffers. Change-Id: I12eb9fecfd34d488eda92f6217b6ca51e466c6f6 Signed-off-by: Alexander Beykun <abeykun@codeaurora.org>
| * | | | drm/msm/sde: add p010 format support in sdeabeykun2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add MOD_QCOM_DX modifier on top of DRM_FORMAT_NV12 base format and update plane size calculation to support linear and compressed p010 buffers. Change-Id: I93bd9557e5c4a4a038891f24730edbbec1dba262 Signed-off-by: Alexander Beykun <abeykun@codeaurora.org>
* | | | | drm/msm: add sink capabilities for HDR supportSrikanth Rajagopalan2017-06-26
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Populate HDR sink capabilities to a DRM blob. These capabilities shall be used by the userspace to calculate the sink HDR properties and setting them. Change-Id: I7c2dbca375c456052ad73889b011553090bcf8f1 Signed-off-by: Srikanth Rajagopalan <rasrik@codeaurora.org>
* | | | Merge "drm: msm: add support for a custom hotplug event"Linux Build Service Account2017-06-22
|\ \ \ \
| * | | | drm: msm: add support for a custom hotplug eventTatenda Chipeperekwa2017-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for a custom hotplug event that is triggered when the status of the connector has changed. The event string of the custom event will be in the following format: "name=<connector name> status=<connector status>" For example, when the DisplayPort connector has its status updated to connected then the event string that is used as part of the hotplug event will be as follows: "name=DP-1 status=connected" If the connector name is not known or is invalid at the time that the event is triggered then the name will be reported as "unknown". Change-Id: I5d6164d1e8e651cb05527733d68fa86fefb9e6ce Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org> Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | | | Merge "Merge branch 'android-4.4@e76c0fa' into branch 'msm-4.4'"Linux Build Service Account2017-06-22
|\ \ \ \ \
| * \ \ \ \ Merge branch 'android-4.4@e76c0fa' into branch 'msm-4.4'Blagovest Kolenichev2017-06-20
| |\ \ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-e76c0fa Linux 4.4.72 arm64: ensure extension of smp_store_release value arm64: armv8_deprecated: ensure extension of addr usercopy: Adjust tests to deal with SMAP/PAN RDMA/qib,hfi1: Fix MR reference count leak on write with immediate arm64: entry: improve data abort handling of tagged pointers arm64: hw_breakpoint: fix watchpoint matching for tagged pointers Make __xfs_xattr_put_listen preperly report errors. NFSv4: Don't perform cached access checks before we've OPENed the file NFS: Ensure we revalidate attributes before using execute_ok() mm: consider memblock reservations for deferred memory initialization sizing net: better skb->sender_cpu and skb->napi_id cohabitation serial: sh-sci: Fix panic when serial console and DMA are enabled tty: Drop krefs for interrupted tty lock drivers: char: mem: Fix wraparound check to allow mappings up to the end ASoC: Fix use-after-free at card unregistration ALSA: timer: Fix missing queue indices reset at SNDRV_TIMER_IOCTL_SELECT ALSA: timer: Fix race between read and ioctl drm/nouveau/tmr: fully separate alarm execution/pending lists drm/vmwgfx: Make sure backup_handle is always valid drm/vmwgfx: limit the number of mip levels in vmw_gb_surface_define_ioctl() drm/vmwgfx: Handle vmalloc() failure in vmw_local_fifo_reserve() perf/core: Drop kernel samples even though :u is specified powerpc/hotplug-mem: Fix missing endian conversion of aa_index powerpc/numa: Fix percpu allocations to be NUMA aware powerpc/eeh: Avoid use after free in eeh_handle_special_event() scsi: qla2xxx: don't disable a not previously enabled PCI device KVM: arm/arm64: Handle possible NULL stage2 pud when ageing pages btrfs: fix memory leak in update_space_info failure path btrfs: use correct types for page indices in btrfs_page_exists_in_range cxl: Fix error path on bad ioctl ufs_getfrag_block(): we only grab ->truncate_mutex on block creation path ufs_extend_tail(): fix the braino in calling conventions of ufs_new_fragments() ufs: set correct ->s_maxsize ufs: restore maintaining ->i_blocks fix ufs_isblockset() ufs: restore proper tail allocation fs: add i_blocksize() cpuset: consider dying css as offline Input: elantech - add Fujitsu Lifebook E546/E557 to force crc_enabled drm/msm: Expose our reservation object when exporting a dmabuf. target: Re-add check to reject control WRITEs with overflow data cpufreq: cpufreq_register_driver() should return -ENODEV if init fails stackprotector: Increase the per-task stack canary's random range from 32 bits to 64 bits on 64-bit platforms random: properly align get_random_int_hash drivers: char: random: add get_random_long() iio: proximity: as3935: fix AS3935_INT mask iio: light: ltr501 Fix interchanged als/ps register field staging/lustre/lov: remove set_fs() call from lov_getstripe() usb: chipidea: debug: check before accessing ci_role usb: chipidea: udc: fix NULL pointer dereference if udc_start failed usb: gadget: f_mass_storage: Serialize wake and sleep execution ext4: fix fdatasync(2) after extent manipulation operations ext4: keep existing extra fields when inode expands ext4: fix SEEK_HOLE xen-netfront: cast grant table reference first to type int xen-netfront: do not cast grant table reference to signed short xen/privcmd: Support correctly 64KB page granularity when mapping memory dmaengine: ep93xx: Always start from BASE0 dmaengine: usb-dmac: Fix DMAOR AE bit definition KVM: async_pf: avoid async pf injection when in guest mode arm: KVM: Allow unaligned accesses at HYP KVM: cpuid: Fix read/write out-of-bounds vulnerability in cpuid emulation kvm: async_pf: fix rcu_irq_enter() with irqs enabled nfsd: Fix up the "supattr_exclcreat" attributes nfsd4: fix null dereference on replay drm/amdgpu/ci: disable mclk switching for high refresh rates (v2) crypto: gcm - wait for crypto op not signal safe KEYS: fix freeing uninitialized memory in key_update() KEYS: fix dereferencing NULL payload with nonzero length ptrace: Properly initialize ptracer_cred on fork serial: ifx6x60: fix use-after-free on module unload arch/sparc: support NR_CPUS = 4096 sparc64: delete old wrap code sparc64: new context wrap sparc64: add per-cpu mm of secondary contexts sparc64: redefine first version sparc64: combine activate_mm and switch_mm sparc64: reset mm cpumask after wrap sparc: Machine description indices can vary sparc64: mm: fix copy_tsb to correctly copy huge page TSBs net: bridge: start hello timer only if device is up net: ethoc: enable NAPI before poll may be scheduled net: ping: do not abuse udp_poll() ipv6: Fix leak in ipv6_gso_segment(). vxlan: fix use-after-free on deletion tcp: disallow cwnd undo when switching congestion control cxgb4: avoid enabling napi twice to the same queue ipv6: xfrm: Handle errors reported by xfrm6_find_1stfragopt() bnx2x: Fix Multi-Cos ANDROID: uid_sys_stats: check previous uid_entry before call find_or_register_uid ANDROID: sdcardfs: d_splice_alias can return error values Change-Id: I829ebf1a9271dcf0462c537e7bfcbcfde322f336 Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
| | * | | | drm/nouveau/tmr: fully separate alarm execution/pending listsBen Skeggs2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit b4e382ca7586a63b6c1e5221ce0863ff867c2df6 upstream. Reusing the list_head for both is a bad idea. Callback execution is done with the lock dropped so that alarms can be rescheduled from the callback, which means that with some unfortunate timing, lists can get corrupted. The execution list should not require its own locking, the single function that uses it can only be called from a single context. Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/vmwgfx: Make sure backup_handle is always validSinclair Yeh2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 07678eca2cf9c9a18584e546c2b2a0d0c9a3150c upstream. When vmw_gb_surface_define_ioctl() is called with an existing buffer, we end up returning an uninitialized variable in the backup_handle. The fix is to first initialize backup_handle to 0 just to be sure, and second, when a user-provided buffer is found, we will use the req->buffer_handle as the backup_handle. Reported-by: Murray McAllister <murray.mcallister@insomniasec.com> Signed-off-by: Sinclair Yeh <syeh@vmware.com> Reviewed-by: Deepak Rawat <drawat@vmware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/vmwgfx: limit the number of mip levels in vmw_gb_surface_define_ioctl()Vladis Dronov2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit ee9c4e681ec4f58e42a83cb0c22a0289ade1aacf upstream. The 'req->mip_levels' parameter in vmw_gb_surface_define_ioctl() is a user-controlled 'uint32_t' value which is used as a loop count limit. This can lead to a kernel lockup and DoS. Add check for 'req->mip_levels'. References: https://bugzilla.redhat.com/show_bug.cgi?id=1437431 Signed-off-by: Vladis Dronov <vdronov@redhat.com> Reviewed-by: Sinclair Yeh <syeh@vmware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/vmwgfx: Handle vmalloc() failure in vmw_local_fifo_reserve()Dan Carpenter2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit f0c62e9878024300319ba2438adc7b06c6b9c448 upstream. If vmalloc() fails then we need to a bit of cleanup before returning. Fixes: fb1d9738ca05 ("drm/vmwgfx: Add DRM driver for VMware Virtual GPU") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Sinclair Yeh <syeh@vmware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | drm/msm: Expose our reservation object when exporting a dmabuf.Eric Anholt2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 43523eba79bda8f5b4c27f8ffe20ea078d20113a upstream. Without this, polling on the dma-buf (and presumably other devices synchronizing against our rendering) would return immediately, even while the BO was busy. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robdclark@gmail.com> Cc: linux-arm-msm@vger.kernel.org Cc: freedreno@lists.freedesktop.org Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>