drivers/acpi/acpica/acutils.h

Source file repositories/reference/linux-study-clean/drivers/acpi/acpica/acutils.h

File Facts

System
Linux kernel
Corpus path
drivers/acpi/acpica/acutils.h
Extension
.h
Size
21300 bytes
Lines
760
Domain
Driver Families
Bucket
drivers/acpi
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 acpi_pkg_info {
	u8 *free_space;
	acpi_size length;
	u32 object_space;
	u32 num_packages;
};

/* Object reference counts */

#define REF_INCREMENT       (u16) 0
#define REF_DECREMENT       (u16) 1

/* acpi_ut_dump_buffer */

#define DB_BYTE_DISPLAY      0x01
#define DB_WORD_DISPLAY      0x02
#define DB_DWORD_DISPLAY     0x04
#define DB_QWORD_DISPLAY     0x08
#define DB_DISPLAY_DATA_ONLY 0x10

/*
 * utascii - ASCII utilities
 */
u8 acpi_ut_valid_nameseg(char *signature);

u8 acpi_ut_valid_name_char(char character, u32 position);

void acpi_ut_check_and_repair_ascii(u8 *name, char *repaired_name, u32 count);

/*
 * utcksum - Checksum utilities
 */
u8 acpi_ut_generate_checksum(void *table, u32 length, u8 original_checksum);

u8 acpi_ut_checksum(u8 *buffer, u32 length);

acpi_status
acpi_ut_verify_cdat_checksum(struct acpi_table_cdat *cdat_table, u32 length);

acpi_status
acpi_ut_verify_checksum(struct acpi_table_header *table, u32 length);

/*
 * utnonansi - Non-ANSI C library functions
 */
void acpi_ut_strupr(char *src_string);

void acpi_ut_strlwr(char *src_string);

int acpi_ut_stricmp(char *string1, char *string2);

/*
 * utstrsuppt - string-to-integer conversion support functions
 */
acpi_status acpi_ut_convert_octal_string(char *string, u64 *return_value);

acpi_status acpi_ut_convert_decimal_string(char *string, u64 *return_value_ptr);

acpi_status acpi_ut_convert_hex_string(char *string, u64 *return_value_ptr);

char acpi_ut_remove_whitespace(char **string);

char acpi_ut_remove_leading_zeros(char **string);

u8 acpi_ut_detect_hex_prefix(char **string);

void acpi_ut_remove_hex_prefix(char **string);

u8 acpi_ut_detect_octal_prefix(char **string);

/*
 * utstrtoul64 - string-to-integer conversion functions
 */
acpi_status acpi_ut_strtoul64(char *string, u64 *ret_integer);

u64 acpi_ut_explicit_strtoul64(char *string);

u64 acpi_ut_implicit_strtoul64(char *string);

/*
 * utglobal - Global data structures and procedures
 */
acpi_status acpi_ut_init_globals(void);

const char *acpi_ut_get_mutex_name(u32 mutex_id);

#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)

const char *acpi_ut_get_notify_name(u32 notify_value, acpi_object_type type);
#endif

Annotation

Implementation Notes