[PATCH] driver: input :touchscreen :Modify Raydium Firmware update input file

From: jeffrey.lin
Date: Thu Dec 21 2017 - 08:51:50 EST


Modify update firmware to accept alternative file name

Signed-off-by: jeffrey.lin <jeffrey.lin@xxxxxxxxxx>
---
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/raydium_i2c_ts.c
index a99fb5cac5a0..439d43c3519c 100644
--- a/drivers/input/touchscreen/raydium_i2c_ts.c
+++ b/drivers/input/touchscreen/raydium_i2c_ts.c
@@ -130,6 +130,7 @@ struct raydium_data {
struct gpio_desc *reset_gpio;

struct raydium_info info;
+ char fw_file[64];

struct mutex sysfs_mutex;

@@ -752,12 +753,16 @@ static int raydium_i2c_fw_update(struct raydium_data *ts)
{
struct i2c_client *client = ts->client;
const struct firmware *fw = NULL;
- const char *fw_file = "raydium.fw";
int error;

- error = request_firmware(&fw, fw_file, &client->dev);
+ /* Firmware name */
+ snprintf(ts->fw_file, sizeof(ts->fw_file),
+ "raydium_%x.fw", ts->info.hw_ver);
+ dev_dbg(&client->dev, "firmware name: %s\n", ts->fw_file);
+
+ error = request_firmware(&fw, ts->fw_file, &client->dev);
if (error) {
- dev_err(&client->dev, "Unable to open firmware %s\n", fw_file);
+ dev_err(&client->dev, "Unable to open firmware %s\n", ts->fw_file);
return error;
}

--
2.12.2