Changeset 530 for GPL/trunk/lib32/sound.c
- Timestamp:
- Jul 27, 2010, 6:32:21 PM (15 years ago)
- File:
-
- 1 edited
-
GPL/trunk/lib32/sound.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
GPL/trunk/lib32/sound.c
r528 r530 1104 1104 1105 1105 if (ulSize == 0) { 1106 rprintf(("OSS32_WaveAddBuffer: no room left in hardware buffer!! \n"));1107 rprintf(("state=%x avail=%x ReqSize=%x \n", status.state, status.avail, ulReqSize));1106 rprintf(("OSS32_WaveAddBuffer: no room left in hardware buffer!!")); 1107 rprintf(("state=%x avail=%x ReqSize=%x", status.state, status.avail, ulReqSize)); 1108 1108 *pulTransferred = 0; 1109 1109 return OSSERR_BUFFER_FULL; 1110 1110 } 1111 1111 1112 //rprintf(("AddBuffer: state=%x avail=%x ReqSize=%x", status.state, status.avail, ulReqSize)); 1112 1113 if (status.state == SNDRV_PCM_STATE_XRUN) { 1113 rprintf(("Internal Error: Xrun\n")); 1114 rprintf(("Internal Error: Xrun")); 1115 iRet = pHandle->file.f_op->ioctl(&pHandle->inode, &pHandle->file, SNDRV_PCM_IOCTL_PREPARE, 0); 1116 if (iRet < 0) { 1117 rprintf(("Prepare failed: state=%x avail=%x ReqSize=%x", status.state, status.avail, ulReqSize)); 1118 return UNIXToOSSError(iRet); 1119 } 1120 iRet = pHandle->file.f_op->ioctl(&pHandle->inode, &pHandle->file, SNDRV_PCM_IOCTL_STATUS, (ULONG)__Stack32ToFlat(&status)); 1121 rprintf(("Xrun restarted: state=%x avail=%x ReqSize=%x", status.state, status.avail, ulReqSize)); 1122 if (iRet < 0) return UNIXToOSSError(iRet); 1114 1123 } 1115 1124 1116 1125 iRet = pHandle->file.f_op->write(&pHandle->file, (char *)ulBuffer, ulSize, &pHandle->file.f_pos); 1117 1126 1118 if (iRet != ulSize) rprintf(("WaveAddBuffer: ReqSize=%x Size=%x iRet=%x \n", ulReqSize, ulSize, iRet));1119 1120 if (iRet < 0 ) break;1127 if (iRet != ulSize) rprintf(("WaveAddBuffer: ReqSize=%x Size=%x iRet=%x", ulReqSize, ulSize, iRet)); 1128 1129 if (iRet < 0) return UNIXToOSSError(iRet); 1121 1130 ulTransferred = iRet; 1122 1131 #else … … 1126 1135 ulSize = min(ulReqSize, samples_to_bytes(status.avail)); 1127 1136 1128 //printk("OSS32_WaveAddBuffer N:%d hw=%x app=%x avail=%x req size=%x size=%x \n",1137 //printk("OSS32_WaveAddBuffer N:%d hw=%x app=%x avail=%x req size=%x size=%x", 1129 1138 // CountWv, samples_to_bytes(status.hw_ptr), samples_to_bytes(status.appl_ptr), samples_to_bytes(status.avail), ulSize, ulReqSize); 1130 1139 1131 1140 if (ulSize == 0) { 1132 rprintf(("OSS32_WaveAddBuffer: no room left in hardware buffer!! \n"));1133 rprintf(("state=%x avail=%x SizeReq=%x \n", status.state, status.avail, ulReqSize));1141 rprintf(("OSS32_WaveAddBuffer: no room left in hardware buffer!!")); 1142 rprintf(("state=%x avail=%x SizeReq=%x", status.state, status.avail, ulReqSize)); 1134 1143 *pulTransferred = 0; 1135 1144 return OSSERR_BUFFER_FULL; 1136 1145 } 1137 1146 1138 rprintf(("WaveAddBuffer: ReqSize=%x Size=%x \n", ulReqSize, ulSize));1147 rprintf(("WaveAddBuffer: ReqSize=%x Size=%x", ulReqSize, ulSize)); 1139 1148 1140 1149 // size should be aligned to channels number * samplesize //PS+++ what is it and why?!?!?! … … 1147 1156 if ((status.state != SNDRV_PCM_STATE_XRUN ) && samples_to_bytes(status.avail) ) break; 1148 1157 if (status.state == SNDRV_PCM_STATE_XRUN) { 1149 rprintf(("Internal Error: Xrun \n"));1158 rprintf(("Internal Error: Xrun")); 1150 1159 } 1151 1160 if (ulI > 998) { … … 1156 1165 1157 1166 if (iRet1 < 0) { 1158 rprintf(("iRet1=%i trans=%x ReqSize=%x Size=%x \n", iRet1, ulTransferred, ulReqSize, ulSize));1167 rprintf(("iRet1=%i trans=%x ReqSize=%x Size=%x", iRet1, ulTransferred, ulReqSize, ulSize)); 1159 1168 break; // We have any global error, don't try more 1160 1169 } … … 1176 1185 } 1177 1186 ulTransferred += iRet; 1178 // printk("written: now: %d, trans: %d need %d tot:%d \n", iRet, ulTransferred, ulReqSize,ulSize);1187 // printk("written: now: %d, trans: %d need %d tot:%d", iRet, ulTransferred, ulReqSize,ulSize); 1179 1188 ulBuffer += iRet; 1180 1189 if (ulSize > iRet) ulSize -= iRet; … … 1184 1193 break; 1185 1194 case SNDRV_MINOR_PCM_CAPTURE: 1186 //printk("OSS32_WaveAddBuffer N:%d state=%x hw=%x app=%x avail=%x size=%x \n",1195 //printk("OSS32_WaveAddBuffer N:%d state=%x hw=%x app=%x avail=%x size=%x", 1187 1196 // CountWv, status.state, samples_to_bytes(status.hw_ptr), samples_to_bytes(status.appl_ptr), samples_to_bytes(status.avail), ulReqSize); 1188 1197 // Need to handle overrun condition when reading … … 1208 1217 // if (*pulTransferred < ulSize) 1209 1218 // { 1210 // printk("warning: ulTransferred [%d] less than requested [%d] \n", *pulTransferred, ulSize);1219 // printk("warning: ulTransferred [%d] less than requested [%d]", *pulTransferred, ulSize); 1211 1220 // iRet1 = pHandle->file.f_op->ioctl(&pHandle->inode, &pHandle->file, SNDRV_PCM_IOCTL_PREPARE, 0); 1212 1221 // }
Note:
See TracChangeset
for help on using the changeset viewer.
