1. 10 8月, 2023 3 次提交
    • J
    • J
      drm/i915: debug log when GMD ID indicates there's no display · bf9e1bda
      Jani Nikula 提交于
      Debug log similar to the device id based identification of no display.
      Reviewed-by: NLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230804084600.1005818-2-jani.nikula@intel.com
      bf9e1bda
    • J
      drm/i915: fix display probe for IVB Q and IVB D GT2 server · 14351883
      Jani Nikula 提交于
      The current display probe is unable to differentiate between IVB Q and
      IVB D GT2 server, as they both have the same device id, but different
      subvendor and subdevice. This leads to the latter being misidentified as
      the former, and should just end up not having a display. However, the no
      display case returns a NULL as the display device info, and promptly
      oopses.
      
      As the IVB Q case is rare, and we're anyway moving towards GMD ID,
      handle the identification requiring subvendor and subdevice as a special
      case first, instead of unnecessarily growing the intel_display_ids[]
      array with subvendor and subdevice.
      
      [    5.425298] BUG: kernel NULL pointer dereference, address: 0000000000000000
      [    5.426059] #PF: supervisor read access in kernel mode
      [    5.426810] #PF: error_code(0x0000) - not-present page
      [    5.427570] PGD 0 P4D 0
      [    5.428285] Oops: 0000 [#1] PREEMPT SMP PTI
      [    5.429035] CPU: 0 PID: 137 Comm: (udev-worker) Not tainted 6.4.0-1-amd64 #1  Debian 6.4.4-1
      [    5.429759] Hardware name: HP HP Z220 SFF Workstation/HP Z220 SFF Workstation, BIOS 4.19-218-gb184e6e0a1 02/02/2023
      [    5.430485] RIP: 0010:intel_device_info_driver_create+0xf1/0x120 [i915]
      [    5.431338] Code: 48 8b 97 80 1b 00 00 89 8f c0 1b 00 00 48 89 b7 b0 1b 00 00 48 89 97 b8 1b 00 00 0f b7 fd e8 76 e8 14 00 48 89 83 50 1b 00 00 <48> 8b 08 48 89 8b c4 1b 00 00 48 8b 48 08 48 89 8b cc 1b 00 00 8b
      [    5.432920] RSP: 0018:ffffb8254044fb98 EFLAGS: 00010206
      [    5.433707] RAX: 0000000000000000 RBX: ffff923076e80000 RCX: 0000000000000000
      [    5.434494] RDX: 0000000000000260 RSI: 0000000100001000 RDI: 000000000000016a
      [    5.435277] RBP: 000000000000016a R08: ffffb8254044fb00 R09: 0000000000000000
      [    5.436055] R10: ffff922d02761de8 R11: 00657361656c6572 R12: ffffffffc0e5d140
      [    5.436867] R13: ffff922d00b720d0 R14: 0000000076e80000 R15: ffff923078c0cae8
      [    5.437646] FS:  00007febd19a18c0(0000) GS:ffff92307c000000(0000) knlGS:0000000000000000
      [    5.438434] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [    5.439218] CR2: 0000000000000000 CR3: 000000010256e002 CR4: 00000000001706f0
      [    5.440009] Call Trace:
      [    5.440824]  <TASK>
      [    5.441611]  ? __die+0x23/0x70
      [    5.442394]  ? page_fault_oops+0x17d/0x4c0
      [    5.443173]  ? exc_page_fault+0x7f/0x180
      [    5.443949]  ? asm_exc_page_fault+0x26/0x30
      [    5.444756]  ? intel_device_info_driver_create+0xf1/0x120 [i915]
      [    5.445652]  ? intel_device_info_driver_create+0xea/0x120 [i915]
      [    5.446545]  i915_driver_probe+0x7f/0xb60 [i915]
      [    5.447431]  ? drm_privacy_screen_get+0x15c/0x1a0 [drm]
      [    5.448240]  local_pci_probe+0x45/0xa0
      [    5.449013]  pci_device_probe+0xc7/0x240
      [    5.449748]  really_probe+0x19e/0x3e0
      [    5.450464]  ? __pfx___driver_attach+0x10/0x10
      [    5.451172]  __driver_probe_device+0x78/0x160
      [    5.451870]  driver_probe_device+0x1f/0x90
      [    5.452601]  __driver_attach+0xd2/0x1c0
      [    5.453293]  bus_for_each_dev+0x88/0xd0
      [    5.453989]  bus_add_driver+0x116/0x220
      [    5.454672]  driver_register+0x59/0x100
      [    5.455336]  i915_init+0x25/0xc0 [i915]
      [    5.456104]  ? __pfx_i915_init+0x10/0x10 [i915]
      [    5.456882]  do_one_initcall+0x5d/0x240
      [    5.457511]  do_init_module+0x60/0x250
      [    5.458126]  __do_sys_finit_module+0xac/0x120
      [    5.458721]  do_syscall_64+0x60/0xc0
      [    5.459314]  ? syscall_exit_to_user_mode+0x1b/0x40
      [    5.459897]  ? do_syscall_64+0x6c/0xc0
      [    5.460510]  entry_SYSCALL_64_after_hwframe+0x72/0xdc
      [    5.461082] RIP: 0033:0x7febd20b0eb9
      [    5.461648] Code: 08 89 e8 5b 5d c3 66 2e 0f 1f 84 00 00 00 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 2f 1f 0d 00 f7 d8 64 89 01 48
      [    5.462905] RSP: 002b:00007fffabb1ba78 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
      [    5.463554] RAX: ffffffffffffffda RBX: 0000561e6304f410 RCX: 00007febd20b0eb9
      [    5.464201] RDX: 0000000000000000 RSI: 00007febd2244f0d RDI: 0000000000000015
      [    5.464869] RBP: 00007febd2244f0d R08: 0000000000000000 R09: 000000000000000a
      [    5.465512] R10: 0000000000000015 R11: 0000000000000246 R12: 0000000000020000
      [    5.466124] R13: 0000000000000000 R14: 0000561e63032b60 R15: 000000000000000a
      [    5.466700]  </TASK>
      [    5.467271] Modules linked in: i915(+) drm_buddy video crc32_pclmul sr_mod hid_generic wmi crc32c_intel i2c_algo_bit sd_mod cdrom drm_display_helper cec usbhid rc_core ghash_clmulni_intel hid sha512_ssse3 ttm sha512_generic xhci_pci ehci_pci xhci_hcd ehci_hcd nvme ahci drm_kms_helper nvme_core libahci t10_pi libata psmouse aesni_intel scsi_mod crypto_simd i2c_i801 scsi_common crc64_rocksoft_generic cryptd i2c_smbus drm lpc_ich crc64_rocksoft crc_t10dif e1000e usbcore crct10dif_generic usb_common crct10dif_pclmul crc64 crct10dif_common button
      [    5.469750] CR2: 0000000000000000
      [    5.470364] ---[ end trace 0000000000000000 ]---
      [    5.470971] RIP: 0010:intel_device_info_driver_create+0xf1/0x120 [i915]
      [    5.471699] Code: 48 8b 97 80 1b 00 00 89 8f c0 1b 00 00 48 89 b7 b0 1b 00 00 48 89 97 b8 1b 00 00 0f b7 fd e8 76 e8 14 00 48 89 83 50 1b 00 00 <48> 8b 08 48 89 8b c4 1b 00 00 48 8b 48 08 48 89 8b cc 1b 00 00 8b
      [    5.473034] RSP: 0018:ffffb8254044fb98 EFLAGS: 00010206
      [    5.473698] RAX: 0000000000000000 RBX: ffff923076e80000 RCX: 0000000000000000
      [    5.474371] RDX: 0000000000000260 RSI: 0000000100001000 RDI: 000000000000016a
      [    5.475045] RBP: 000000000000016a R08: ffffb8254044fb00 R09: 0000000000000000
      [    5.475725] R10: ffff922d02761de8 R11: 00657361656c6572 R12: ffffffffc0e5d140
      [    5.476405] R13: ffff922d00b720d0 R14: 0000000076e80000 R15: ffff923078c0cae8
      [    5.477124] FS:  00007febd19a18c0(0000) GS:ffff92307c000000(0000) knlGS:0000000000000000
      [    5.477811] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [    5.478499] CR2: 0000000000000000 CR3: 000000010256e002 CR4: 00000000001706f0
      
      Fixes: 69d43981 ("drm/i915/display: Make display responsible for probing its own IP")
      Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8991
      Cc: Matt Roper <matthew.d.roper@intel.com>
      Cc: Andrzej Hajda <andrzej.hajda@intel.com>
      Reviewed-by: NLuca Coelho <luciano.coelho@intel.com>
      Reviewed-by: NMatt Roper <matthew.d.roper@intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230804084600.1005818-1-jani.nikula@intel.com
      14351883
  2. 08 8月, 2023 16 次提交
  3. 07 8月, 2023 7 次提交
    • J
      drm/i915/fbc: Moved fence related code away from intel_fbc · 0701760e
      Jouni Högander 提交于
      As a preparation for Xe move HW fence details away from intel_fbc code.
      Add new functions to check support for legacy fencing and fence id and use
      these in fbc code. Xe doesn't support legacy fencing.
      
      v2: Fix intel_gt_support_legacy_fencing macro
      Signed-off-by: NJouni Högander <jouni.hogander@intel.com>
      Reviewed-by: NNirmoy Das <nirmoy.das@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230614051731.745821-4-jouni.hogander@intel.com
      0701760e
    • J
      drm/i915/fbc: Make FBC check stolen at use time · a6989c86
      Jouni Högander 提交于
      As a preparation for Xe change stolen memory initialization check to be
      done in use-time instead of during initialization.
      
      In case of xe, stolen memory is initialised much later so it can't be
      checked during init. There is no specific reason to check this in init for
      i915 either -> perform the check in use-time. This also gives us benefit
      fbc_no_reason reporting missing initialization being reason for disabled
      fbc.
      Signed-off-by: NJouni Högander <jouni.hogander@intel.com>
      Signed-off-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: NJeevan B <jeevan.b@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230614051731.745821-3-jouni.hogander@intel.com
      a6989c86
    • J
      drm/i915: Move stolen memory handling into i915_gem_stolen · 1d47074c
      Jouni Högander 提交于
      We are preparing for Xe. Xe stolen memory handling differs from i915 so we
      want to move stolen memory handling details into i915_gem_stolen.
      
      Also add a common type for fbc compressed fb and use it from fbc code
      instead of underlying type directly. This way we can have common type
      i915_stolen_fb for both i915 and Xe.
      
      v2: Fix couple of checkpatch warnings
      Signed-off-by: NJouni Högander <jouni.hogander@intel.com>
      Signed-off-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: NNirmoy Das <nirmoy.das@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230614051731.745821-2-jouni.hogander@intel.com
      1d47074c
    • D
      Merge tag 'drm-intel-gt-next-2023-08-04' of... · d9aa1da9
      Dave Airlie 提交于
      Merge tag 'drm-intel-gt-next-2023-08-04' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      Driver Changes:
      
      - Avoid infinite GPU waits by avoidin premature release of request's
        reusable memory (Chris, Janusz)
      - Expose RPS thresholds in sysfs (Tvrtko)
      - Apply GuC SLPC min frequency softlimit correctly (Vinay)
      - Restore SLPC efficient freq earlier (Vinay)
      - Consider OA buffer boundary when zeroing out reports (Umesh)
      - Extend Wa_14015795083 to TGL, RKL, DG1 and ADL (Matt R)
      - Fix context workarounds with non-masked regs on MTL/DG2 (Lucas)
      - Enable the CCS_FLUSH bit in the pipe control and in the CS for MTL+ (Andi)
      - Update MTL workarounds 14018778641, 22016122933 (Tejas, Zhanjun)
      - Ensure memory quiesced before AUX CCS invalidation (Jonathan)
      
      - Add a gsc_info debugfs (Daniele)
      - Invalidate the TLBs on each GT on multi-GT device (Chris)
      - Fix a VMA UAF for multi-gt platform (Nirmoy)
      - Do not use stolen on MTL due to HW bug (Nirmoy)
      - Check HuC and GuC version compatibility on MTL (Daniele)
      - Dump perf_limit_reasons for slow GuC init debug (Vinay)
      - Replace kmap() with kmap_local_page() (Sumitra, Ira)
      - Add sentinel to xehp_oa_b_counters for KASAN (Andrzej)
      - Add the gen12_needs_ccs_aux_inv helper (Andi)
      - Fixes and updates for GSC memory allocation (Daniele)
      - Fix one wrong caching mode enum usage (Tvrtko)
      - Fixes for GSC wakeref (Alan)
      
      - Static checker fixes (Harshit, Arnd, Dan, Cristophe, David, Andi)
      - Rename flags with bit_group_X according to the datasheet (Andi)
      - Use direct alias for i915 in requests (Andrzej)
      - Replace i915->gt0 with to_gt(i915) (Andi)
      - Use the i915_vma_flush_writes helper (Tvrtko)
      - Selftest improvements (Alan)
      - Remove dead code (Tvrtko)
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      
      # Conflicts:
      #	drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
      From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/ZMy6kDd9npweR4uy@jlahtine-mobl.ger.corp.intel.com
      d9aa1da9
    • D
      Merge tag 'drm-intel-next-2023-08-03' of git://anongit.freedesktop.org/drm/drm-intel into drm-next · 7c9aa0f7
      Dave Airlie 提交于
      - Removing unused declarations (Arnd, Gustavo)
      - ICL+ DSI modeset sequence fixes (Ville)
      - Improvements on HDCP (Suraj)
      - Fixes and clean up on MTL Display (Mika Kahola, Lee, RK, Nirmoy, Chaitanya)
      - Restore HSW/BDW PSR1 (Ville)
      - Other PSR Fixes (Jouni)
      - Fixes around DC states and other Display Power (Imre)
      - Init DDI ports in VBT order (Ville)
      - General documentation fixes (Jani)
      - General refactor for better organization (Jani)
      - Bigjoiner fix (Stanislav)
      - VDSC Fixes and improvements (Stanialav, Suraj)
      - Hotplug fixes and improvements (Simon, Suraj)
      - Start using plane scale factor for relative data rate (Stanislav)
      - Use shmem for dpt objects (RK)
      - Simplify expression &to_i915(dev)->drm (Uwe)
      - Do not access i915_gem_object members from frontbuffer tracking (Jouni)
      - Fix uncore race around i915->params.mmio_debug (Jani)
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      
      From: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/ZMv4RCzGyCmG/BDe@intel.com
      7c9aa0f7
    • D
      Merge tag 'drm-misc-next-2023-08-03' of git://anongit.freedesktop.org/drm/drm-misc into drm-next · ca9e70f5
      Dave Airlie 提交于
      drm-misc-next for v6.6:
      
      UAPI Changes:
      
       * virtio:
         * Support sync objects
      
      Cross-subsystem Changes:
      
       * dt-bindings:
         * Move several panel bindings to the correct files
      
       * fbcon:
         * Cleanups
      
       * fbdev:
         * Use _IOMEM_, _SYSMEM_, _DMAMEM_ infixes for initializer macros
           and Kconfig tokens, update drivers accordingly
         * ps3fb: Build fix
      
       * hid/i2c:
         * Allow panels and touchscreens to power sequence together
      
       * host1x:
         * Fixes
      
       * video:
         * Fix Kconfig dependencies for boot-up logo
      
      Core Changes:
      
       * Documentation updates and fixes
      
       * Fixes
      
       * MIPI-DBI:
         * Allow using same the D/C GPIO for multiple displays plus
           driver updates
      
       * Tests:
         * Convert to kunit actions
         * Fix NULL-deref in drm_exec tests
      
      Driver Changes:
      
       * armada:
         * Fixes
      
       * ast:
         * Represent BMV as virtual connector
         * Report DP connection status
      
       * bridge:
         * dw-hdmi: Support CEC suspend/resume
         * Support debugfs for chains
         * Fixes
      
       * i915:
         * Fixes
      
       * imx:
         * Convert to dev_error_probe()
         * Cleanups
      
       * ipu-v3:
         * Convert to devm_platform_ioremap_resource() in several places
      
       * nouveau:
         * Workaround DPCD issues
      
       * panel:
         * Convert to of_device_get_match_data()
         * Fix Kconfig dependencies
         * simple: Set bpc value to fix warning; Set connector type for AUO T215HVN01;
           Support Innolux G156HCE-L01 plus DT bindings
         * ili9881: Support TDO TL050HDV35 LCD panel plus DT bindings
         * startek: Support KD070FHFID015 MIPI-DSI panel plus DT bindings
         * sitronix-st7789v: Support Inanbo T28CP45TN89 plus DT bindings;
           Support EDT ET028013DMA plus DT bindings; Various cleanups
         * edp: Add timings for N140HCA-EAC
         * Allow panels and touchscreens to power sequence together
         * Documentation fixes
      
       * qaic:
         * Cleanups
      
       * repaper:
         * Fixes
      
       * ssd130x
         * Fix shadow-plane allocation
         * Cleanups
      
       * tegra:
         * Convert to devm_platform_ioremap_resource() in several places
         * Support bridge/connector
         * Enable PM
         * Fixes
      
       * udl:
         * Cleanups
      
       * v3d:
         * Fixes
      
       * vc4:
         * Convert tests to kunit actions
      
       * virtio:
         * Support sync objects
      
       * vkms:
         * Support gamma LUT
         * Fixes
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      
      # -----BEGIN PGP SIGNATURE-----
      #
      # iQEzBAABCAAdFiEEchf7rIzpz2NEoWjlaA3BHVMLeiMFAmTLwPUACgkQaA3BHVML
      # eiNRBwf8CTjJJpSppitI6YEDyjG5JjpJPOrw4gmyjPCLMRhIa+ddtz8c6eiAJQTX
      # Q4RWz4LWF0j/aRdXzxbhCJxLmgMoSbcZYN+jDSoaNbX4Fyi1KXw9eum/HZeMODBO
      # ScZQFC5iyiCeKHRXZU4+WefqIFTEkEJJll92g3JYlvy793S2TQsA9LB1RIkbwK6x
      # 0R+TtKSxAq9Gtwn4H0z4ACIzBTuIACxwNQRd6FTIeT4yrd7t+JY3WiBz9M96S6dK
      # npHyjvJ3Brb88rEzv2eZZUey3fxp7sO7U7DruQVOKkgi4FsltPWxs6Ze9iylXQZr
      # KcKfW7sxlF2JZlJwT4u0Ur6DMl60eQ==
      # =K1nU
      # -----END PGP SIGNATURE-----
      # gpg: Signature made Fri 04 Aug 2023 01:00:05 AEST
      # gpg:                using RSA key 7217FBAC8CE9CF6344A168E5680DC11D530B7A23
      # gpg: Can't check signature: No public key
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230803150149.GA16884@linux-uq9g
      ca9e70f5
    • D
      Merge tag 'drm-next-xilinx-20230802' of... · 2d3563e5
      Dave Airlie 提交于
      Merge tag 'drm-next-xilinx-20230802' of git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux into drm-next
      
      Miscellaneous fixes for the Xilinx zynqmp-dpsub driver
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      
      From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230801224454.GB335@pendragon.ideasonboard.com
      2d3563e5
  4. 04 8月, 2023 3 次提交
  5. 03 8月, 2023 11 次提交