You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

118 lines
4.1 KiB
Diff

diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 4e506d0..8f32b6b 100755
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -391,6 +391,8 @@
#define __NR_pwritev (__NR_SYSCALL_BASE+362)
#define __NR_rt_tgsigqueueinfo (__NR_SYSCALL_BASE+363)
#define __NR_perf_event_open (__NR_SYSCALL_BASE+364)
+#define __NR_recvmmsg (__NR_SYSCALL_BASE+365)
+#define __NR_accept4 (__NR_SYSCALL_BASE+366)
/*
* The following SWIs are ARM private.
diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
index 4f07168..bb50a6b 100755
--- a/arch/arm/kernel/calls.S
+++ b/arch/arm/kernel/calls.S
@@ -374,6 +374,8 @@
CALL(sys_pwritev)
CALL(sys_rt_tgsigqueueinfo)
CALL(sys_perf_event_open)
+ CALL(sys_accept4)
+ CALL(sys_accept4)
#ifndef syscalls_counted
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
#define syscalls_counted
diff --git a/drivers/input/touchscreen/tegra_odm.c b/drivers/input/touchscreen/tegra_odm.c
index 6f3ad3d..908efb8 100755
--- a/drivers/input/touchscreen/tegra_odm.c
+++ b/drivers/input/touchscreen/tegra_odm.c
@@ -559,34 +559,16 @@ static void tegra_touch_fingers_dealwith(struct tegra_touch_driver_data *touch,
{
if(0 == fingers)
{
- input_report_abs(touch->input_dev, ABS_MT_TOUCH_MAJOR, 0);
- input_report_abs(touch->input_dev, ABS_MT_WIDTH_MAJOR, 0);
- input_mt_sync(touch->input_dev);
+ input_report_key(touch->input_dev, BTN_TOUCH, 0);
}
- if(1 == fingers)
+ if(1 <= fingers)
{
- input_report_abs(touch->input_dev, ABS_MT_POSITION_X, coord.additionalInfo.multi_XYCoords[0][0]);
- input_report_abs(touch->input_dev, ABS_MT_POSITION_Y, coord.additionalInfo.multi_XYCoords[0][1]);
- input_report_abs(touch->input_dev, ABS_MT_TOUCH_MAJOR, 10);
- input_report_abs(touch->input_dev, ABS_MT_WIDTH_MAJOR, 20);
- input_mt_sync(touch->input_dev);
+ input_report_abs(touch->input_dev, ABS_X, coord.additionalInfo.multi_XYCoords[0][0]);
+ input_report_abs(touch->input_dev, ABS_Y, coord.additionalInfo.multi_XYCoords[0][1]);
+ input_report_key(touch->input_dev, BTN_TOUCH, 1);
}
- if(2 == fingers)
- {
- input_report_abs(touch->input_dev, ABS_MT_POSITION_X, coord.additionalInfo.multi_XYCoords[0][0]);
- input_report_abs(touch->input_dev, ABS_MT_POSITION_Y, coord.additionalInfo.multi_XYCoords[0][1]);
- input_report_abs(touch->input_dev, ABS_MT_TOUCH_MAJOR, 10);
- input_report_abs(touch->input_dev, ABS_MT_WIDTH_MAJOR, 20);
- input_mt_sync(touch->input_dev);
-
- input_report_abs(touch->input_dev, ABS_MT_POSITION_X, coord.additionalInfo.multi_XYCoords[1][0]);
- input_report_abs(touch->input_dev, ABS_MT_POSITION_Y, coord.additionalInfo.multi_XYCoords[1][1]);
- input_report_abs(touch->input_dev, ABS_MT_TOUCH_MAJOR, 10);
- input_report_abs(touch->input_dev, ABS_MT_WIDTH_MAJOR, 20);
- input_mt_sync(touch->input_dev);
- }
input_sync(touch->input_dev);
}
#define TIME_READ_INTERVAL 10 //MS
@@ -657,28 +639,9 @@ InBurnBootloader:
coord.additionalInfo.multi_XYCoords[1][0], coord.additionalInfo.multi_XYCoords[1][1]));
#endif
- switch(coord.additionalInfo.Fingers)
- {
- #if 0
- case 0:
- tegra_touch_fingers_dealwith(touch, coord, 0); //fingers = 0
-
- msleep(TIME_READ_INTERVAL);
- break;
- #endif
- case 0:
- break;
-
- case 1:
- tegra_touch_fingers_dealwith(touch, coord, 1); //fingers = 1
- msleep(TIME_READ_INTERVAL);
- break;
- case 2:
- tegra_touch_fingers_dealwith(touch, coord, 2); //fingers = 2
- msleep(TIME_READ_INTERVAL);
- break;
- default:
- break;
+ if (coord.additionalInfo.Fingers > 0) {
+ tegra_touch_fingers_dealwith(touch, coord, coord.additionalInfo.Fingers);
+ msleep(TIME_READ_INTERVAL);
}
HandleInterrupt:
diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index 3e6e5a0..cc9e488 100755
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -24,6 +24,7 @@
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/device.h>
+#include <linux/kdev_t.h>
#include <linux/usb/composite.h>
diff --git a/include/asm-arm b/include/asm-arm
deleted file mode 100755
index e69de29..0000000