drivers/platform/wmi/marshalling.c

Source file repositories/reference/linux-study-clean/drivers/platform/wmi/marshalling.c

File Facts

System
Linux kernel
Corpus path
drivers/platform/wmi/marshalling.c
Extension
.c
Size
5606 bytes
Lines
252
Domain
Driver Families
Bucket
drivers/platform
Inferred role
Driver Families: exported/initcall integration point
Status
integration 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

if (value > 0x7F) {
			kfree(str);
			return -EINVAL;
		}

		str[i] = value & 0xFF;

		/*
		 * ACPI strings should only contain a single nul character at the end.
		 * Because of this we must not copy any padding from the WMI string.
		 */
		if (!value) {
			/* ACPICA wants the length of the string without the nul character */
			out->length = i;
			out->pointer = str;
			return 0;
		}
	}

	str[chars] = '\0';

	out->length = chars;
	out->pointer = str;

	return 0;
}
EXPORT_SYMBOL_IF_KUNIT(wmi_marshal_string);

Annotation

Implementation Notes