Home
last modified time | relevance | path

Searched refs:miter (Results 1 – 25 of 25) sorted by relevance

/linux-6.6.21/drivers/misc/cb710/
Dsgbuf2.c11 static bool sg_dwiter_next(struct sg_mapping_iter *miter) in sg_dwiter_next() argument
13 if (sg_miter_next(miter)) { in sg_dwiter_next()
14 miter->consumed = 0; in sg_dwiter_next()
20 static bool sg_dwiter_is_at_end(struct sg_mapping_iter *miter) in sg_dwiter_is_at_end() argument
22 return miter->length == miter->consumed && !sg_dwiter_next(miter); in sg_dwiter_is_at_end()
25 static uint32_t sg_dwiter_read_buffer(struct sg_mapping_iter *miter) in sg_dwiter_read_buffer() argument
32 len = min(miter->length - miter->consumed, left); in sg_dwiter_read_buffer()
33 memcpy(addr, miter->addr + miter->consumed, len); in sg_dwiter_read_buffer()
34 miter->consumed += len; in sg_dwiter_read_buffer()
39 } while (sg_dwiter_next(miter)); in sg_dwiter_read_buffer()
[all …]
/linux-6.6.21/lib/
Dscatterlist.c800 void sg_miter_start(struct sg_mapping_iter *miter, struct scatterlist *sgl, in sg_miter_start() argument
803 memset(miter, 0, sizeof(struct sg_mapping_iter)); in sg_miter_start()
805 __sg_page_iter_start(&miter->piter, sgl, nents, 0); in sg_miter_start()
807 miter->__flags = flags; in sg_miter_start()
811 static bool sg_miter_get_next_page(struct sg_mapping_iter *miter) in sg_miter_get_next_page() argument
813 if (!miter->__remaining) { in sg_miter_get_next_page()
816 if (!__sg_page_iter_next(&miter->piter)) in sg_miter_get_next_page()
819 sg = miter->piter.sg; in sg_miter_get_next_page()
821 miter->__offset = miter->piter.sg_pgoffset ? 0 : sg->offset; in sg_miter_get_next_page()
822 miter->piter.sg_pgoffset += miter->__offset >> PAGE_SHIFT; in sg_miter_get_next_page()
[all …]
/linux-6.6.21/drivers/usb/storage/
Dprotocol.c127 struct sg_mapping_iter miter; in usb_stor_access_xfer_buf() local
135 sg_miter_start(&miter, sg, nents, dir == FROM_XFER_BUF ? in usb_stor_access_xfer_buf()
138 if (!sg_miter_skip(&miter, *offset)) in usb_stor_access_xfer_buf()
141 while (sg_miter_next(&miter) && cnt < buflen) { in usb_stor_access_xfer_buf()
142 unsigned int len = min_t(unsigned int, miter.length, in usb_stor_access_xfer_buf()
146 memcpy(buffer + cnt, miter.addr, len); in usb_stor_access_xfer_buf()
148 memcpy(miter.addr, buffer + cnt, len); in usb_stor_access_xfer_buf()
150 if (*offset + len < miter.piter.sg->length) { in usb_stor_access_xfer_buf()
152 *sgptr = miter.piter.sg; in usb_stor_access_xfer_buf()
155 *sgptr = sg_next(miter.piter.sg); in usb_stor_access_xfer_buf()
[all …]
/linux-6.6.21/lib/crypto/mpi/
Dmpicoder.c366 struct sg_mapping_iter miter; in mpi_write_to_sgl() local
380 sg_miter_start(&miter, sgl, nents, SG_MITER_ATOMIC | SG_MITER_TO_SG); in mpi_write_to_sgl()
381 sg_miter_next(&miter); in mpi_write_to_sgl()
382 buf_len = miter.length; in mpi_write_to_sgl()
383 p2 = miter.addr; in mpi_write_to_sgl()
393 sg_miter_next(&miter); in mpi_write_to_sgl()
394 buf_len = miter.length; in mpi_write_to_sgl()
395 p2 = miter.addr; in mpi_write_to_sgl()
412 sg_miter_next(&miter); in mpi_write_to_sgl()
413 buf_len = miter.length; in mpi_write_to_sgl()
[all …]
/linux-6.6.21/drivers/fpga/
Dfpga-mgr.c184 struct sg_mapping_iter miter; in fpga_mgr_parse_header_sg_first() local
189 sg_miter_start(&miter, sgt->sgl, sgt->nents, SG_MITER_FROM_SG); in fpga_mgr_parse_header_sg_first()
190 if (sg_miter_next(&miter) && in fpga_mgr_parse_header_sg_first()
191 miter.length >= info->header_size) in fpga_mgr_parse_header_sg_first()
192 ret = fpga_mgr_parse_header(mgr, info, miter.addr, miter.length); in fpga_mgr_parse_header_sg_first()
195 sg_miter_stop(&miter); in fpga_mgr_parse_header_sg_first()
297 struct sg_mapping_iter miter; in fpga_mgr_prepare_sg() local
313 sg_miter_start(&miter, sgt->sgl, sgt->nents, SG_MITER_FROM_SG); in fpga_mgr_prepare_sg()
314 if (sg_miter_next(&miter)) { in fpga_mgr_prepare_sg()
315 ret = fpga_mgr_write_init_buf(mgr, info, miter.addr, in fpga_mgr_prepare_sg()
[all …]
/linux-6.6.21/include/linux/
Dcb710.h154 uint32_t cb710_sg_dwiter_read_next_block(struct sg_mapping_iter *miter);
155 void cb710_sg_dwiter_write_next_block(struct sg_mapping_iter *miter, uint32_t data);
172 static inline void cb710_sg_dwiter_write_from_io(struct sg_mapping_iter *miter, in cb710_sg_dwiter_write_from_io() argument
176 cb710_sg_dwiter_write_next_block(miter, ioread32(port)); in cb710_sg_dwiter_write_from_io()
194 static inline void cb710_sg_dwiter_read_to_io(struct sg_mapping_iter *miter, in cb710_sg_dwiter_read_to_io() argument
198 iowrite32(cb710_sg_dwiter_read_next_block(miter), port); in cb710_sg_dwiter_read_to_io()
Dscatterlist.h689 void sg_miter_start(struct sg_mapping_iter *miter, struct scatterlist *sgl,
691 bool sg_miter_skip(struct sg_mapping_iter *miter, off_t offset);
692 bool sg_miter_next(struct sg_mapping_iter *miter);
693 void sg_miter_stop(struct sg_mapping_iter *miter);
/linux-6.6.21/lib/crypto/
Dchacha20poly1305.c218 struct sg_mapping_iter miter; in chacha20poly1305_crypt_sg_inplace() local
256 sg_miter_start(&miter, src, sg_nents(src), flags); in chacha20poly1305_crypt_sg_inplace()
258 for (sl = src_len; sl > 0 && sg_miter_next(&miter); sl -= miter.length) { in chacha20poly1305_crypt_sg_inplace()
259 u8 *addr = miter.addr; in chacha20poly1305_crypt_sg_inplace()
260 size_t length = min_t(size_t, sl, miter.length); in chacha20poly1305_crypt_sg_inplace()
293 poly1305_update(&poly1305_state, miter.addr, in chacha20poly1305_crypt_sg_inplace()
294 min_t(size_t, sl, miter.length)); in chacha20poly1305_crypt_sg_inplace()
307 miter.addr + miter.length + sl); in chacha20poly1305_crypt_sg_inplace()
312 miter.addr + miter.length + sl, in chacha20poly1305_crypt_sg_inplace()
317 sg_miter_stop(&miter); in chacha20poly1305_crypt_sg_inplace()
/linux-6.6.21/drivers/mmc/host/
Djz4740_mmc.c173 struct sg_mapping_iter miter; member
518 struct sg_mapping_iter *miter = &host->miter; in jz4740_mmc_write_data() local
524 while (sg_miter_next(miter)) { in jz4740_mmc_write_data()
525 buf = miter->addr; in jz4740_mmc_write_data()
526 i = miter->length / 4; in jz4740_mmc_write_data()
556 data->bytes_xfered += miter->length; in jz4740_mmc_write_data()
558 sg_miter_stop(miter); in jz4740_mmc_write_data()
563 miter->consumed = (void *)buf - miter->addr; in jz4740_mmc_write_data()
564 data->bytes_xfered += miter->consumed; in jz4740_mmc_write_data()
565 sg_miter_stop(miter); in jz4740_mmc_write_data()
[all …]
Dcb710-mmc.c245 struct sg_mapping_iter *miter, size_t dw_count) in cb710_mmc_receive_pio() argument
254 cb710_sg_dwiter_write_from_io(miter, in cb710_mmc_receive_pio()
267 struct sg_mapping_iter miter; in cb710_mmc_receive() local
276 sg_miter_start(&miter, data->sg, data->sg_len, SG_MITER_TO_SG); in cb710_mmc_receive()
287 err = cb710_mmc_receive_pio(slot, &miter, 4); in cb710_mmc_receive()
300 err = cb710_mmc_receive_pio(slot, &miter, len); in cb710_mmc_receive()
305 sg_miter_stop(&miter); in cb710_mmc_receive()
311 struct sg_mapping_iter miter; in cb710_mmc_send() local
320 sg_miter_start(&miter, data->sg, data->sg_len, SG_MITER_FROM_SG); in cb710_mmc_send()
335 cb710_sg_dwiter_read_to_io(&miter, in cb710_mmc_send()
[all …]
Dmeson-gx-mmc.c750 struct sg_mapping_iter miter; in meson_mmc_copy_buffer() local
758 sg_miter_start(&miter, sgl, nents, sg_flags); in meson_mmc_copy_buffer()
760 while ((offset < buflen) && sg_miter_next(&miter)) { in meson_mmc_copy_buffer()
763 u32 *buf = miter.addr; in meson_mmc_copy_buffer()
765 len = min(miter.length, buflen - offset); in meson_mmc_copy_buffer()
787 sg_miter_stop(&miter); in meson_mmc_copy_buffer()
/linux-6.6.21/drivers/nvme/target/
Dio-cmd-bdev.c189 struct sg_mapping_iter *miter) in nvmet_bdev_alloc_bip() argument
214 while (resid > 0 && sg_miter_next(miter)) { in nvmet_bdev_alloc_bip()
215 len = min_t(size_t, miter->length, resid); in nvmet_bdev_alloc_bip()
216 rc = bio_integrity_add_page(bio, miter->page, len, in nvmet_bdev_alloc_bip()
217 offset_in_page(miter->addr)); in nvmet_bdev_alloc_bip()
220 sg_miter_stop(miter); in nvmet_bdev_alloc_bip()
225 if (len < miter->length) in nvmet_bdev_alloc_bip()
226 miter->consumed -= miter->length - len; in nvmet_bdev_alloc_bip()
228 sg_miter_stop(miter); in nvmet_bdev_alloc_bip()
234 struct sg_mapping_iter *miter) in nvmet_bdev_alloc_bip() argument
/linux-6.6.21/drivers/crypto/marvell/cesa/
Dtdma.c360 struct sg_mapping_iter miter; in mv_cesa_sg_copy() local
368 sg_miter_start(&miter, sgl, nents, sg_flags); in mv_cesa_sg_copy()
370 if (!sg_miter_skip(&miter, skip)) in mv_cesa_sg_copy()
373 while ((offset < buflen) && sg_miter_next(&miter)) { in mv_cesa_sg_copy()
376 len = min(miter.length, buflen - offset); in mv_cesa_sg_copy()
381 miter.addr, len); in mv_cesa_sg_copy()
384 miter.addr, len); in mv_cesa_sg_copy()
387 memcpy(miter.addr, in mv_cesa_sg_copy()
391 memcpy_fromio(miter.addr, in mv_cesa_sg_copy()
399 sg_miter_stop(&miter); in mv_cesa_sg_copy()
/linux-6.6.21/drivers/fpga/tests/
Dfpga-mgr-test.c140 struct sg_mapping_iter miter; in op_write_sg() local
148 sg_miter_start(&miter, sgt->sgl, sgt->nents, SG_MITER_FROM_SG); in op_write_sg()
150 if (!sg_miter_skip(&miter, HEADER_SIZE)) { in op_write_sg()
155 while (sg_miter_next(&miter)) { in op_write_sg()
156 img = miter.addr; in op_write_sg()
157 for (i = 0; i < miter.length; i++) { in op_write_sg()
165 sg_miter_stop(&miter); in op_write_sg()
/linux-6.6.21/drivers/target/
Dtarget_core_iblock.c671 struct sg_mapping_iter *miter) in iblock_alloc_bip() argument
700 while (resid > 0 && sg_miter_next(miter)) { in iblock_alloc_bip()
702 len = min_t(size_t, miter->length, resid); in iblock_alloc_bip()
703 rc = bio_integrity_add_page(bio, miter->page, len, in iblock_alloc_bip()
704 offset_in_page(miter->addr)); in iblock_alloc_bip()
707 sg_miter_stop(miter); in iblock_alloc_bip()
712 miter->page, len, offset_in_page(miter->addr)); in iblock_alloc_bip()
715 if (len < miter->length) in iblock_alloc_bip()
716 miter->consumed -= miter->length - len; in iblock_alloc_bip()
718 sg_miter_stop(miter); in iblock_alloc_bip()
/linux-6.6.21/drivers/memstick/host/
Dr592.c415 struct sg_mapping_iter miter; in r592_transfer_fifo_pio() local
431 sg_miter_start(&miter, &dev->req->sg, 1, SG_MITER_ATOMIC | in r592_transfer_fifo_pio()
435 while (sg_miter_next(&miter)) in r592_transfer_fifo_pio()
437 r592_write_fifo_pio(dev, miter.addr, miter.length); in r592_transfer_fifo_pio()
439 r592_read_fifo_pio(dev, miter.addr, miter.length); in r592_transfer_fifo_pio()
446 sg_miter_stop(&miter); in r592_transfer_fifo_pio()
/linux-6.6.21/crypto/
Dhctr2.c200 struct sg_mapping_iter miter; in hctr2_hash_message() local
206 sg_miter_start(&miter, sgl, sg_nents(sgl), in hctr2_hash_message()
209 sg_miter_next(&miter); in hctr2_hash_message()
210 n = min_t(unsigned int, miter.length, bulk_len - i); in hctr2_hash_message()
211 err = crypto_shash_update(hash_desc, miter.addr, n); in hctr2_hash_message()
215 sg_miter_stop(&miter); in hctr2_hash_message()
Dadiantum.c255 struct sg_mapping_iter miter; in adiantum_hash_message() local
265 sg_miter_start(&miter, sgl, sg_nents(sgl), in adiantum_hash_message()
268 sg_miter_next(&miter); in adiantum_hash_message()
269 n = min_t(unsigned int, miter.length, bulk_len - i); in adiantum_hash_message()
270 err = crypto_shash_update(hash_desc, miter.addr, n); in adiantum_hash_message()
274 sg_miter_stop(&miter); in adiantum_hash_message()
/linux-6.6.21/drivers/memstick/core/
Dms_block.c98 struct sg_mapping_iter miter; in msb_sg_compare_to_buffer() local
100 sg_miter_start(&miter, sg, sg_nents(sg), in msb_sg_compare_to_buffer()
103 while (sg_miter_next(&miter) && len > 0) { in msb_sg_compare_to_buffer()
104 if (offset >= miter.length) { in msb_sg_compare_to_buffer()
105 offset -= miter.length; in msb_sg_compare_to_buffer()
109 cmplen = min(miter.length - offset, len); in msb_sg_compare_to_buffer()
110 retval = memcmp(miter.addr + offset, buffer, cmplen) ? -1 : 0; in msb_sg_compare_to_buffer()
122 sg_miter_stop(&miter); in msb_sg_compare_to_buffer()
866 struct sg_mapping_iter miter; in msb_read_page() local
872 sg_miter_start(&miter, sg, sg_nents(sg), in msb_read_page()
[all …]
/linux-6.6.21/drivers/crypto/caam/
Dcaampkc.c207 struct sg_mapping_iter miter; in caam_rsa_count_leading_zeros() local
217 sg_miter_start(&miter, sgl, ents, SG_MITER_FROM_SG | flags); in caam_rsa_count_leading_zeros()
232 if (!sg_miter_next(&miter)) in caam_rsa_count_leading_zeros()
235 buff = miter.addr; in caam_rsa_count_leading_zeros()
236 len = miter.length; in caam_rsa_count_leading_zeros()
242 miter.consumed = lzeros; in caam_rsa_count_leading_zeros()
243 sg_miter_stop(&miter); in caam_rsa_count_leading_zeros()
/linux-6.6.21/drivers/usb/gadget/udc/
Ddummy_hcd.c229 struct sg_mapping_iter miter; member
1338 struct sg_mapping_iter *miter = &urbp->miter; in dummy_perform_transfer() local
1363 sg_miter_start(miter, urb->sg, urb->num_sgs, flags); in dummy_perform_transfer()
1366 next_sg = sg_miter_next(miter); in dummy_perform_transfer()
1372 ubuf = miter->addr; in dummy_perform_transfer()
1373 this_sg = min_t(u32, len, miter->length); in dummy_perform_transfer()
1374 miter->consumed = this_sg; in dummy_perform_transfer()
1385 next_sg = sg_miter_next(miter); in dummy_perform_transfer()
1394 sg_miter_stop(miter); in dummy_perform_transfer()
/linux-6.6.21/drivers/ata/
Dlibata-scsi.c3413 struct sg_mapping_iter miter; in ata_scsi_report_zones_complete() local
3417 sg_miter_start(&miter, scsi_sglist(scmd), scsi_sg_count(scmd), in ata_scsi_report_zones_complete()
3421 while (sg_miter_next(&miter)) { in ata_scsi_report_zones_complete()
3431 hdr = miter.addr; in ata_scsi_report_zones_complete()
3443 while (offset < miter.length) { in ata_scsi_report_zones_complete()
3449 rec = miter.addr + offset; in ata_scsi_report_zones_complete()
3462 WARN_ON(offset + 64 > miter.length); in ata_scsi_report_zones_complete()
3467 sg_miter_stop(&miter); in ata_scsi_report_zones_complete()
/linux-6.6.21/drivers/scsi/lpfc/
Dlpfc_bsg.c218 struct sg_mapping_iter miter; in lpfc_bsg_copy_data() local
230 sg_miter_start(&miter, bsg_buffers->sg_list, bsg_buffers->sg_cnt, in lpfc_bsg_copy_data()
233 sg_valid = sg_miter_next(&miter); in lpfc_bsg_copy_data()
241 sg_address = miter.addr + sg_offset; in lpfc_bsg_copy_data()
242 transfer_bytes = miter.length - sg_offset; in lpfc_bsg_copy_data()
244 sg_address = miter.addr; in lpfc_bsg_copy_data()
245 transfer_bytes = miter.length; in lpfc_bsg_copy_data()
259 if (sg_offset >= miter.length) { in lpfc_bsg_copy_data()
261 sg_valid = sg_miter_next(&miter); in lpfc_bsg_copy_data()
265 sg_miter_stop(&miter); in lpfc_bsg_copy_data()
/linux-6.6.21/drivers/scsi/
Dscsi_debug.c3141 struct sg_mapping_iter miter; in dif_copy_prot() local
3146 sg_miter_start(&miter, scsi_prot_sglist(scp), in dif_copy_prot()
3150 while (sg_miter_next(&miter) && resid > 0) { in dif_copy_prot()
3151 size_t len = min_t(size_t, miter.length, resid); in dif_copy_prot()
3158 paddr = miter.addr; in dif_copy_prot()
3175 sg_miter_stop(&miter); in dif_copy_prot()
/linux-6.6.21/drivers/net/ethernet/microchip/vcap/
Dvcap_api.c1477 struct vcap_stream_iter kiter, miter; in vcap_decode_keyset() local
1513 vcap_iter_init(&miter, vctrl->vcaps[vt].sw_width, tgt, in vcap_decode_keyset()
1515 vcap_decode_field(maskstream, &miter, keyfield[idx].width, in vcap_decode_keyset()