From: cwz Date: Wed, 3 Aug 2011 08:10:03 +0000 (-0700) Subject: newton: get all sector3 info api. X-Git-Tag: firefly_0821_release~9775^2~3^2~14 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=243dcf38a58388d04dab1e41d5cf92f1fd4457b0;p=firefly-linux-kernel-4.4.55.git newton: get all sector3 info api. --- diff --git a/drivers/misc/newton.c b/drivers/misc/newton.c index dcc7b7256de7..2074231e1b6f 100755 --- a/drivers/misc/newton.c +++ b/drivers/misc/newton.c @@ -30,6 +30,8 @@ #define NEWTON_GPIO_B RK29_PIN4_PB2 #define NEWTON_GPIO_AC_DETEC RK29_PIN4_PA1 #define NEWTON_GPIO_GPS_PWR RK29_PIN6_PB2 +#define NEWTON_IDBDATA_SIZE 512 +#define NEWTON_GET_IDBDATA 0x600F #define NEWTON_GET_UID 0x6001 #define NEWTON_AC_DETEC 0x6002 #define NEWTON_GPS_CTRL 0x6003 @@ -121,16 +123,29 @@ int rk29_newton_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, switch(cmd) { - case NEWTON_GET_UID: - { - IdbSector3 sn; - DBG("%s:NEWTON_GET_UID\n",__FUNCTION__); - memset(&sn,0,sizeof(IdbSector3)); - GetSNSectorInfo((char*)&sn); - //newton_print_buf(&sn.UID_Data, sizeof(sn.UID_Data)); + case NEWTON_GET_UID: + { + IdbSector3 sn; + + DBG("%s:NEWTON_GET_UID\n",__FUNCTION__); + memset(&sn,0,sizeof(IdbSector3)); + GetSNSectorInfo((char*)&sn); + //newton_print_buf(&sn.UID_Data, sizeof(sn.UID_Data)); if(copy_to_user(argp, &sn.UID_Data, sizeof(sn.UID_Data))) return -EFAULT; - } - break; + } + break; + + case NEWTON_GET_IDBDATA: + { + char data[NEWTON_IDBDATA_SIZE]; + + memset(data, 0, NEWTON_IDBDATA_SIZE); + GetSNSectorInfo(data); + if(copy_to_user(argp, data, NEWTON_IDBDATA_SIZE)) + return -EFAULT; + } + break; + /* case NEWTON_AC_DETEC: {