iPXE
Data Structures | Defines | Functions
aoe.h File Reference

AoE protocol. More...

#include <stdint.h>
#include <ipxe/list.h>
#include <ipxe/if_ether.h>
#include <ipxe/retry.h>
#include <ipxe/ata.h>
#include <ipxe/acpi.h>

Go to the source code of this file.

Data Structures

struct  aoecfg
 An AoE config command. More...
struct  aoeata
 An AoE ATA command. More...
union  aoecmd
 An AoE command. More...
struct  aoehdr
 An AoE header. More...
struct  abft_table
 AoE Boot Firmware Table (aBFT) More...

Defines

#define AOE_FL_EXTENDED   0x40
 LBA48 extended addressing.
#define AOE_FL_DEV_HEAD   0x10
 Device/head flag.
#define AOE_FL_ASYNC   0x02
 Asynchronous write.
#define AOE_FL_WRITE   0x01
 Write command.
#define AOE_VERSION   0x10
 Version 1.
#define AOE_VERSION_MASK   0xf0
 Version part of ver_flags field.
#define AOE_FL_RESPONSE   0x08
 Message is a response.
#define AOE_FL_ERROR   0x04
 Command generated an error.
#define AOE_MAJOR_BROADCAST   0xffff
#define AOE_MINOR_BROADCAST   0xff
#define AOE_CMD_ATA   0x00
 Issue ATA command.
#define AOE_CMD_CONFIG   0x01
 Query Config Information.
#define AOE_ERR_BAD_COMMAND   1
 Unrecognised command code.
#define AOE_ERR_BAD_PARAMETER   2
 Bad argument parameter.
#define AOE_ERR_UNAVAILABLE   3
 Device unavailable.
#define AOE_ERR_CONFIG_EXISTS   4
 Config string present.
#define AOE_ERR_BAD_VERSION   5
 Unsupported version.
#define AOE_STATUS_ERR_MASK   0x0f
 Error portion of status code.
#define AOE_STATUS_PENDING   0x80
 Command pending.
#define AOE_TAG_MAGIC   0x18ae0000
 AoE tag magic marker.
#define AOE_MAX_COUNT   2
 Maximum number of sectors per packet.
#define ABFT_SIG   ACPI_SIGNATURE ( 'a', 'B', 'F', 'T' )
 AoE boot firmware table signature.

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)

Detailed Description

AoE protocol.

Definition in file aoe.h.


Define Documentation

#define AOE_FL_EXTENDED   0x40

LBA48 extended addressing.

Definition at line 54 of file aoe.h.

Referenced by aoecmd_ata_cmd().

#define AOE_FL_DEV_HEAD   0x10

Device/head flag.

Definition at line 55 of file aoe.h.

Referenced by aoecmd_ata_cmd().

#define AOE_FL_ASYNC   0x02

Asynchronous write.

Definition at line 56 of file aoe.h.

#define AOE_FL_WRITE   0x01

Write command.

Definition at line 57 of file aoe.h.

Referenced by aoecmd_ata_cmd().

#define AOE_VERSION   0x10

Version 1.

Definition at line 85 of file aoe.h.

Referenced by aoe_rx(), and aoecmd_tx().

#define AOE_VERSION_MASK   0xf0

Version part of ver_flags field.

Definition at line 86 of file aoe.h.

Referenced by aoe_rx().

#define AOE_FL_RESPONSE   0x08

Message is a response.

Definition at line 88 of file aoe.h.

Referenced by aoe_rx().

#define AOE_FL_ERROR   0x04

Command generated an error.

Definition at line 89 of file aoe.h.

Referenced by aoecmd_rx().

#define AOE_MAJOR_BROADCAST   0xffff

Definition at line 91 of file aoe.h.

#define AOE_MINOR_BROADCAST   0xff

Definition at line 92 of file aoe.h.

#define AOE_CMD_ATA   0x00

Issue ATA command.

Definition at line 94 of file aoe.h.

Referenced by aoecmd_ata_cmd().

#define AOE_CMD_CONFIG   0x01

Query Config Information.

Definition at line 95 of file aoe.h.

Referenced by aoecmd_cfg_cmd().

#define AOE_ERR_BAD_COMMAND   1

Unrecognised command code.

Definition at line 97 of file aoe.h.

#define AOE_ERR_BAD_PARAMETER   2

Bad argument parameter.

Definition at line 98 of file aoe.h.

#define AOE_ERR_UNAVAILABLE   3

Device unavailable.

Definition at line 99 of file aoe.h.

#define AOE_ERR_CONFIG_EXISTS   4

Config string present.

Definition at line 100 of file aoe.h.

#define AOE_ERR_BAD_VERSION   5

Unsupported version.

Definition at line 101 of file aoe.h.

#define AOE_STATUS_ERR_MASK   0x0f

Error portion of status code.

Definition at line 103 of file aoe.h.

#define AOE_STATUS_PENDING   0x80

Command pending.

Definition at line 104 of file aoe.h.

#define AOE_TAG_MAGIC   0x18ae0000

AoE tag magic marker.

Definition at line 107 of file aoe.h.

Referenced by aoecmd_new_tag().

#define AOE_MAX_COUNT   2

Maximum number of sectors per packet.

Definition at line 110 of file aoe.h.

Referenced by aoedev_open().

#define ABFT_SIG   ACPI_SIGNATURE ( 'a', 'B', 'F', 'T' )

AoE boot firmware table signature.

Definition at line 113 of file aoe.h.

Referenced by abft_install().


Function Documentation

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )