drivers/gpu/drm/panfrost/panfrost_issues.h
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/panfrost/panfrost_issues.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/panfrost/panfrost_issues.h- Extension
.h- Size
- 7346 bytes
- Lines
- 275
- Domain
- Driver Families
- Bucket
- drivers/gpu
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/bitops.hpanfrost_device.h
Detected Declarations
enum panfrost_hw_issuefunction panfrost_has_hw_issue
Annotated Snippet
#ifndef __PANFROST_ISSUES_H__
#define __PANFROST_ISSUES_H__
#include <linux/bitops.h>
#include "panfrost_device.h"
/*
* This is not a complete list of issues, but only the ones the driver needs
* to care about.
*/
enum panfrost_hw_issue {
/* Need way to guarantee that all previously-translated memory accesses
* are committed */
HW_ISSUE_6367,
/* On job complete with non-done the cache is not flushed */
HW_ISSUE_6787,
/* Write of PRFCNT_CONFIG_MODE_MANUAL to PRFCNT_CONFIG causes a
* instrumentation dump if PRFCNT_TILER_EN is enabled */
HW_ISSUE_8186,
/* TIB: Reports faults from a vtile which has not yet been allocated */
HW_ISSUE_8245,
/* uTLB deadlock could occur when writing to an invalid page at the
* same time as access to a valid page in the same uTLB cache line ( ==
* 4 PTEs == 16K block of mapping) */
HW_ISSUE_8316,
/* HT: TERMINATE for RUN command ignored if previous LOAD_DESCRIPTOR is
* still executing */
HW_ISSUE_8394,
/* CSE: Sends a TERMINATED response for a task that should not be
* terminated */
HW_ISSUE_8401,
/* Repeatedly Soft-stopping a job chain consisting of (Vertex Shader,
* Cache Flush, Tiler) jobs causes DATA_INVALID_FAULT on tiler job. */
HW_ISSUE_8408,
/* Disable the Pause Buffer in the LS pipe. */
HW_ISSUE_8443,
/* Change in RMUs in use causes problems related with the core's SDC */
HW_ISSUE_8987,
/* Compute endpoint has a 4-deep queue of tasks, meaning a soft stop
* won't complete until all 4 tasks have completed */
HW_ISSUE_9435,
/* HT: Tiler returns TERMINATED for non-terminated command */
HW_ISSUE_9510,
/* Occasionally the GPU will issue multiple page faults for the same
* address before the MMU page table has been read by the GPU */
HW_ISSUE_9630,
/* RA DCD load request to SDC returns invalid load ignore causing
* colour buffer mismatch */
HW_ISSUE_10327,
/* MMU TLB invalidation hazards */
HW_ISSUE_10649,
/* Missing cache flush in multi core-group configuration */
HW_ISSUE_10676,
/* Chicken bit on T72X for a hardware workaround in compiler */
HW_ISSUE_10797,
/* Soft-stopping fragment jobs might fail with TILE_RANGE_FAULT */
HW_ISSUE_10817,
/* Intermittent missing interrupt on job completion */
HW_ISSUE_10883,
/* Soft-stopping fragment jobs might fail with TILE_RANGE_ERROR
* (similar to issue 10817) and can use #10817 workaround */
HW_ISSUE_10959,
/* Soft-stopped fragment shader job can restart with out-of-bound
* restart index */
HW_ISSUE_10969,
/* Race condition can cause tile list corruption */
HW_ISSUE_11020,
Annotation
- Immediate include surface: `linux/bitops.h`, `panfrost_device.h`.
- Detected declarations: `enum panfrost_hw_issue`, `function panfrost_has_hw_issue`.
- Atlas domain: Driver Families / drivers/gpu.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.