Lines Matching refs:chsc_area
242 static int chsc_async(struct chsc_async_area *chsc_area, in chsc_async() argument
251 chsc_area->header.key = PAGE_DEFAULT_KEY >> 4; in chsc_async()
260 chsc_area->header.sid = sch->schid; in chsc_async()
263 cc = chsc(chsc_area); in chsc_async()
293 static void chsc_log_command(void *chsc_area) in chsc_log_command() argument
297 snprintf(dbf, sizeof(dbf), "CHSC:%x", ((uint16_t *)chsc_area)[1]); in chsc_log_command()
299 CHSC_LOG_HEX(0, chsc_area, 32); in chsc_log_command()
328 struct chsc_async_area *chsc_area; in chsc_ioctl_start() local
335 chsc_area = (void *)get_zeroed_page(GFP_DMA | GFP_KERNEL); in chsc_ioctl_start()
336 if (!chsc_area) in chsc_ioctl_start()
344 if (copy_from_user(chsc_area, user_area, PAGE_SIZE)) { in chsc_ioctl_start()
348 chsc_log_command(chsc_area); in chsc_ioctl_start()
350 ret = chsc_async(chsc_area, request); in chsc_ioctl_start()
358 if (copy_to_user(user_area, chsc_area, PAGE_SIZE)) in chsc_ioctl_start()
364 free_page((unsigned long)chsc_area); in chsc_ioctl_start()
432 struct chsc_sync_area *chsc_area; in chsc_ioctl_start_sync() local
435 chsc_area = (void *)get_zeroed_page(GFP_KERNEL | GFP_DMA); in chsc_ioctl_start_sync()
436 if (!chsc_area) in chsc_ioctl_start_sync()
438 if (copy_from_user(chsc_area, user_area, PAGE_SIZE)) { in chsc_ioctl_start_sync()
442 if (chsc_area->header.code & 0x4000) { in chsc_ioctl_start_sync()
446 chsc_log_command(chsc_area); in chsc_ioctl_start_sync()
447 ccode = chsc(chsc_area); in chsc_ioctl_start_sync()
452 if (copy_to_user(user_area, chsc_area, PAGE_SIZE)) in chsc_ioctl_start_sync()
457 free_page((unsigned long)chsc_area); in chsc_ioctl_start_sync()