drivers/gpu/drm/vc4/tests/vc4_mock.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/vc4/tests/vc4_mock.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/vc4/tests/vc4_mock.h
Extension
.h
Size
1631 bytes
Lines
62
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.

Dependency Surface

Detected Declarations

Annotated Snippet

struct vc4_dummy_crtc {
	struct vc4_crtc crtc;
};

struct vc4_dummy_crtc *vc4_mock_pv(struct kunit *test,
				   struct drm_device *drm,
				   struct drm_plane *plane,
				   const struct vc4_crtc_data *data);

struct vc4_dummy_output {
	struct vc4_encoder encoder;
	struct drm_connector connector;
};

#define encoder_to_vc4_dummy_output(_enc)				\
	container_of_const(_enc, struct vc4_dummy_output, encoder.base)

struct vc4_dummy_output *vc4_dummy_output(struct kunit *test,
					  struct drm_device *drm,
					  struct drm_crtc *crtc,
					  enum vc4_encoder_type vc4_encoder_type,
					  unsigned int kms_encoder_type,
					  unsigned int connector_type);

struct vc4_dev *vc4_mock_device(struct kunit *test);
struct vc4_dev *vc5_mock_device(struct kunit *test);

int vc4_mock_atomic_add_output(struct kunit *test,
			       struct drm_atomic_commit *state,
			       enum vc4_encoder_type type);
int vc4_mock_atomic_del_output(struct kunit *test,
			       struct drm_atomic_commit *state,
			       enum vc4_encoder_type type);

#endif // VC4_MOCK_H_

Annotation

Implementation Notes