Lines Matching refs:lba

50 static void lba_to_msf(uint8_t *buf, int lba)  in lba_to_msf()  argument
52 lba += 150; in lba_to_msf()
53 buf[0] = (lba / 75) / 60; in lba_to_msf()
54 buf[1] = (lba / 75) % 60; in lba_to_msf()
55 buf[2] = lba % 75; in lba_to_msf()
74 static void cd_data_to_raw(uint8_t *buf, int lba) in cd_data_to_raw() argument
82 lba_to_msf(buf, lba); in cd_data_to_raw()
98 trace_cd_read_sector_sync(s->lba); in cd_read_sector_sync()
102 ret = blk_pread(s->blk, (int64_t)s->lba << ATAPI_SECTOR_BITS, in cd_read_sector_sync()
106 ret = blk_pread(s->blk, (int64_t)s->lba << ATAPI_SECTOR_BITS, in cd_read_sector_sync()
109 cd_data_to_raw(s->io_buffer, s->lba); in cd_read_sector_sync()
121 s->lba++; in cd_read_sector_sync()
132 trace_cd_read_sector_cb(s->lba, ret); in cd_read_sector_cb()
143 cd_data_to_raw(s->io_buffer, s->lba); in cd_read_sector_cb()
146 s->lba++; in cd_read_sector_cb()
165 trace_cd_read_sector(s->lba); in cd_read_sector()
170 ide_buffered_readv(s, (int64_t)s->lba << 2, &s->qiov, 4, in cd_read_sector()
231 if (s->lba != -1 && s->io_buffer_index >= s->cd_sector_size) { in ide_atapi_cmd_reply_end()
272 if (s->lba != -1) { in ide_atapi_cmd_reply_end()
306 s->lba = -1; /* no sector read */ in ide_atapi_cmd_reply()
324 static void ide_atapi_cmd_read_pio(IDEState *s, int lba, int nb_sectors, in ide_atapi_cmd_read_pio() argument
327 assert(0 <= lba && lba < (s->nb_sectors >> 2)); in ide_atapi_cmd_read_pio()
329 s->lba = lba; in ide_atapi_cmd_read_pio()
371 if (s->lba != -1) { in ide_atapi_cmd_read_dma_cb()
374 cd_data_to_raw(s->io_buffer, s->lba); in ide_atapi_cmd_read_dma_cb()
378 s->lba += n; in ide_atapi_cmd_read_dma_cb()
404 trace_ide_atapi_cmd_read_dma_cb_aio(s, s->lba, n); in ide_atapi_cmd_read_dma_cb()
408 s->bus->dma->aiocb = ide_buffered_readv(s, (int64_t)s->lba << 2, in ide_atapi_cmd_read_dma_cb()
424 static void ide_atapi_cmd_read_dma(IDEState *s, int lba, int nb_sectors, in ide_atapi_cmd_read_dma() argument
427 assert(0 <= lba && lba < (s->nb_sectors >> 2)); in ide_atapi_cmd_read_dma()
429 s->lba = lba; in ide_atapi_cmd_read_dma()
442 static void ide_atapi_cmd_read(IDEState *s, int lba, int nb_sectors, in ide_atapi_cmd_read() argument
446 lba, nb_sectors); in ide_atapi_cmd_read()
448 ide_atapi_cmd_read_dma(s, lba, nb_sectors, sector_size); in ide_atapi_cmd_read()
450 ide_atapi_cmd_read_pio(s, lba, nb_sectors, sector_size); in ide_atapi_cmd_read()
982 unsigned int nb_sectors, lba; in cmd_read() local
997 lba = ldl_be_p(buf + 2); in cmd_read()
998 if (lba >= total_sectors || lba + nb_sectors - 1 >= total_sectors) { in cmd_read()
1003 ide_atapi_cmd_read(s, lba, nb_sectors, 2048); in cmd_read()
1008 unsigned int nb_sectors, lba, transfer_request; in cmd_read_cd() local
1019 lba = ldl_be_p(buf + 2); in cmd_read_cd()
1020 if (lba >= total_sectors || lba + nb_sectors - 1 >= total_sectors) { in cmd_read_cd()
1040 ide_atapi_cmd_read(s, lba, nb_sectors, 2048); in cmd_read_cd()
1044 ide_atapi_cmd_read(s, lba, nb_sectors, 2352); in cmd_read_cd()
1055 unsigned int lba; in cmd_seek() local
1058 lba = ldl_be_p(buf + 2); in cmd_seek()
1059 if (lba >= total_sectors) { in cmd_seek()