Skip to content
  1. Jun 07, 2019
  2. Jun 06, 2019
  3. Jun 05, 2019
  4. Jun 04, 2019
    • Robin Murphy's avatar
      drm/arm/hdlcd: Allow a bit of clock tolerance · 1c810739
      Robin Murphy authored
      
      
      On the Arm Juno platform, the HDLCD pixel clock is constrained to 250KHz
      resolution in order to avoid the tiny System Control Processor spending
      aeons trying to calculate exact PLL coefficients. This means that modes
      like my oddball 1600x1200 with 130.89MHz clock get rejected since the
      rate cannot be matched exactly. In practice, though, this mode works
      quite happily with the clock at 131MHz, so let's relax the check to
      allow a little bit of slop.
      
      Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      1c810739
    • Robin Murphy's avatar
      drm/arm/hdlcd: Actually validate CRTC modes · b96151ed
      Robin Murphy authored
      
      
      Rather than allowing any old mode through, then subsequently refusing
      unmatchable clock rates in atomic_check when it's too late to back out
      and pick a different mode, let's do that validation up-front where it
      will cause unsupported modes to be correctly pruned in the first place.
      
      This also eliminates an issue whereby a perceived clock rate of 0 would
      cause atomic disable to fail and prevent the module from being unloaded.
      
      Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      b96151ed
    • Wen He's avatar
      drm/arm/mali-dp: Add a loop around the second set CVAL and try 5 times · 6a88e0c1
      Wen He authored
      
      
      This patch trying to fix monitor freeze issue caused by drm error
      'flip_done timed out' on LS1028A platform. this set try is make a loop
      around the second setting CVAL and try like 5 times before giveing up.
      
      Signed-off-by: default avatarWen He <wen.he_1@nxp.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      6a88e0c1
    • Lowry Li (Arm Technology China)'s avatar
      drm/komeda: fixing of DMA mapping sg segment warning · a260e0b8
      Lowry Li (Arm Technology China) authored
      
      
      Fixing the DMA mapping sg segment warning, which shows "DMA-API: mapping
      sg segment longer than device claims to support [len=921600] [max=65536]".
      Fixed by setting the max segment size at Komeda driver.
      
      This patch depends on:
      - https://patchwork.freedesktop.org/series/54448/
      - https://patchwork.freedesktop.org/series/54449/
      - https://patchwork.freedesktop.org/series/54450/
      - https://patchwork.freedesktop.org/series/58976/
      
      Changes since v1:
      - Adds member description
      - Adds patch denpendency in the comment
      
      Signed-off-by: default avatarLowry Li (Arm Technology China) <lowry.li@arm.com>
      Reviewed-by: default avatarJames Qian Wang (Arm Technology China) <james.qian.wang@arm.com>
      Reviewed-by: default avatarAyan Kumar Halder <ayan.halder@arm.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      a260e0b8
    • Helen Koike's avatar
      drm: don't block fb changes for async plane updates · 89a4aac0
      Helen Koike authored
      In the case of a normal sync update, the preparation of framebuffers (be
      it calling drm_atomic_helper_prepare_planes() or doing setups with
      drm_framebuffer_get()) are performed in the new_state and the respective
      cleanups are performed in the old_state.
      
      In the case of async updates, the preparation is also done in the
      new_state but the cleanups are done in the new_state (because updates
      are performed in place, i.e. in the current state).
      
      The current code blocks async udpates when the fb is changed, turning
      async updates into sync updates, slowing down cursor updates and
      introducing regressions in igt tests with errors of type:
      
      "CRITICAL: completed 97 cursor updated in a period of 30 flips, we
      expect to complete approximately 15360 updates, with the threshold set
      at 7680"
      
      Fb changes in async updates were prevented to avoid the following scenario:
      
      - Async update, oldfb = NULL, newfb = fb1, prepare fb1, cleanup fb1
      - Async update, oldfb = fb1, newfb = fb2, prepare fb2, cleanup fb2
      - Non-async commit, oldfb = fb2, newfb = fb1, prepare fb1, cleanup fb2 (wrong)
      Where we have a single call to prepare fb2 but double cleanup call to fb2.
      
      To solve the above problems, instead of blocking async fb changes, we
      place the old framebuffer in the new_state object, so when the code
      performs cleanups in the new_state it will cleanup the old_fb and we
      will have the following scenario instead:
      
      - Async update, oldfb = NULL, newfb = fb1, prepare fb1, no cleanup
      - Async update, oldfb = fb1, newfb = fb2, prepare fb2, cleanup fb1
      - Non-async commit, oldfb = fb2, newfb = fb1, prepare fb1, cleanup fb2
      
      Where calls to prepare/cleanup are balanced.
      
      Cc: <stable@vger.kernel.org> # v4.14+
      Fixes: 25dc194b
      
       ("drm: Block fb changes for async plane updates")
      Suggested-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Reviewed-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Reviewed-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190603165610.24614-6-helen.koike@collabora.com
      89a4aac0
    • Helen Koike's avatar
      drm/vc4: fix fb references in async update · c16b8555
      Helen Koike authored
      Async update callbacks are expected to set the old_fb in the new_state
      so prepare/cleanup framebuffers are balanced.
      
      Calling drm_atomic_set_fb_for_plane() (which gets a reference of the new
      fb and put the old fb) is not required, as it's taken care by
      drm_mode_cursor_universal() when calling drm_atomic_helper_update_plane().
      
      Cc: <stable@vger.kernel.org> # v4.19+
      Fixes: 539c320b
      
       ("drm/vc4: update cursors asynchronously through atomic")
      Suggested-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Reviewed-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190603165610.24614-5-helen.koike@collabora.com
      c16b8555
    • Helen Koike's avatar
      drm/msm: fix fb references in async update · 474d952b
      Helen Koike authored
      Async update callbacks are expected to set the old_fb in the new_state
      so prepare/cleanup framebuffers are balanced.
      
      Cc: <stable@vger.kernel.org> # v4.14+
      Fixes: 224a4c97
      
       ("drm/msm: update cursors asynchronously through atomic")
      Suggested-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Acked-by: default avatarRob Clark <robdclark@gmail.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190603165610.24614-4-helen.koike@collabora.com
      474d952b
    • Helen Koike's avatar
      drm/amd: fix fb references in async update · 332af874
      Helen Koike authored
      Async update callbacks are expected to set the old_fb in the new_state
      so prepare/cleanup framebuffers are balanced.
      
      Calling drm_atomic_set_fb_for_plane() (which gets a reference of the new
      fb and put the old fb) is not required, as it's taken care by
      drm_mode_cursor_universal() when calling drm_atomic_helper_update_plane().
      
      Cc: <stable@vger.kernel.org> # v4.20+
      Fixes: 674e78ac
      
       ("drm/amd/display: Add fast path for cursor plane updates")
      Suggested-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Reviewed-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190603165610.24614-3-helen.koike@collabora.com
      332af874
    • Helen Koike's avatar
      drm/rockchip: fix fb references in async update · d985a353
      Helen Koike authored
      In the case of async update, modifications are done in place, i.e. in the
      current plane state, so the new_state is prepared and the new_state is
      cleaned up (instead of the old_state, unlike what happens in a
      normal sync update).
      To cleanup the old_fb properly, it needs to be placed in the new_state
      in the end of async_update, so cleanup call will unreference the old_fb
      correctly.
      
      Also, the previous code had a:
      
      	plane_state = plane->funcs->atomic_duplicate_state(plane);
      	...
      	swap(plane_state, plane->state);
      
      	if (plane->state->fb && plane->state->fb != new_state->fb) {
      	...
      	}
      
      Which was wrong, as the fb were just assigned to be equal, so this if
      statement nevers evaluates to true.
      
      Another details is that the function drm_crtc_vblank_get() can only be
      called when vop->is_enabled is true, otherwise it has no effect and
      trows a WARN_ON().
      
      Calling drm_atomic_set_fb_for_plane() (which get a referent of the new
      fb and pus the old fb) is not required, as it is taken care by
      drm_mode_cursor_universal() when calling
      drm_atomic_helper_update_plane().
      
      Fixes: 15609559
      
       ("drm/rockchip: update cursors asynchronously through atomic.")
      Cc: <stable@vger.kernel.org> # v4.20+
      Signed-off-by: default avatarHelen Koike <helen.koike@collabora.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190603165610.24614-2-helen.koike@collabora.com
      d985a353
  5. Jun 03, 2019
    • james qian wang (Arm Technology China)'s avatar
      drm/komeda: Constify the usage of komeda_component/pipeline/dev_funcs · ba1b9f8c
      
      
      Depends on:
      - https://patchwork.freedesktop.org/series/58976/
      - https://patchwork.freedesktop.org/series/59855/
      
      Reported-by: default avatarEmil Velikov <emil.l.velikov@gmail.com>
      Signed-off-by: default avatarJames Qian Wang (Arm Technology China) <james.qian.wang@arm.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      ba1b9f8c
    • Xiaolin Zhang's avatar
      drm/i915/gvt: save RING_HEAD into vreg when vgpu switched out · 15e7f52a
      Xiaolin Zhang authored
      
      
      Save RING_HEAD into vgpu reg when vgpu switched out and report
      it's value back to guest.
      
      v6: addressed comment for ring head wrap count support. (Zhenyu)
      v5: ring head wrap count support.
      v4: updated HEAD/TAIL with guest value, not host value. (Yan Zhao)
      v3: save RING HEAD/TAIL vgpu reg in save_ring_hw_state. (Zhenyu Wang)
      v2: save RING_TAIL as well during vgpu mmio switch to meet ring_is_idle
      condition. (Fred Gao)
      v1: based on input from Weinan. (Weinan Li)
      
      [zhenyuw: Include this fix for possible future guest kernel that
      would utilize RING_HEAD for hangcheck.]
      
      Reviewed-by: default avatarZhenyu Wang <zhenyuw@linux.intel.com>
      Signed-off-by: default avatarXiaolin Zhang <xiaolin.zhang@intel.com>
      Signed-off-by: default avatarZhenyu Wang <zhenyuw@linux.intel.com>
      15e7f52a
    • Weinan Li's avatar
      drm/i915/gvt: add F_CMD_ACCESS flag for wa regs · 3fcb01f8
      Weinan Li authored
      
      
      Instead of updating by MMIO write, all of the wa regs are initialized by
      wa_ctx. From host side, it should make this behavior as expected, add
      'F_CMD_ACCESS' flag to these regs and allow access by commands.
      
      [  123.557608] gvt: vgpu 2: srm access to non-render register (b11c)
      [  123.563728] gvt: vgpu 2: MI_STORE_REGISTER_MEM handler error
      [  123.569409] gvt: vgpu 2: cmd parser error
      [  123.573424] 0x0
      [  123.573425] 0x24
      
      [  123.578686] gvt: vgpu 2: scan workload error
      [  123.582958] GVT Internal error  for the guest
      [  123.587317] Now vgpu 2 will enter failsafe mode.
      [  123.591938] gvt: vgpu 2: failed to submit desc 0
      [  123.596557] gvt: vgpu 2: fail submit workload on ring 0
      [  123.601786] gvt: vgpu 2: fail to emulate MMIO write 00002230 len 4
      
      Acked-by: default avatarYan Zhao <yan.y.zhao@intel.com>
      Signed-off-by: default avatarWeinan Li <weinan.z.li@intel.com>
      Signed-off-by: default avatarZhenyu Wang <zhenyuw@linux.intel.com>
      3fcb01f8
    • Linus Torvalds's avatar
      Linux 5.2-rc3 · f2c7c76c
      Linus Torvalds authored
      f2c7c76c
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7bd1d5ed
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Two fixes: a quirk for KVM guests running on certain AMD CPUs, and a
        KASAN related build fix"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor
        x86/boot: Provide KASAN compatible aliases for string routines
      7bd1d5ed
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6751b8d9
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "On the kernel side there's a bunch of ring-buffer ordering fixes for a
        reproducible bug, plus a PEBS constraints regression fix.
      
        Plus tooling fixes"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools headers UAPI: Sync kvm.h headers with the kernel sources
        perf record: Fix s390 missing module symbol and warning for non-root users
        perf machine: Read also the end of the kernel
        perf test vmlinux-kallsyms: Ignore aliases to _etext when searching on kallsyms
        perf session: Add missing swap ops for namespace events
        perf namespace: Protect reading thread's namespace
        tools headers UAPI: Sync drm/drm.h with the kernel
        tools headers UAPI: Sync drm/i915_drm.h with the kernel
        tools headers UAPI: Sync linux/fs.h with the kernel
        tools headers UAPI: Sync linux/sched.h with the kernel
        tools arch x86: Sync asm/cpufeatures.h with the with the kernel
        tools include UAPI: Update copy of files related to new fspick, fsmount, fsconfig, fsopen, move_mount and open_tree syscalls
        perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel
        perf data: Fix 'strncat may truncate' build failure with recent gcc
        perf/ring-buffer: Use regular variables for nesting
        perf/ring-buffer: Always use {READ,WRITE}_ONCE() for rb->user_page data
        perf/ring_buffer: Add ordering to rb->nest increment
        perf/ring_buffer: Fix exposing a temporarily decreased data_head
        perf/x86/intel/ds: Fix EVENT vs. UEVENT PEBS constraints
      6751b8d9
    • Linus Torvalds's avatar
      Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · af042452
      Linus Torvalds authored
      Pull EFI fixes from Ingo Molnar:
       "Two EFI fixes: a quirk for weird systabs, plus add more robust error
        handling in the old 1:1 mapping code"
      
      * 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi: Allow the number of EFI configuration tables entries to be zero
        efi/x86/Add missing error handling to old_memmap 1:1 mapping code
      af042452
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4fb5741c
      Linus Torvalds authored
      Pull stacktrace fix from Ingo Molnar:
       "Fix a stack_trace_save_tsk_reliable() regression"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stacktrace: Unbreak stack_trace_save_tsk_reliable()
      4fb5741c
    • Linus Torvalds's avatar
      Merge tag 'spdx-5.2-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · a68dc618
      Linus Torvalds authored
      Pull SPDX fixes from Greg KH:
       "Here are just two small patches, that fix up some found SPDX
        identifier issues.
      
        The first patch fixes an error in a previous SPDX fixup patch, that
        causes build errors when doing 'make clean' on the tree (the fact that
        almost no one noticed it reflects the fact that kernel developers
        don't like doing that option very often...)
      
        The second patch fixes up a number of places in the tree where people
        mistyped the string "SPDX-License-Identifier". Given that people can
        not even type their own name all the time without mistakes, this was
        bound to happen, and odds are, we will have to add some type of check
        for this to checkpatch.pl to catch this happening in the future.
      
        Both of these have passed testing by 0-day"
      
      * tag 'spdx-5.2-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        treewide: fix typos of SPDX-License-Identifier
        crypto: ux500 - fix license comment syntax error
      a68dc618
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 460b48a0
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "A minor fix to our IMC PMU code to print a less confusing error
        message when the driver can't initialise properly.
      
        A fix for a bug where a user requesting an unsupported branch sampling
        filter can corrupt PMU state, preventing the PMU from counting
        properly.
      
        And finally a fix for a bug in our support for kexec_file_load(),
        which prevented loading a kernel and initramfs. Most versions of kexec
        don't yet use kexec_file_load().
      
        Thanks to: Anju T Sudhakar, Dave Young, Madhavan Srinivasan, Ravi
        Bangoria, Thiago Jung Bauermann"
      
      * tag 'powerpc-5.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load()
        powerpc/perf: Fix MMCRA corruption by bhrb_filter
        powerpc/powernv: Return for invalid IMC domain
      460b48a0
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · b44a1dd3
      Linus Torvalds authored
      Pull KVM fixes from Paolo Bonzini:
       "Fixes for PPC and s390"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: PPC: Book3S HV: Restore SPRG3 in kvmhv_p9_guest_entry()
        KVM: PPC: Book3S HV: Fix lockdep warning when entering guest on POWER9
        KVM: PPC: Book3S HV: XIVE: Fix page offset when clearing ESB pages
        KVM: PPC: Book3S HV: XIVE: Take the srcu read lock when accessing memslots
        KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough interrupts
        KVM: PPC: Book3S HV: XIVE: Introduce a new mutex for the XIVE device
        KVM: PPC: Book3S HV: XIVE: Fix the enforced limit on the vCPU identifier
        KVM: PPC: Book3S HV: XIVE: Do not test the EQ flag validity when resetting
        KVM: PPC: Book3S HV: XIVE: Clear file mapping when device is released
        KVM: PPC: Book3S HV: Don't take kvm->lock around kvm_for_each_vcpu
        KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list
        KVM: PPC: Book3S HV: Use new mutex to synchronize MMU setup
        KVM: PPC: Book3S HV: Avoid touching arch.mmu_ready in XIVE release functions
        KVM: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID
        kvm: fix compile on s390 part 2
      b44a1dd3
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 38baf0bb
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "A memleak fix for the core, two driver bugfixes, as well as fixing
        missing file patterns to MAINTAINERS"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        MAINTAINERS: add I2C DT bindings to ARM platforms
        MAINTAINERS: add DT bindings to i2c drivers
        i2c: synquacer: fix synquacer_i2c_doxfer() return value
        i2c: mlxcpld: Fix wrong initialization order in probe
        i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr
      38baf0bb