71 unsigned int tag_index;
83 tag_signature =
bswap_32 ( tag_high );
84 tag_index = ( ( tag_low >> 24 ) & 0xff );
85 tag_offset = ( ( tag_low >> 8 ) & 0xffff );
86 tag_len = ( ( tag_low >> 0 ) & 0xff );
88 acpi_name ( tag_signature ), tag_index, tag_offset, tag_len );
91 table =
acpi_table ( tag_signature, tag_index );
100 if ( tag_offset > max_len )
106 if ( tag_len && ( tag_len < max_len ) )
111 offset += ( max_len - 1 );
118 for ( i = 0 ; ( ( i < max_len ) && ( i <
len ) ) ; i++ ) {
152 DBG (
"ACPI could not register settings: %s\n",
struct arbelprm_rc_send_wqe rc
struct init_fn acpi_settings_init_fn __init_fn(INIT_NORMAL)
ACPI settings initialiser.
#define le32_to_cpu(value)
static __always_inline void copy_from_user(void *dest, userptr_t src, off_t src_off, size_t len)
Copy data from user buffer.
userptr_t acpi_table(uint32_t signature, unsigned int index)
Locate ACPI table.
#define ENOENT
No such file or directory.
static struct settings_operations acpi_settings_operations
ACPI settings operations.
uint64_t tag
Setting tag, if applicable.
#define INIT_NORMAL
Normal initialisation.
uint32_t userptr_t
A pointer to a user buffer.
An initialisation function.
#define __unused
Declare a variable or data structure as unused.
static EFI_ACPI_TABLE_PROTOCOL * acpi
ACPI table protocol protocol.
const struct setting_type * type
Setting type.
int(* numerate)(const struct setting_type *type, const void *raw, size_t raw_len, unsigned long *value)
Convert setting value to number.
char * strerror(int errno)
Retrieve string representation of error number.
static void acpi_settings_init(void)
Initialise ACPI settings.
Settings block operations.
struct list_head siblings
Sibling settings blocks.
static const char * acpi_name(uint32_t signature)
Transcribe ACPI table signature (for debugging)
uint8_t data[48]
Additional event data.
static int acpi_settings_fetch(struct settings *settings, struct setting *setting, void *data, size_t len)
Fetch value of ACPI setting.
static int acpi_settings_applies(struct settings *settings __unused, const struct setting *setting)
Check applicability of ACPI setting.
int(* applies)(struct settings *settings, const struct setting *setting)
Check applicability of setting.
struct list_head children
Child settings blocks.
int register_settings(struct settings *settings, struct settings *parent, const char *name)
Register settings block.
uint16_t offset
Offset to command line.
#define DBG(...)
Print a debugging message.
#define LIST_HEAD_INIT(list)
Initialise a static list head.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
static const struct settings_scope acpi_settings_scope
ACPI settings scope.
const struct settings_scope * scope
Setting scope (or NULL)
#define NULL
NULL pointer (VOID *)
struct refcnt * refcnt
Reference counter.
static struct settings acpi_settings
ACPI settings.