여기 소스에서 마지막에 return -EINVAL;를 해주는데 무슨 의미인지 모르겠습
니다.아시는 분 답변 부탁드릴께요.

int s_ioctl( struct inode *inode, struct file *filp, unsigned int cmd,
unsigned long arg )
{
unsigned short fetch,temp;

long i;

unsigned char sub;
unsigned short data;
unsigned int opt;

switch (cmd)
{
case IOCTL_S_INIT:

s_init();
break;

case IOCTL_S_READ:
break;

case IOCTL_S_WRITE:
get_user((fetch),(unsigned short *)
arg);

// 서브 어드레스와 데이타를 분리
temp = fetch;
temp = temp & 0xff00;
temp = temp >> 8;

sub = (unsigned char)temp;

temp = fetch;
temp = temp & 0x00ff;

data = temp;

s_WriteReg(sub,data);


opt = (unsigned int)data;


switch(opt)
{

case 0x05: // 하이 임피던

break;

case 0x0d: // VOUT ENABLE
break;

default:
break;
}
break;

default:
return -EINVAL;

}

return -EINVAL;
}