12 May, 2010

1 commit

  • - Use struct acpi_table_ibft instead of struct ibft_table_header
    - Don't do reserve_ibft_region() on UEFI machines (section 1.4.3.1)
    - If ibft_addr isn't initialized when ibft_init() is called, check for
    ACPI-based tables.
    - Fix compiler error when CONFIG_ACPI is not defined.

    Signed-off-by: Konrad Rzeszutek Wilk
    Signed-off-by: Peter Jones
    Signed-off-by: Mike Christie

    Peter Jones
     

02 Apr, 2010

1 commit

  • This allows arch code could decide the way to reserve the ibft.

    And we should reserve ibft as early as possible, instead of BOOTMEM
    stage, in case the table is in RAM range and is not reserved by BIOS
    (this will often be the case.)

    Move to just after find_smp_config().

    Also when CONFIG_NO_BOOTMEM=y, We will not have reserve_bootmem() anymore.

    -v2: fix typo about ibft pointed by Konrad Rzeszutek Wilk

    Signed-off-by: Yinghai Lu
    LKML-Reference:
    Cc: Pekka Enberg
    Cc: Peter Jones
    Cc: Konrad Rzeszutek Wilk
    CC: Jan Beulich
    Signed-off-by: H. Peter Anvin

    Yinghai Lu
     

20 Apr, 2008

1 commit

  • Add /sysfs/firmware/ibft/[initiator|targetX|ethernetX] directories along with
    text properties which export the the iSCSI Boot Firmware Table (iBFT)
    structure.

    What is iSCSI Boot Firmware Table? It is a mechanism for the iSCSI tools to
    extract from the machine NICs the iSCSI connection information so that they
    can automagically mount the iSCSI share/target. Currently the iSCSI
    information is hard-coded in the initrd. The /sysfs entries are read-only
    one-name-and-value fields.

    The usual set of data exposed is:

    # for a in `find /sys/firmware/ibft/ -type f -print`; do echo -n "$a: "; cat $a; done
    /sys/firmware/ibft/target0/target-name: iqn.2007.com.intel-sbx44:storage-10gb
    /sys/firmware/ibft/target0/nic-assoc: 0
    /sys/firmware/ibft/target0/chap-type: 0
    /sys/firmware/ibft/target0/lun: 00000000
    /sys/firmware/ibft/target0/port: 3260
    /sys/firmware/ibft/target0/ip-addr: 192.168.79.116
    /sys/firmware/ibft/target0/flags: 3
    /sys/firmware/ibft/target0/index: 0
    /sys/firmware/ibft/ethernet0/mac: 00:11:25:9d:8b:01
    /sys/firmware/ibft/ethernet0/vlan: 0
    /sys/firmware/ibft/ethernet0/gateway: 192.168.79.254
    /sys/firmware/ibft/ethernet0/origin: 0
    /sys/firmware/ibft/ethernet0/subnet-mask: 255.255.252.0
    /sys/firmware/ibft/ethernet0/ip-addr: 192.168.77.41
    /sys/firmware/ibft/ethernet0/flags: 7
    /sys/firmware/ibft/ethernet0/index: 0
    /sys/firmware/ibft/initiator/initiator-name: iqn.2007-07.com:konrad.initiator
    /sys/firmware/ibft/initiator/flags: 3
    /sys/firmware/ibft/initiator/index: 0

    For full details of the IBFT structure please take a look at:
    ftp://ftp.software.ibm.com/systems/support/system_x_pdf/ibm_iscsi_boot_firmware_table_v1.02.pdf

    [akpm@linux-foundation.org: fix build]
    Signed-off-by: Konrad Rzeszutek
    Cc: Mike Christie
    Cc: Peter Jones
    Cc: James Bottomley
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Konrad Rzeszutek