These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / input / mouse / elan_i2c.h
index 6d5f8a4..c0ec261 100644 (file)
 #define ETP_PRESSURE_OFFSET    25
 
 /* IAP Firmware handling */
-#define ETP_FW_NAME            "elan_i2c.bin"
+#define ETP_PRODUCT_ID_FORMAT_STRING   "%d.0"
+#define ETP_FW_NAME            "elan_i2c_" ETP_PRODUCT_ID_FORMAT_STRING ".bin"
 #define ETP_IAP_START_ADDR     0x0083
 #define ETP_FW_IAP_PAGE_ERR    (1 << 5)
 #define ETP_FW_IAP_INTF_ERR    (1 << 4)
 #define ETP_FW_PAGE_SIZE       64
-#define ETP_FW_VAILDPAGE_COUNT 768
 #define ETP_FW_SIGNATURE_SIZE  6
-#define ETP_FW_SIGNATURE_ADDRESS       0xBFFA
 
 struct i2c_client;
 struct completion;
@@ -58,9 +57,10 @@ struct elan_transport_ops {
                                 bool max_baseliune, u8 *value);
 
        int (*get_version)(struct i2c_client *client, bool iap, u8 *version);
-       int (*get_sm_version)(struct i2c_client *client, u8 *version);
+       int (*get_sm_version)(struct i2c_client *client,
+                             u8* ic_type, u8 *version);
        int (*get_checksum)(struct i2c_client *client, bool iap, u16 *csum);
-       int (*get_product_id)(struct i2c_client *client, u8 *id);
+       int (*get_product_id)(struct i2c_client *client, u16 *id);
 
        int (*get_max)(struct i2c_client *client,
                       unsigned int *max_x, unsigned int *max_y);