Searched refs:fis (Results 1 - 16 of 16) sorted by relevance

/barrelfish-2018-10-04/lib/blk/blk_ahci/
H A Dsata_fis.c14 void sata_h2d_fis_new(struct sata_fis_reg_h2d* fis, uint8_t command, uint64_t lba, uint16_t sectors) argument
16 sata_h2d_fis_init(fis);
17 sata_h2d_set_command(fis, command);
18 sata_h2d_set_lba48(fis, lba);
19 sata_h2d_set_count(fis, sectors);
22 void sata_h2d_fis_init(struct sata_fis_reg_h2d* fis) argument
24 fis->type = SATA_FIS_TYPE_H2D;
39 fis->device |= (1 << 6);
42 void sata_h2d_set_command(struct sata_fis_reg_h2d* fis, uint8_t command) argument
44 fis
52 sata_h2d_set_feature(struct sata_fis_reg_h2d* fis, uint8_t feature) argument
57 sata_h2d_set_lba28(struct sata_fis_reg_h2d* fis, uint32_t lba) argument
65 sata_h2d_set_lba48(struct sata_fis_reg_h2d* fis, uint64_t lba) argument
77 sata_h2d_set_count(struct sata_fis_reg_h2d* fis, uint16_t count) argument
[all...]
H A Dsata_fis.h86 void sata_h2d_fis_new(struct sata_fis_reg_h2d* fis, uint8_t command, uint64_t lba, uint16_t sectors);
87 void sata_h2d_fis_init(struct sata_fis_reg_h2d* fis);
88 void sata_h2d_set_command(struct sata_fis_reg_h2d* fis, uint8_t command);
89 void sata_h2d_set_feature(struct sata_fis_reg_h2d* fis, uint8_t feature);
90 void sata_h2d_set_lba28(struct sata_fis_reg_h2d* fis, uint32_t lba);
91 void sata_h2d_set_lba48(struct sata_fis_reg_h2d* fis, uint64_t lba);
92 void sata_h2d_set_count(struct sata_fis_reg_h2d* fis, uint16_t count);
H A Dahci_port.c28 static void command_table_set_cfis(struct command_table* ct, struct sata_fis_reg_h2d* fis) argument
30 assert(sizeof(ct->cfis) >= sizeof(*fis));
32 *fis_ptr = *fis;
145 struct sata_fis_reg_h2d fis; local
146 sata_h2d_fis_new(&fis, command, block, sectors);
147 command_table_set_cfis(ct, &fis);
191 struct sata_fis_reg_h2d fis; local
192 sata_h2d_fis_new(&fis, command, block, sectors);
193 command_table_set_cfis(ct, &fis);
249 struct sata_fis_reg_h2d fis; local
[all...]
/barrelfish-2018-10-04/lib/ahci/
H A Dsata_fis.c16 struct sata_fis_reg_h2d *fis; local
18 fis = calloc(1, sizeof(*fis));
19 if (!fis) {
22 fis->type = SATA_FIS_TYPE_H2D;
37 fis->device |= (1 << 6);
39 *fis_p = fis;
40 *fis_size_p = sizeof(*fis);
45 errval_t sata_set_command(void *fis, uint8_t command) argument
47 uint8_t fis_type = *(uint8_t*)fis;
66 sata_set_feature(void *fis, uint8_t feature) argument
81 sata_set_lba28(void *fis, uint32_t lba) argument
99 sata_set_lba48(void *fis, uint64_t lba) argument
121 sata_set_count(void *fis, uint16_t count) argument
[all...]
H A Dahci_internal.h22 uint8_t *fis, size_t fis_length, size_t num_prds, bool is_write);
H A Dahci_util.c74 USER_PANIC_ERR(err, "ahci_dma_region_free failed for port receive fis");
79 uint8_t *fis, size_t fis_length, size_t num_prds, bool is_write)
83 command, port, fis, fis_length, num_prds, is_write);
111 // copy fis into command table
113 ahci_dma_region_copy_in(ct, fis, 0, fis_length);
78 ahci_setup_command(int *command, struct ahci_port_info *port, uint8_t *fis, size_t fis_length, size_t num_prds, bool is_write) argument
H A Dahci.c407 struct event_closure _continuation, void *tag, uint8_t *fis,
427 err = ahci_setup_command(&command, port, fis, fis_length, num_prds, is_write);
406 ahci_issue_command(struct ahci_binding *_binding, struct event_closure _continuation, void *tag, uint8_t *fis, size_t fis_length, bool is_write, struct ahci_dma_region *buf, size_t buflen) argument
/barrelfish-2018-10-04/include/ahci/
H A Dsata_fis.h69 errval_t sata_alloc_h2d_register_fis(void **fis, size_t *fis_size);
71 errval_t sata_set_command(void *fis, uint8_t command);
72 errval_t sata_set_feature(void *fis, uint8_t feature);
73 errval_t sata_set_lba28(void *fis, uint32_t lba);
74 errval_t sata_set_lba48(void *fis, uint64_t lba);
75 errval_t sata_set_count(void *fis, uint16_t count);
H A Dahci.h93 struct event_closure _continuation, void *tag, uint8_t *fis,
/barrelfish-2018-10-04/lib/vfs/
H A Dvfs_blockdevfs_ahci.c119 struct sata_fis_reg_h2d fis; local
120 memset(&fis, 0, sizeof(struct sata_fis_reg_h2d));
121 fis.type = SATA_FIS_TYPE_H2D;
122 fis.device = 1 << 6; /* LBA mode, not CHS; ??? */
123 sata_set_command(&fis, 0xE7); /* flush cache; ATA Command Set, 7.24 */
124 sata_set_count(&fis, 0); /* nr. of sectors/blocks */
125 sata_set_lba28(&fis, 0);
133 // load fis and fire commands
135 (uint8_t*)&fis, sizeof(fis), fals
[all...]
/barrelfish-2018-10-04/doc/015-disk-driver-arch/
H A Dintro.tex26 The \ac{sata} standard specifies the layout of the command \acp{fis} that
30 Figure \ref{fig:h2d_fis} shows the structure of an example \ac{fis}. A Host to
31 Device Register \ac{fis} can be used to send commands to the disk. The command
32 value is specified by \ac{ata}. The \ac{fis} contains additional values such as
62 pointers to the memory regions for the command list and receive \ac{fis} area.
75 The received \ac{fis} area serves as an area where copies of the \acp{fis}
77 \acp{fis} to the appropriate region of the \ac{rfis} area. If the \ac{hba}
78 receives an unkown \ac{fis} it is copied to the Unknown \ac{fis} regio
[all...]
H A Dlibahci.tex141 issued commands, a \ac{fis} and \ac{fis} length, a boolean flag
152 to \lstinline+is_write+) and also sets the \ac{fis} length in the command
153 header slot. Finally, the \ac{fis} is copied into the newly allocated command
213 the address space in which \libahci executes. After that the receive \ac{fis}
227 This header contains definitions dealing with \ac{sata}'s \ac{fis} that are
229 specification defines what registers exist for each \ac{fis} type and how they
H A Dflounder-ahci.tex159 \lstinline+issue_command_cb+ for freeing the allocated \ac{fis} and calling the
202 suitable \ac{fis}. This is done using the \lstinline+sata_fis+ API in libahci.
H A Drunning.tex23 delivered as a Device to Host Register \ac{fis} by QEMU.
H A Dblockdevfs.tex94 \ac{fis} and calling \issuecmd. The read implementation updates the
/barrelfish-2018-10-04/usr/drivers/megaraid/
H A Dmegaraid.h2015 u_int16_t fis[10]; /*18h */ member in struct:mrsas_stp_frame

Completed in 83 milliseconds