Add default write command package to prevent i2c quirk error of zero
data length as Raydium touch firmware update is executed.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/input
Add default write command package to prevent i2c quirk error of zero
data length as Raydium touch firmware update is executed.
Signed-off-by: jeffrey.lin
BUG=b:174207906
TEST=Successfully tested update Raydium touch firmware over 100 times
Change-Id: I311b0d26d7642bb800547cd0e87013be17cb7e1b
I've tested okay by the patch you suggested.
Modify update firmware to accept alternative file name
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 11 ---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/input/touchscreen/raydium_i2c_ts.c
b/drivers/input/touchscreen
Touch calibration file will be lost as touch firmware version different from in
device when doing firmware update Preious raydium_i2c touch driver. So this
modification only select specific flash
partition for firmware update to make sure all the function properly.
Signed-off-by: jeffrey.lin
l erase type as doing firmware update. We want just reserve more
infomation after pass through production line. This's convenient
for debug, so that it's okay as some one use old version.
>> Signed-off-by: jeffrey.lin
>> ---
>> drivers/input/touchscreen/raydium_i2c_ts.
From: "jeffrey.lin"
Change boot mode trigger parameter of Raydium firmware update.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/input/touchscreen/raydium_i2c_ts.c
b/dri
add checksum for touch report points.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 68 +-
1 file changed, 47 insertions(+), 21 deletions(-)
diff --git a/drivers/input/touchscreen/raydium_i2c_ts.c
b/drivers/input/touchscreen
Hi dmitry:
> >>input_mt_report_slot_state(ts->input, MT_TOOL_FINGER, state);
> >>
> >> - if (!state)
> >> - continue;
> >> -
> >> - input_report_abs(ts->input, ABS_MT_POSITION_X,
> >> + if (state == 0x01) {
>
> >Why we need this change? How
Hi dmitry:
>> >> modify raydium touch firmware update rule.
>>
>> >Why? You need to explain why you are proposing a change (but as I
>> >mentioned I see no reason for using custom file names for firmware. Have
>> >userspace adjust name as needed by the driver.
>>
>> >Thanks.
>>
>> Just want to
>This is not offset, this is size, or length, of CRC.
I'll change namming as RM_CONTACT_CRC_SIZE
>> @@ -798,33 +803,54 @@ static void raydium_mt_event(struct raydium_data *ts)
>> input_mt_slot(ts->input, i);
>> input_mt_report_slot_state(ts->input, MT_TOOL_FINGER, state);
Hi dmitry:
>> modify raydium touch firmware update rule.
>Why? You need to explain why you are proposing a change (but as I
>mentioned I see no reason for using custom file names for firmware. Have
>userspace adjust name as needed by the driver.
>Thanks.
Just want to easy to do firmware update v
ts->reset_gpio=0 will let raydium IC enter reset mode, and ts->reset_gpio=1
will be normal touch mode.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/input/touch
modify raydium touch firmware update rule.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 112 -
1 file changed, 93 insertions(+), 19 deletions(-)
diff --git a/drivers/input/touchscreen/raydium_i2c_ts.c
b/drivers/input/touchscreen
add checksum for touch report points.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 86 +++---
1 file changed, 56 insertions(+), 30 deletions(-)
diff --git a/drivers/input/touchscreen/raydium_i2c_ts.c
b/drivers/input/touchscreen
Add and fix below function.
1.Touch report points chechsum
2.update firmware naming decision by firmware version
3.fix reset pins control issue
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/raydium_i2c_ts.c | 261 +++--
1 file changed, 213 insertions(+), 48
Hi Dmitry:
>
> BUILD_BUG_ON((RM_FW_PAGE_SIZE % RM_BL_WRT_PKG_SIZE) != 0);
>
> for (i = 0; i < RM_FW_PAGE_SIZE / RM_BL_WRT_PKG_SIZE; i++) {
> buf[BL_HEADER] = RM_CMD_BOOT_PAGE_WRT;
> buf[BL_PAGE_STR] = i ? 0xff : 0;
Change to buf[BL_PAGE_STR] = page_idx ? 0xff
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile |1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 1208
3 files changed, 1221 insertions(+)
create mode
Hi Dmitry:
>static int raydium_i2c_read_message(struct i2c_client *client,
> u32 addr, void *data, size_t len)
>{
> __le32 le_addr;
> size_t xfer_len;
> u32 shift_addr;
> int error;
>
> while (len) {
> xfer_len = min_t(s
Hi Dmitry:
>> if (len < RM_BL_WRT_PKG_SIZE) {
>> buf[BL_PKG_IDX] = 4;
>Why 4???
4 is trigger index for write flash. Our page write size is 128 bytes,
but in order to meet maximum I2C bus read/write byte limite and need
fill full all pages of 128 bytes. So that
Hi Dmitry:
+static int raydium_i2c_read_message(struct i2c_client *client,
+ u32 addr, void *data, size_t len)
+{
+ __be32 be_addr;
+ size_t xfer_len;
+ int error;
+
+ while (len) {
+ xfer_len = min_t(size_t, len, RM_MAX_READ_
Hi Dmitry:
> >static int raydium_i2c_read_message(struct i2c_client *client,
> > u32 addr, void *data, size_t len)
> >{
> > __be32 be_addr;
> > size_t xfer_len;
> > int error;
> > while (len) {
> > xfer_len = min_t(size_t, len, RM_MAX_READ
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile |1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 1208
3 files changed, 1221 insertions(+)
create mode
Document the device tree binfings of Raydium I2C touch.
Signed-off-by: jeffrey.lin
---
.../bindings/input/touchscreen/raydium_i2c_ts.txt| 20
.../devicetree/bindings/vendor-prefixes.txt | 1 +
2 files changed, 21 insertions(+)
create mode 100644
>static int raydium_i2c_do_update_firmware(struct raydium_data *ts,
>const struct firmware *fw)
>{
> struct i2c_client *client = ts->client;
> const void *data;
> size_t data_len;
> size_t len;
> int page_nr;
> int i;
>
Hi Dmitry:
I've finished issues under the format you suggested as below.
>#define RM_RESET_MSG_ADDR 0x4004
>#define RM_FASTBOOT_MSG_ADDR 0x5620
>#define RM_MAX_READ_SIZE 63
change maximum read size to 56 bytes
#define RM_MAX_READ_SIZE56
>#define RM_CONTACT_X_POS
Hi Dmitry:
This patch you submitted had some problems. I still debug in progress. Should I
comment the issues in this patch or create a new patch if I finish the issues?
>static int raydium_i2c_fastboot(struct i2c_client *client)
> {
>- static const u8 boot_cmd[] = { 0x50, 0x00, 0x06, 0x20
Hi Dmitry:
I've made a mistake as touch points data over "MAX_PKG_SIZE".This mistake will
result in memory overwrite, so that I update a new patch to upstream.
New patch I assign a new definition "MAX_RD_PKG_LEN" for maxinum I2C read
command to prevent touch points data package over I2C bus buf
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile |1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 1208
3 files changed, 1221 insertions(+)
create mode
Hi Dmitry:
About question "In my previous e-mail I requested you to enumerate changes that
are made to the driver, compared to the previous version(s). There were also a
few questions that I did not get answer for."
In order to improve flash read/write security of boot loader. We increase
hand
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile |1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 1207
3 files changed, 1220 insertions(+)
create mode
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 932 +
3 files changed, 945 insertions(+)
create mode 100644
Document the device tree binfings of Raydium I2C touch.
Signed-off-by: jeffrey.lin
---
.../devicetree/bindings/input/raydium_i2c_ts.txt | 20
.../devicetree/bindings/vendor-prefixes.txt | 1 +
2 files changed, 21 insertions(+)
create mode 100644 Documentation
Document the device tree binfings of Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
.../devicetree/bindings/input/raydium_i2c_ts.txt| 21 +
.../devicetree/bindings/vendor-prefixes.txt | 1 +
2 files changed, 22 insertions(+)
create mode 100644
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 13 +
drivers/input/touchscreen/Makefile | 1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 932 +
3 files changed, 946 insertions(+)
create mode 100644
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
.../devicetree/bindings/input/raydium_i2c_ts.txt | 23 +
.../devicetree/bindings/vendor-prefixes.txt| 1 +
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1
Raydium I2C touch driver.
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 13 +
drivers/input/touchscreen/Makefile | 1 +
drivers/input/touchscreen/raydium_i2c_ts.c | 953 +
3 files changed, 967 insertions(+)
create mode 100644
This patch is porting Raydium I2C touch driver. Developer can enable raydium
touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1 +
dri
This patch is porting Raydium I2C touch driver. Developer can enable raydium
touch driver by modifying define
"CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1 +
dri
This patch is porting Raydium I2C touch driver. Developer can enable raydium
touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey.lin
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen/Makefile | 1 +
dri
From: "jeffrey.lin"
This patch is porting Raydium I2C touch driver. Developer can enable
raydium touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey@rad-ic.com
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscree
From: "jeffrey.lin"
This patch is porting Raydium I2C touch driver. Developer can enable
raydium touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey@rad-ic.com
---
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscree
From: "jeffrey.lin"
This patch is porting Raydium I2C touch driver. Developer can enable raydium
touch driver by modifying define
"CONFIG_TOUCHSCREEN_RM_TS".
Signed-off-by: jeffrey@rad-ic.com
---
drivers/input/touchscreen/Kconfig | 12
drivers/input/touch
From: "jeffrey.lin"
This patch is porting Raydium I2C touch driver. Developer can enable
raydium touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
Change-Id: I5f33cfdf0e895de6e7d535c11dd4b3ce8b49fa48
Signed-off-by: jeffrey@rad-ic.com
---
drivers/input
From: "jeffrey.lin"
this patch is porting Raydium I2C touch driver. Developer can enable
raydium touch driver by modifying define "CONFIG_TOUCHSCREEN_RM_TS".
BUG: None
TEST: built and test with peppy
Signed-off-by: jeffrey@rad-ic.com
Change-Id: I05d54e5ef29249d2a6ea
From: "jeffrey.lin"
this patch is porting Raydium I2C touch driver. Developer can enable
Raydium touch driver by modifying define "CONFIG_TOUCHSCREEN_RM31100"
in config/base.config
Change-Id: Idae54cc4bca17f321a1d0895a8b59680bf9af859
Signed-off-by: jeffrey@rad-ic.c
46 matches
Mail list logo