Lines Matching refs:buffer
108 enum req_op op, void *buffer, unsigned int bufflen,
127 result = scsi_execute_cmd(sdev, cmd, opf, buffer, bufflen,
624 * an echo buffer, we do read/write tests to it */
626 spi_dv_device_echo_buffer(struct scsi_device *sdev, u8 *buffer,
629 int len = ptr - buffer;
641 /* set up the pattern buffer. Doesn't matter if we spill
642 * slightly beyond since that's where the read buffer is */
645 /* fill the buffer with counting (test a) */
647 buffer[j] = j;
649 /* fill the buffer with alternating words of 0x0 and
652 u16 *word = (u16 *)&buffer[j];
660 u16 *word = (u16 *)&buffer[j];
667 u32 *word = (unsigned int *)&buffer[j];
678 buffer, len, &sshdr);
688 * buffer (unfortunately some Western
703 if (memcmp(buffer, ptr, len) != 0)
712 spi_dv_device_compare_inquiry(struct scsi_device *sdev, u8 *buffer,
734 if (ptr == buffer) {
740 if (memcmp(buffer, ptr, len) != 0)
748 spi_dv_retrain(struct scsi_device *sdev, u8 *buffer, u8 *ptr,
760 retval = compare_fn(sdev, buffer, ptr, DV_LOOPS);
806 spi_dv_device_get_echo_buffer(struct scsi_device *sdev, u8 *buffer)
812 * fails, the device won't let us write to the echo buffer
826 * buffer tests won't be happy). If the TUR still fails
843 REQ_OP_DRV_IN, buffer, 4, NULL);
846 /* Device has no echo buffer */
849 return buffer[3] + ((buffer[2] & 0x1f) << 8);
853 spi_dv_device_internal(struct scsi_device *sdev, u8 *buffer)
865 if (spi_dv_device_compare_inquiry(sdev, buffer, buffer, DV_LOOPS)
881 if (spi_dv_device_compare_inquiry(sdev, buffer,
882 buffer + len,
903 * presence of an echo buffer before trying to use it. len ==
904 * 0 means we don't have an echo buffer */
952 spi_dv_retrain(sdev, buffer, buffer + sdev->inquiry_len,
958 /* see if the device has an echo buffer. If it does we can do
964 len = spi_dv_device_get_echo_buffer(sdev, buffer);
972 starget_printk(KERN_WARNING, starget, "Echo buffer size %d is too big, trimming to %d\n", len, SPI_MAX_ECHO_BUFFER_SIZE);
976 if (spi_dv_retrain(sdev, buffer, buffer + len,
979 /* OK, the stupid drive can't do a write echo buffer
1002 u8 *buffer;
1023 buffer = kzalloc(len, GFP_KERNEL);
1025 if (unlikely(!buffer))
1040 spi_dv_device_internal(sdev, buffer);
1052 kfree(buffer);
1220 * spi_populate_tag_msg - place a tag message in a buffer