/openbmc/u-boot/drivers/ata/ |
H A D | sata_sil.c | 13 #include <fis.h> 34 printf("Status FIS dump:\n"); in sil_sata_dump_fis() 116 static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis) in sil_read_fis() argument 125 src = (u32 *)&prb->fis; in sil_read_fis() 126 dst = (u32 *)fis; in sil_read_fis() 171 struct sata_fis_d2h fis; in sil_cmd_set_feature() local 176 pcmd->prb.fis.fis_type = SATA_FIS_TYPE_REGISTER_H2D; in sil_cmd_set_feature() 177 pcmd->prb.fis.pm_port_c = (1 << 7); in sil_cmd_set_feature() 178 pcmd->prb.fis.command = ATA_CMD_SET_FEATURES; in sil_cmd_set_feature() 179 pcmd->prb.fis.features = SETFEATURES_XFER; in sil_cmd_set_feature() [all …]
|
H A D | ahci.c | 595 * Second item: Received-FIS area in ahci_port_start() 634 static int ahci_device_data_io(struct ahci_uc_priv *uc_priv, u8 port, u8 *fis, in ahci_device_data_io() argument 657 memcpy((unsigned char *)pp->cmd_tbl, fis, fis_len); in ahci_device_data_io() 703 u8 fis[20]; in ata_scsiop_inquiry() local 716 memset(fis, 0, sizeof(fis)); in ata_scsiop_inquiry() 717 /* Construct the FIS */ in ata_scsiop_inquiry() 718 fis[0] = 0x27; /* Host to device FIS. */ in ata_scsiop_inquiry() 719 fis[1] = 1 << 7; /* Command FIS. */ in ata_scsiop_inquiry() 720 fis[2] = ATA_CMD_ID_ATA; /* Command byte. */ in ata_scsiop_inquiry() 725 if (ahci_device_data_io(uc_priv, port, (u8 *)&fis, sizeof(fis), in ata_scsiop_inquiry() [all …]
|
H A D | sata_sil.h | 53 struct sata_fis_h2d fis; member 156 PORT_IRQ_UNK_FIS = (1 << 6), /* unknown FIS received */ 177 PORT_CERR_DEV = 1, /* Error bit in D2H Register FIS */ 178 PORT_CERR_SDB = 2, /* Error bit in SDB FIS */ 179 PORT_CERR_DATA = 3, /* Error in data FIS not detected by dev */ 180 PORT_CERR_SEND = 4, /* Initial cmd FIS transmission failure */
|
/openbmc/linux/Documentation/devicetree/bindings/mtd/partitions/ |
H A D | redboot-fis.yaml | 4 $id: http://devicetree.org/schemas/mtd/partitions/redboot-fis.yaml# 7 title: RedBoot FLASH Image System (FIS) Partitions 9 description: The FLASH Image System (FIS) directory is a flash description 23 const: redboot-fis 25 fis-index-block: 27 description: a index to the eraseblock containing the FIS directory on this 37 - fis-index-block 45 compatible = "redboot-fis"; 46 fis-index-block = <0>;
|
/openbmc/linux/drivers/block/mtip32xx/ |
H A D | mtip32xx.c | 37 /* DMA region containing RX Fis, Identify, RLE10, and SMART buffers */ 222 * Enable/disable the reception of FIS 234 /* enable FIS reception */ in mtip_enable_fis() 260 /* enable FIS reception */ in mtip_enable_engine() 272 * Enables the port DMA engine and FIS reception. 279 /* Enable FIS reception */ in mtip_start_port() 288 * and FIS reception. 303 /* Disable FIS reception */ in mtip_deinit_port() 311 * then initializes it by setting the command header and RX FIS addresses, 325 /* Program the command list base and FIS base addresses */ in mtip_init_port() [all …]
|
H A D | mtip32xx.h | 184 /* Register Frame Information Structure (FIS), host to device. */ 187 * FIS type. 188 * - 27h Register FIS, host to device. 189 * - 34h Register FIS, device to host. 190 * - 39h DMA Activate FIS, device to host. 191 * - 41h DMA Setup FIS, bi-directional. 192 * - 46h Data FIS, bi-directional. 193 * - 58h BIST Activate FIS, bi-directional. 194 * - 5Fh PIO Setup FIS, device to host. 195 * - A1h Set Device Bits FIS, device to host. [all …]
|
/openbmc/u-boot/include/ |
H A D | fis.h | 10 * Register - Host to Device FIS 33 * Register - Host to Device FIS for read/write FPDMA queued 56 * Register - Device to Host FIS 78 * DMA Setup - Device to Host or Host to Device FIS 94 * PIO Setup - Device to Host FIS 118 * Data - Host to Device or Device to Host FIS 128 /* fis_type - SATA FIS type
|
H A D | ahci.h | 28 #define RX_FIS_D2H_REG 0x40 /* offset of D2H Register FIS data */ 46 #define PORT_FIS_ADDR 0x08 /* FIS rx buf addr */ 47 #define PORT_FIS_ADDR_HI 0x0c /* FIS rx buf addr hi */ 78 #define PORT_IRQ_UNK_FIS (1 << 4) /* unknown FIS rx'd */ 79 #define PORT_IRQ_SDB_FIS (1 << 3) /* Set Device Bits FIS rx'd */ 80 #define PORT_IRQ_DMAS_FIS (1 << 2) /* DMA Setup FIS rx'd */ 81 #define PORT_IRQ_PIOS_FIS (1 << 1) /* PIO Setup FIS rx'd */ 82 #define PORT_IRQ_D2H_REG_FIS (1 << 0) /* D2H Register FIS rx'd */ 101 #define PORT_CMD_FIS_ON (1 << 14) /* FIS DMA engine running */ 102 #define PORT_CMD_FIS_RX (1 << 4) /* Enable FIS receive DMA engine */
|
/openbmc/linux/Documentation/arch/arm/sa1100/ |
H A D | assabet.rst | 77 fis init -f 99 fis create "Linux kernel" -b 0x100000 -l 0xc0000 115 fis load "Linux kernel" 149 fis free 153 RedBoot> fis free 168 fis unlock -f 0x500E0000 -l 0x2e0000 169 fis erase -f 0x500E0000 -l 0x2e0000 170 fis write -b 0x100000 -l 0x277424 -f 0x500E0000 171 fis create "JFFS2" -n -f 0x500E0000 -l 0x2e0000 174 what they are in the boot process. From Redboot, the 'fis list' command [all …]
|
/openbmc/qemu/tests/qtest/libqos/ |
H A D | ahci.c | 97 RegH2DFIS fis; member 232 * PxCMD.FRE "FIS Receive Enable" in ahci_hba_enable() 233 * PxCMD.FR "FIS Receive Running" in ahci_hba_enable() 283 /* Allocate Memory for the Command List Buffer & FIS Buffer */ in ahci_hba_enable() 321 /* Enable the FIS Receive Engine. */ in ahci_hba_enable() 357 * In the future, a small test-case to inspect the Register D2H FIS in ahci_hba_enable() 395 /* Clear out this port's interrupts (ignore the init register d2h fis) */ in ahci_port_clear() 400 /* Wipe the FIS-Receive Buffer */ in ahci_port_clear() 539 * the status may have again changed between the PIO Setup FIS in ahci_port_check_pio_sanity() 540 * and the conclusion of the command with the D2H Register FIS. */ in ahci_port_check_pio_sanity() [all …]
|
H A D | ahci.h | 249 /* FIS types */ 261 /* FIS flags */ 349 * Generic FIS structure. 351 typedef struct FIS { struct 355 } __attribute__((__packed__)) FIS; argument 358 * Register device-to-host FIS structure. 380 * Register device-to-host FIS structure; 405 * Register host-to-device FIS structure. 428 * Register host-to-device FIS structure, for NCQ commands. 458 uint16_t flags; /* Cmd-Fis-Len, PMP#, and flags. */
|
/openbmc/linux/drivers/ata/ |
H A D | libata-sata.c | 139 * ata_tf_to_fis - Convert ATA taskfile to SATA FIS structure 142 * @is_cmd: This FIS is for command 143 * @fis: Buffer into which data will output 146 * FIS structure (Register - Host to Device). 151 void ata_tf_to_fis(const struct ata_taskfile *tf, u8 pmp, int is_cmd, u8 *fis) in ata_tf_to_fis() argument 153 fis[0] = 0x27; /* Register - Host to Device FIS */ in ata_tf_to_fis() 154 fis[1] = pmp & 0xf; /* Port multiplier number*/ in ata_tf_to_fis() 156 fis[1] |= (1 << 7); /* bit 7 indicates Command FIS */ in ata_tf_to_fis() 158 fis[2] = tf->command; in ata_tf_to_fis() 159 fis[3] = tf->feature; in ata_tf_to_fis() [all …]
|
H A D | ahci.h | 64 RX_FIS_PIO_SETUP = 0x20, /* offset of PIO Setup FIS data */ 65 RX_FIS_D2H_REG = 0x40, /* offset of D2H Register FIS data */ 66 RX_FIS_SDB = 0x58, /* offset of SDB FIS data */ 67 RX_FIS_UNK = 0x60, /* offset of Unknown FIS data */ 92 HOST_CAP_FBS = BIT(16), /* FIS-based switching support */ 115 PORT_FIS_ADDR = 0x08, /* FIS rx buf addr */ 116 PORT_FIS_ADDR_HI = 0x0c, /* FIS rx buf addr hi */ 128 PORT_FBS = 0x40, /* FIS-based Switching */ 145 PORT_IRQ_UNK_FIS = BIT(4), /* unknown FIS rx'd */ 146 PORT_IRQ_SDB_FIS = BIT(3), /* Set Device Bits FIS rx'd */ [all …]
|
H A D | sata_sil24.c | 33 u8 fis[6 * 4]; member 161 PORT_IRQ_UNK_FIS = (1 << 6), /* unknown FIS received */ 182 PORT_CERR_DEV = 1, /* Error bit in D2H Register FIS */ 183 PORT_CERR_SDB = 2, /* Error bit in SDB FIS */ 184 PORT_CERR_DATA = 3, /* Error in data FIS not detected by dev */ 185 PORT_CERR_SEND = 4, /* Initial cmd FIS transmission failure */ 203 PORT_CERR_SENDSERVICE = 36, /* FIS received while sending service */ 268 "device error via D2H FIS" }, 270 "device error via SDB FIS" }, 272 "error in data FIS" }, [all …]
|
H A D | libahci.c | 749 /* set FIS registers */ in ahci_start_fis_rx() 760 /* enable FIS reception */ in ahci_start_fis_rx() 775 /* disable FIS reception */ in ahci_stop_fis_rx() 911 /* enable FIS reception */ in ahci_start_port() 962 /* disable FIS reception */ in ahci_deinit_port() 965 *emsg = "failed stop FIS RX"; in ahci_deinit_port() 1420 u8 *fis = pp->cmd_tbl; in ahci_exec_polled_cmd() local 1424 ata_tf_to_fis(tf, pmp, is_cmd, fis); in ahci_exec_polled_cmd() 1483 /* issue the first H2D Register FIS */ in ahci_do_softreset() 1493 reason = "1st FIS failed"; in ahci_do_softreset() [all …]
|
/openbmc/linux/drivers/mtd/parsers/ |
H A D | redboot.c | 3 * Parse RedBoot-style Flash Image System (FIS) tables and 60 ret = of_property_read_u32(npart, "fis-index-block", &dirblock); in parse_redboot_of() 133 if (!memcmp(buf[i].name, "FIS directory", 14)) { in parse_redboot_partitions() 134 /* This is apparently the FIS directory entry for the in parse_redboot_partitions() 135 * FIS directory itself. The FIS directory size is in parse_redboot_partitions() 138 * a byte swapped FIS directory - swap all the entries! in parse_redboot_partitions() 143 /* RedBoot can combine the FIS directory and in parse_redboot_partitions() 153 /* Update numslots based on actual FIS directory size */ in parse_redboot_partitions() 179 /* Update numslots based on actual FIS directory size */ in parse_redboot_partitions() 275 !memcmp(names, "FIS directory", 14)) { in parse_redboot_partitions() [all …]
|
/openbmc/qemu/hw/ide/ |
H A D | ahci-internal.h | 54 #define RX_FIS_D2H_REG 0x40 /* offset of D2H Register FIS data */ 55 #define RX_FIS_SDB 0x58 /* offset of SDB FIS data */ 56 #define RX_FIS_UNK 0x60 /* offset of Unknown FIS data */ 91 AHCI_PORT_REG_FIS_ADDR = 2, /* PxFB: FIS rx buf addr */ 155 #define PORT_IRQ_UNK_FIS (1 << 4) /* unknown FIS rx'd */ 156 #define PORT_IRQ_SDB_FIS (1 << 3) /* Set Device Bits FIS rx'd */ 157 #define PORT_IRQ_DMAS_FIS (1 << 2) /* DMA Setup FIS rx'd */ 158 #define PORT_IRQ_PIOS_FIS (1 << 1) /* PIO Setup FIS rx'd */ 159 #define PORT_IRQ_D2H_REG_FIS (1 << 0) /* D2H Register FIS rx'd */ 173 #define PORT_CMD_FIS_ON (1 << 14) /* FIS DMA engine running */ [all …]
|
H A D | ahci.c | 266 * the DMA or FIS RX engines. 294 error_report("AHCI: Failed to start FIS receive engine: " in ahci_cond_start_engines() 295 "bad FIS receive buffer address"); in ahci_cond_start_engines() 348 /* Check FIS RX and CLB engines */ in ahci_port_write() 351 /* XXX usually the FIS would be pending on the bus here and in ahci_port_write() 352 issuing deferred until the OS enables FIS receival. in ahci_port_write() 634 /* We're emulating receiving the first Reg D2H FIS from the device; in ahci_init_d2h() 716 /* Buffer pretty output based on a raw FIS structure. */ 717 static char *ahci_pretty_buffer_fis(const uint8_t *fis, int cmd_len) in ahci_pretty_buffer_fis() argument 720 GString *s = g_string_new("FIS:"); in ahci_pretty_buffer_fis() [all …]
|
H A D | trace-events | 85 ahci_unmap_fis_address_null(void *s, int port) "ahci(%p)[%d]: Attempt to unmap NULL FIS address" 103 …rt, char b0, char b1, char b2) "ahci(%p)[%d]: Port Multiplier not supported, FIS: 0x%02x-%02x-%02x" 104 …b0, char b1, char b2) "ahci(%p)[%d]: Reserved flags set in H2D Register FIS, FIS: 0x%02x-%02x-%02x" 108 handle_cmd_badfis(void *s, int port) "ahci(%p)[%d]: guest provided an invalid cmd FIS" 110 …*s, int port, uint8_t b0, uint8_t b1, uint8_t b2) "ahci(%p)[%d]: unhandled FIS type. cmd_fis: 0x%0… 120 handle_reg_h2d_fis_dump(void *s, int port, const char *fis) "ahci(%p)[%d]: %s" 121 handle_cmd_fis_dump(void *s, int port, const char *fis) "ahci(%p)[%d]: %s"
|
/openbmc/linux/drivers/scsi/isci/ |
H A D | request.h | 67 * to wait for another fis or if the transfer is complete. Upon 68 * receipt of a d2h fis this will be the status field of that fis. 175 * waiting for the TC completion notification for the H2D Register FIS 178 * waiting for either a PIO Setup FIS or a D2H register FIS. The type of frame 188 * waiting for the TC completion notification for the H2D Register FIS 309 task->ata_task.fis.command == ATA_CMD_READ_LOG_EXT && in isci_task_is_ncq_recovery() 310 task->ata_task.fis.lbal == ATA_LOG_SATA_NCQ); in isci_task_is_ncq_recovery()
|
H A D | phy.h | 63 /* This is the timeout value for the SATA phy to wait for a SIGNATURE FIS 66 * signature FIS as a result of a soft reset. Now we see that devices respond 85 * @sata_timer: timeout SATA signature FIS arrival 102 struct dev_to_host_fis fis; member 217 * This field delineates the signature FIS received from the 363 * @SCI_PHY_SUB_AWAIT_SIG_FIS_UF: Wait state for the SIGNATURE FIS
|
/openbmc/linux/drivers/scsi/mvsas/ |
H A D | mv_defs.h | 199 MCH_PMP_MASK = 0xf, /* PMP from cmd FIS (STP/SATA)*/ 220 PHYEV_UNASSOC_FIS = (1U << 19), /* unassociated FIS rx'd */ 222 PHYEV_BIST_ACT = (1U << 17), /* BIST activate FIS */ 223 PHYEV_SIG_FIS = (1U << 16), /* signature FIS */ 242 PCS_SATA_RETRY = (1U << 8), /* retry ctl FIS on R_ERR */ 246 PCS_FIS_RX_EN = (1U << 4), /* FIS rx enable */ 298 PHYR_SATA_SIG0 = 0x20, /*port SATA signature FIS(Byte 0-3) */ 299 PHYR_SATA_SIG1 = 0x24, /*port SATA signature FIS(Byte 4-7) */ 300 PHYR_SATA_SIG2 = 0x28, /*port SATA signature FIS(Byte 8-11) */ 301 PHYR_SATA_SIG3 = 0x2c, /*port SATA signature FIS(Byte 12-15) */ [all …]
|
/openbmc/linux/arch/arm/boot/dts/intel/ixp/ |
H A D | intel-ixp42x-adi-coyote.dts | 51 compatible = "redboot-fis"; 52 /* CHECKME: guess this is Redboot FIS */ 53 fis-index-block = <0x1ff>;
|
H A D | intel-ixp46x-ixdp465.dts | 30 compatible = "redboot-fis"; 32 fis-index-block = <0xff>;
|
/openbmc/linux/drivers/scsi/libsas/ |
H A D | sas_ata.c | 121 memcpy(dev->sata_dev.fis, resp->ending_fis, ATA_RESP_FIS_SIZE); in sas_ata_task_done() 124 qc->err_mask |= ac_err_mask(dev->sata_dev.fis[2]); in sas_ata_task_done() 126 link->eh_info.err_mask |= ac_err_mask(dev->sata_dev.fis[2]); in sas_ata_task_done() 142 dev->sata_dev.fis[2] = ATA_ERR | ATA_DRDY; /* tf status */ in sas_ata_task_done() 143 dev->sata_dev.fis[3] = ATA_ABORTED; /* tf error */ in sas_ata_task_done() 186 ata_tf_to_fis(&qc->tf, qc->dev->link->pmp, 1, (u8 *)&task->ata_task.fis); in sas_ata_qc_issue() 235 ata_tf_from_fis(dev->sata_dev.fis, &qc->result_tf); in sas_ata_qc_fill_rtf() 276 memcpy(dev->frame_rcvd, &dev->sata_dev.rps_resp.rps.fis, in sas_get_ata_info() 949 device->sata_dev.fis[2] = ATA_ERR | ATA_DRDY; /* tf status */ in sas_ata_device_link_abort() 950 device->sata_dev.fis[3] = ATA_ABORTED; /* tf error */ in sas_ata_device_link_abort() [all …]
|