drivers/gpu/drm/tests/drm_cmdline_parser_test.c

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/tests/drm_cmdline_parser_test.c

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/tests/drm_cmdline_parser_test.c
Extension
.c
Size
34735 bytes
Lines
1080
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 drm_cmdline_invalid_test {
	const char *name;
	const char *cmdline;
};

static void drm_test_cmdline_invalid(struct kunit *test)
{
	const struct drm_cmdline_invalid_test *params = test->param_value;
	struct drm_cmdline_mode mode = { };

	KUNIT_EXPECT_FALSE(test, drm_mode_parse_command_line_for_connector(params->cmdline,
									   &no_connector,
									   &mode));
}

static const struct drm_cmdline_invalid_test drm_cmdline_invalid_tests[] = {
	{
		.name = "margin_only",
		.cmdline = "m",
	},
	{
		.name = "interlace_only",
		.cmdline = "i",
	},
	{
		.name = "res_missing_x",
		.cmdline = "x480",
	},
	{
		.name = "res_missing_y",
		.cmdline = "1024x",
	},
	{
		.name = "res_bad_y",
		.cmdline = "1024xtest",
	},
	{
		.name = "res_missing_y_bpp",
		.cmdline = "1024x-24",
	},
	{
		.name = "res_bad_bpp",
		.cmdline = "720x480-test",
	},
	{
		.name = "res_bad_refresh",
		.cmdline = "720x480@refresh",
	},
	{
		.name = "res_bpp_refresh_force_on_off",
		.cmdline = "720x480-24@60de",
	},
	{
		.name = "res_invalid_mode",
		.cmdline = "720x480f",
	},
	{
		.name = "res_bpp_wrong_place_mode",
		.cmdline = "720x480e-24",
	},
	{
		.name = "name_bpp_refresh",
		.cmdline = "NTSC-24@60",
	},
	{
		.name = "name_refresh",
		.cmdline = "NTSC@60",
	},
	{
		.name = "name_refresh_wrong_mode",
		.cmdline = "NTSC@60m",
	},
	{
		.name = "name_refresh_invalid_mode",
		.cmdline = "NTSC@60f",
	},
	{
		.name = "rotate_multiple",
		.cmdline = "720x480,rotate=0,rotate=90",
	},
	{
		.name = "rotate_invalid_val",
		.cmdline = "720x480,rotate=42",
	},
	{
		.name = "rotate_truncated",
		.cmdline = "720x480,rotate=",
	},
	{
		.name = "invalid_option",

Annotation

Implementation Notes