Changeset View
Changeset View
Standalone View
Standalone View
sys/cam/cam_periph.c
Show First 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | |||||
return(0); | return(0); | ||||
if ((ccb->ccb_h.flags & CAM_DATA_MASK) != CAM_DATA_VADDR) | if ((ccb->ccb_h.flags & CAM_DATA_MASK) != CAM_DATA_VADDR) | ||||
return (EINVAL); | return (EINVAL); | ||||
data_ptrs[0] = &ccb->ataio.data_ptr; | data_ptrs[0] = &ccb->ataio.data_ptr; | ||||
lengths[0] = ccb->ataio.dxfer_len; | lengths[0] = ccb->ataio.dxfer_len; | ||||
dirs[0] = ccb->ccb_h.flags & CAM_DIR_MASK; | dirs[0] = ccb->ccb_h.flags & CAM_DIR_MASK; | ||||
numbufs = 1; | numbufs = 1; | ||||
break; | break; | ||||
case XPT_MMC_IO: | |||||
printf("cam_periph_mapmem: MMCIO flags %02x\n", ccb->ccb_h.flags); | |||||
if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_NONE) | |||||
return(0); | |||||
if (ccb->mmcio.cmd.data.len == 0) { | |||||
printf("cam_periph_mapmem: almost failed!...\n"); | |||||
return(0); | |||||
} | |||||
printf("cam_periph_mapmem: Setting up memory map...\n"); | |||||
data_ptrs[0] = (unsigned char **)&ccb->mmcio.cmd.data.data; | |||||
lengths[0] = ccb->mmcio.cmd.data.len; | |||||
dirs[0] = ccb->ccb_h.flags & CAM_DIR_MASK; | |||||
numbufs = 1; | |||||
break; | |||||
case XPT_SMP_IO: | case XPT_SMP_IO: | ||||
data_ptrs[0] = &ccb->smpio.smp_request; | data_ptrs[0] = &ccb->smpio.smp_request; | ||||
lengths[0] = ccb->smpio.smp_request_len; | lengths[0] = ccb->smpio.smp_request_len; | ||||
dirs[0] = CAM_DIR_OUT; | dirs[0] = CAM_DIR_OUT; | ||||
data_ptrs[1] = &ccb->smpio.smp_response; | data_ptrs[1] = &ccb->smpio.smp_response; | ||||
lengths[1] = ccb->smpio.smp_response_len; | lengths[1] = ccb->smpio.smp_response_len; | ||||
dirs[1] = CAM_DIR_IN; | dirs[1] = CAM_DIR_IN; | ||||
numbufs = 2; | numbufs = 2; | ||||
▲ Show 20 Lines • Show All 42 Lines • Show Last 20 Lines |