firmware: dmi: Add dmi_memdev_handle
Add a utility function dmi_memdev_handle() which returns the DMI handle associated with a given memory slot. This will allow kernel drivers to iterate over the memory slots. Signed-off-by: Jean Delvare <jdelvare@suse.de>
This commit is contained in:
parent
9e0afe3910
commit
7c2378800c
|
@ -1151,3 +1151,19 @@ u8 dmi_memdev_type(u16 handle)
|
|||
return 0x0; /* Not a valid value */
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dmi_memdev_type);
|
||||
|
||||
/**
|
||||
* dmi_memdev_handle - get the DMI handle of a memory slot
|
||||
* @slot: slot number
|
||||
*
|
||||
* Return the DMI handle associated with a given memory slot, or %0xFFFF
|
||||
* if there is no such slot.
|
||||
*/
|
||||
u16 dmi_memdev_handle(int slot)
|
||||
{
|
||||
if (dmi_memdev && slot >= 0 && slot < dmi_memdev_nr)
|
||||
return dmi_memdev[slot].handle;
|
||||
|
||||
return 0xffff; /* Not a valid value */
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dmi_memdev_handle);
|
||||
|
|
|
@ -114,6 +114,7 @@ extern bool dmi_match(enum dmi_field f, const char *str);
|
|||
extern void dmi_memdev_name(u16 handle, const char **bank, const char **device);
|
||||
extern u64 dmi_memdev_size(u16 handle);
|
||||
extern u8 dmi_memdev_type(u16 handle);
|
||||
extern u16 dmi_memdev_handle(int slot);
|
||||
|
||||
#else
|
||||
|
||||
|
@ -144,6 +145,7 @@ static inline void dmi_memdev_name(u16 handle, const char **bank,
|
|||
const char **device) { }
|
||||
static inline u64 dmi_memdev_size(u16 handle) { return ~0ul; }
|
||||
static inline u8 dmi_memdev_type(u16 handle) { return 0x0; }
|
||||
static inline u16 dmi_memdev_handle(int slot) { return 0xffff; }
|
||||
static inline const struct dmi_system_id *
|
||||
dmi_first_match(const struct dmi_system_id *list) { return NULL; }
|
||||
|
||||
|
|
Loading…
Reference in New Issue