iPXE
Functions
acpimac.h File Reference

ACPI MAC address. More...

Go to the source code of this file.

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)
 
int acpi_mac (uint8_t *hw_addr)
 Extract MAC address from DSDT/SSDT. More...
 

Detailed Description

ACPI MAC address.

Definition in file acpimac.h.

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )

◆ acpi_mac()

int acpi_mac ( uint8_t hw_addr)

Extract MAC address from DSDT/SSDT.

Parameters
hw_addrMAC address to fill in
Return values
rcReturn status code

Definition at line 234 of file acpimac.c.

234  {
235  int rc;
236 
237  /* Look for an "AMAC" address */
239  acpimac_extract_auxmac ) ) == 0 )
240  return 0;
241 
242  /* Look for a "MACA" address */
244  acpimac_extract_auxmac ) ) == 0 )
245  return 0;
246 
247  /* Look for a "RTMA" address */
249  acpimac_extract_rtxmac ) ) == 0 )
250  return 0;
251 
252  return -ENOENT;
253 }
struct arbelprm_rc_send_wqe rc
Definition: arbel.h:14
static int acpimac_extract_rtxmac(const struct acpi_header *zsdt, size_t len, size_t offset, void *data)
Extract "_RTXMAC_" MAC address from DSDT/SSDT.
Definition: acpimac.c:222
static int acpimac_extract_auxmac(const struct acpi_header *zsdt, size_t len, size_t offset, void *data)
Extract "_AUXMAC_" MAC address from DSDT/SSDT.
Definition: acpimac.c:207
#define MACA_SIGNATURE
MACA signature.
Definition: acpimac.c:48
#define AMAC_SIGNATURE
AMAC signature.
Definition: acpimac.c:45
#define ENOENT
No such file or directory.
Definition: errno.h:514
#define RTMA_SIGNATURE
RTMA signature.
Definition: acpimac.c:51
int acpi_extract(uint32_t signature, void *data, int(*extract)(const struct acpi_header *zsdt, size_t len, size_t offset, void *data))
Extract value from DSDT/SSDT.
Definition: acpi.c:227
uint8_t hw_addr[MAX_HW_ADDR_LEN]
Hardware address.
Definition: netdevice.h:381

References acpi_extract(), acpimac_extract_auxmac(), acpimac_extract_rtxmac(), AMAC_SIGNATURE, ENOENT, MACA_SIGNATURE, rc, and RTMA_SIGNATURE.

Referenced by ecm_fetch_mac(), sysmac_fetch(), and typeof().