Lines Matching defs:buffer
108 static void sd_read_capacity(struct scsi_disk *sdkp, unsigned char *buffer);
141 char buffer[64];
175 if (scsi_mode_sense(sdp, 0x08, 8, 0, buffer, sizeof(buffer), SD_TIMEOUT,
178 len = min_t(size_t, sizeof(buffer), data.length - data.header_length -
180 buffer_data = buffer + data.header_length +
189 * received mode parameter buffer before doing MODE SELECT.
699 static int sd_sec_submit(void *data, u16 spsp, u8 secp, void *buffer,
716 buffer, len, SD_TIMEOUT, sdkp->max_retries,
1874 "READ RESERVATION failed due to short return buffer of %d bytes\n",
2096 * its value is zero, so we assume the whole buffer transferred
2369 static int sd_read_protection_type(struct scsi_disk *sdkp, unsigned char *buffer)
2374 if (scsi_device_protection(sdp) == 0 || (buffer[12] & 1) == 0) {
2379 type = ((buffer[12] >> 1) & 7) + 1; /* P_TYPE 0 = Type 1 */
2447 unsigned char *buffer)
2469 memset(buffer, 0, RC16_LEN);
2472 buffer, RC16_LEN, SD_TIMEOUT,
2506 sector_size = get_unaligned_be32(&buffer[8]);
2507 lba = get_unaligned_be64(&buffer[0]);
2509 if (sd_read_protection_type(sdkp, buffer) < 0) {
2515 sdkp->physical_block_size = (1 << (buffer[13] & 0xf)) * sector_size;
2518 sdkp->rc_basis = (buffer[12] >> 4) & 0x3;
2521 alignment = ((buffer[14] & 0x3f) << 8 | buffer[15]) * sector_size;
2527 if (buffer[14] & 0x80) { /* LBPME */
2530 if (buffer[14] & 0x40) /* LBPRZ */
2541 unsigned char *buffer)
2557 memset(buffer, 0, 8);
2559 the_result = scsi_execute_cmd(sdp, cmd, REQ_OP_DRV_IN, buffer,
2586 sector_size = get_unaligned_be32(&buffer[4]);
2587 lba = get_unaligned_be32(&buffer[0]);
2620 sd_read_capacity(struct scsi_disk *sdkp, unsigned char *buffer)
2626 sector_size = read_capacity_16(sdkp, sdp, buffer);
2632 sector_size = read_capacity_10(sdkp, sdp, buffer);
2636 sector_size = read_capacity_10(sdkp, sdp, buffer);
2646 sector_size = read_capacity_16(sdkp, sdp, buffer);
2744 /* called with buffer of length 512 */
2747 unsigned char *buffer, int len, struct scsi_mode_data *data,
2751 * If we must use MODE SENSE(10), make sure that the buffer length
2757 return scsi_mode_sense(sdkp->device, dbd, modepage, 0, buffer, len,
2763 * called with buffer of length SD_BUF_SIZE
2766 sd_read_write_protect_flag(struct scsi_disk *sdkp, unsigned char *buffer)
2780 res = sd_do_mode_sense(sdkp, 0, 0x3F, buffer, 192, &data, NULL);
2787 res = sd_do_mode_sense(sdkp, 0, 0x3F, buffer, 4, &data, NULL);
2796 res = sd_do_mode_sense(sdkp, 0, 0, buffer, 4, &data, NULL);
2802 res = sd_do_mode_sense(sdkp, 0, 0x3F, buffer, 255,
2815 sd_printk(KERN_DEBUG, sdkp, "Mode Sense: %4ph\n", buffer);
2822 * called with buffer of length SD_BUF_SIZE
2825 sd_read_cache_type(struct scsi_disk *sdkp, unsigned char *buffer)
2864 res = sd_do_mode_sense(sdkp, dbd, modepage, buffer, first_len,
2896 res = sd_do_mode_sense(sdkp, dbd, modepage, buffer, len,
2903 u8 page_code = buffer[offset] & 0x3F;
2904 u8 spf = buffer[offset] & 0x40;
2921 offset += 4 + (buffer[offset+2] << 8) +
2922 buffer[offset+3];
2924 offset += 2 + buffer[offset+1];
2940 sdkp->WCE = ((buffer[offset + 2] & 0x04) != 0);
2941 sdkp->RCD = ((buffer[offset + 2] & 0x01) != 0);
2943 sdkp->WCE = ((buffer[offset + 2] & 0x01) == 0);
3002 static void sd_read_app_tag_own(struct scsi_disk *sdkp, unsigned char *buffer)
3015 res = scsi_mode_sense(sdp, 1, 0x0a, 0, buffer, 36, SD_TIMEOUT,
3031 if ((buffer[offset] & 0x3f) != 0x0a) {
3036 if ((buffer[offset + 5] & 0x80) == 0)
3194 static void sd_read_write_same(struct scsi_disk *sdkp, unsigned char *buffer)
3204 if (scsi_report_opcode(sdev, buffer, SD_BUF_SIZE, INQUIRY, 0) < 0) {
3220 if (scsi_report_opcode(sdev, buffer, SD_BUF_SIZE, WRITE_SAME_16, 0) == 1)
3223 if (scsi_report_opcode(sdev, buffer, SD_BUF_SIZE, WRITE_SAME, 0) == 1)
3227 static void sd_read_security(struct scsi_disk *sdkp, unsigned char *buffer)
3234 if (scsi_report_opcode(sdev, buffer, SD_BUF_SIZE,
3236 scsi_report_opcode(sdev, buffer, SD_BUF_SIZE,
3253 unsigned char *buffer = NULL;
3273 buffer = kmalloc(buf_len, GFP_KERNEL);
3274 if (!buffer || scsi_get_vpd_page(sdkp->device, 0xb9, buffer, buf_len))
3278 vpd_len = get_unaligned_be16(&buffer[2]) + 4;
3297 desc = &buffer[64];
3318 kfree(buffer);
3410 char *buffer, cmd[10] = { };
3412 buffer = kmalloc(buf_len, GFP_KERNEL);
3413 if (!buffer)
3420 scsi_execute_cmd(sdkp->device, cmd, REQ_OP_DRV_IN, buffer, buf_len,
3422 kfree(buffer);
3436 unsigned char *buffer;
3449 buffer = kmalloc(SD_BUF_SIZE, GFP_KERNEL);
3450 if (!buffer) {
3463 sd_read_capacity(sdkp, buffer);
3484 sd_zbc_read_zones(sdkp, buffer);
3490 sd_read_write_protect_flag(sdkp, buffer);
3491 sd_read_cache_type(sdkp, buffer);
3492 sd_read_app_tag_own(sdkp, buffer);
3493 sd_read_write_same(sdkp, buffer);
3494 sd_read_security(sdkp, buffer);
3549 kfree(buffer);
3587 * @buf: output buffer
3588 * @buflen: length of the output buffer