linux/drivers/input/touchscreen/goodix_fwupload.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Goodix Touchscreen firmware upload support
 *
 * Copyright (c) 2021 Hans de Goede <[email protected]>
 *
 * This is a rewrite of gt9xx_update.c from the Allwinner H3 BSP which is:
 * Copyright (c) 2010 - 2012 Goodix Technology.
 * Author: [email protected]
 */

#include <linux/device.h>
#include <linux/firmware.h>
#include <linux/i2c.h>
#include "goodix.h"

#define GOODIX_FW_HEADER_LENGTH
#define GOODIX_FW_SECTION_LENGTH
#define GOODIX_FW_DSP_LENGTH
#define GOODIX_FW_UPLOAD_ADDRESS

#define GOODIX_CFG_LOC_HAVE_KEY
#define GOODIX_CFG_LOC_DRVA_NUM
#define GOODIX_CFG_LOC_DRVB_NUM
#define GOODIX_CFG_LOC_SENS_NUM

struct goodix_fw_header {} __packed;

static u16 goodix_firmware_checksum(const u8 *data, int size)
{}

static int goodix_firmware_verify(struct device *dev, const struct firmware *fw)
{}

static int goodix_enter_upload_mode(struct i2c_client *client)
{}

static int goodix_start_firmware(struct i2c_client *client)
{}

static int goodix_firmware_upload(struct goodix_ts_data *ts)
{}

static int goodix_prepare_bak_ref(struct goodix_ts_data *ts)
{}

static int goodix_send_main_clock(struct goodix_ts_data *ts)
{}

int goodix_firmware_check(struct goodix_ts_data *ts)
{}

bool goodix_handle_fw_request(struct goodix_ts_data *ts)
{}

void goodix_save_bak_ref(struct goodix_ts_data *ts)
{}