Lines Matching defs:ipcnum
283 unsigned int ipcnum = (unsigned int) ioarg;
285 if (ipcnum >= ARRAY_SIZE(pDrvData->IPCs)) {
289 " Error: Invalid ipcnum %x\n",
290 ipcnum);
293 ipcnum = array_index_nospec(ipcnum,
297 " ipcnum %x entry usIntCount %x\n",
298 ipcnum,
299 pDrvData->IPCs[ipcnum].usIntCount);
302 pDrvData->IPCs[ipcnum].bIsHere = false;
303 pDrvData->IPCs[ipcnum].bIsEnabled = true;
308 " ipcnum %x exit\n",
309 ipcnum);
314 unsigned int ipcnum = (unsigned int) ioarg;
316 if (ipcnum >= ARRAY_SIZE(pDrvData->IPCs)) {
320 " Invalid ipcnum %x\n", ipcnum);
323 ipcnum = array_index_nospec(ipcnum,
327 " ipcnum %x, usIntCount %x\n",
328 ipcnum,
329 pDrvData->IPCs[ipcnum].usIntCount);
332 if (pDrvData->IPCs[ipcnum].bIsEnabled == true) {
338 ipcnum);
339 add_wait_queue(&pDrvData->IPCs[ipcnum].ipc_wait_queue, &wait);
340 pDrvData->IPCs[ipcnum].bIsHere = true;
344 if (pDrvData->IPCs[ipcnum].usIntCount == 1) { /* first int has occurred (race condition) */
345 pDrvData->IPCs[ipcnum].usIntCount = 2; /* first int has been handled */
348 " IOCTL_MW_GET_IPC ipcnum %x"
350 ipcnum);
353 if (pDrvData->IPCs[ipcnum].usIntCount == 1) {
354 pDrvData->IPCs[ipcnum].usIntCount = 2;
358 " IOCTL_MW_GET_IPC ipcnum %x"
361 ipcnum);
363 pDrvData->IPCs[ipcnum].bIsHere = false;
364 remove_wait_queue(&pDrvData->IPCs[ipcnum].ipc_wait_queue, &wait);
370 ipcnum);
377 unsigned int ipcnum = (unsigned int) ioarg;
381 " ipcnum %x\n",
382 ipcnum);
383 if (ipcnum >= ARRAY_SIZE(pDrvData->IPCs)) {
387 " Error: Invalid ipcnum %x\n",
388 ipcnum);
391 ipcnum = array_index_nospec(ipcnum,
394 if (pDrvData->IPCs[ipcnum].bIsEnabled == true) {
395 pDrvData->IPCs[ipcnum].bIsEnabled = false;
396 if (pDrvData->IPCs[ipcnum].bIsHere == true) {
397 wake_up_interruptible(&pDrvData->IPCs[ipcnum].ipc_wait_queue);