summaryrefslogtreecommitdiff
path: root/include/net/codel_impl.h
diff options
context:
space:
mode:
authorMatt Roper <matthew.d.roper@intel.com>2022-11-28 15:30:13 -0800
committerMatt Roper <matthew.d.roper@intel.com>2022-12-02 08:00:40 -0800
commit3100240bf846ead1a2dbd6ae62bf48c687b9f5be (patch)
tree69a2779fdeed8e358497445d76e34aba35bfcf14 /include/net/codel_impl.h
parent70b612084586402d39aabf7d76c605914cc3c2b6 (diff)
drm/i915/mtl: Add hardware-level lock for steering
Starting with MTL, the driver needs to not only protect the steering control register from simultaneous software accesses, but also protect against races with hardware/firmware agents. The hardware provides a dedicated locking mechanism to support this via the MTL_STEER_SEMAPHORE register. Reading the register acts as a 'trylock' operation; the read will return 0x1 if the lock is acquired or 0x0 if something else is already holding the lock; once acquired, writing 0x1 to the register will release the lock. We'll continue to grab the software lock as well, just so lockdep can track our locking; assuming the hardware lock is behaving properly, there should never be any contention on the software lock in this case. v2: - Extend hardware semaphore timeout and add a taint for CI if it ever happens (this would imply misbehaving hardware/firmware). (Mika) - Add "MTL_" prefix to new steering semaphore register. (Mika) Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20221128233014.4000136-5-matthew.d.roper@intel.com
Diffstat (limited to 'include/net/codel_impl.h')
0 files changed, 0 insertions, 0 deletions