Commit 8d73ec74 authored by Jingle Wu's avatar Jingle Wu Committed by Dmitry Torokhov
Browse files

Input: elan_i2c - add firmware update info for ICs 0x11, 0x13, 0x14



This adds firmware size and page sizes for ic types 0x11, 0x13 and 0x14.
IC 0x14 uses 512-byte firmware page size.

Signed-off-by: default avatarJingle Wu <jingle.wu@emc.com.tw&gt;.>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent bfd9b92b
Loading
Loading
Loading
Loading
+13 −1
Original line number Original line Diff line number Diff line
@@ -127,6 +127,15 @@ static int elan_get_fwinfo(u16 ic_type, u8 iap_version, u16 *validpage_count,
	case 0x10:
	case 0x10:
		*validpage_count = 1024;
		*validpage_count = 1024;
		break;
		break;
	case 0x11:
		*validpage_count = 1280;
		break;
	case 0x13:
		*validpage_count = 2048;
		break;
	case 0x14:
		*validpage_count = 1024;
		break;
	default:
	default:
		/* unknown ic type clear value */
		/* unknown ic type clear value */
		*validpage_count = 0;
		*validpage_count = 0;
@@ -138,7 +147,10 @@ static int elan_get_fwinfo(u16 ic_type, u8 iap_version, u16 *validpage_count,
	*signature_address =
	*signature_address =
		(*validpage_count * ETP_FW_PAGE_SIZE) - ETP_FW_SIGNATURE_SIZE;
		(*validpage_count * ETP_FW_PAGE_SIZE) - ETP_FW_SIGNATURE_SIZE;


	if (ic_type >= 0x0D && iap_version >= 1) {
	if (ic_type == 0x14 && iap_version >= 2) {
		*validpage_count /= 8;
		*page_size = ETP_FW_PAGE_SIZE_512;
	} else if (ic_type >= 0x0D && iap_version >= 1) {
		*validpage_count /= 2;
		*validpage_count /= 2;
		*page_size = ETP_FW_PAGE_SIZE_128;
		*page_size = ETP_FW_PAGE_SIZE_128;
	} else {
	} else {