linux/drivers/usb/typec/ucsi/ucsi_glink.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2023, Linaro Ltd
 */
#include <linux/auxiliary_bus.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/of_device.h>
#include <linux/property.h>
#include <linux/soc/qcom/pdr.h>
#include <linux/usb/typec_mux.h>
#include <linux/gpio/consumer.h>
#include <linux/soc/qcom/pmic_glink.h>
#include "ucsi.h"

#define PMIC_GLINK_MAX_PORTS

#define UCSI_BUF_SIZE

#define MSG_TYPE_REQ_RESP
#define UCSI_BUF_SIZE

#define UC_NOTIFY_RECEIVER_UCSI
#define UC_UCSI_READ_BUF_REQ
#define UC_UCSI_WRITE_BUF_REQ
#define UC_UCSI_USBC_NOTIFY_IND

struct ucsi_read_buf_req_msg {};

struct ucsi_read_buf_resp_msg {};

struct ucsi_write_buf_req_msg {};

struct ucsi_write_buf_resp_msg {};

struct ucsi_notify_ind_msg {};

struct pmic_glink_ucsi {};

static int pmic_glink_ucsi_read(struct ucsi *__ucsi, unsigned int offset,
				void *val, size_t val_len)
{}

static int pmic_glink_ucsi_read_version(struct ucsi *ucsi, u16 *version)
{}

static int pmic_glink_ucsi_read_cci(struct ucsi *ucsi, u32 *cci)
{}

static int pmic_glink_ucsi_read_message_in(struct ucsi *ucsi, void *val, size_t val_len)
{}

static int pmic_glink_ucsi_locked_write(struct pmic_glink_ucsi *ucsi, unsigned int offset,
					const void *val, size_t val_len)
{}

static int pmic_glink_ucsi_async_control(struct ucsi *__ucsi, u64 command)
{}

static void pmic_glink_ucsi_update_connector(struct ucsi_connector *con)
{}

static void pmic_glink_ucsi_connector_status(struct ucsi_connector *con)
{}

static const struct ucsi_operations pmic_glink_ucsi_ops =;

static void pmic_glink_ucsi_read_ack(struct pmic_glink_ucsi *ucsi, const void *data, int len)
{}

static void pmic_glink_ucsi_write_ack(struct pmic_glink_ucsi *ucsi, const void *data, int len)
{}

static void pmic_glink_ucsi_notify(struct work_struct *work)
{}

static void pmic_glink_ucsi_register(struct work_struct *work)
{}

static void pmic_glink_ucsi_callback(const void *data, size_t len, void *priv)
{}

static void pmic_glink_ucsi_pdr_notify(void *priv, int state)
{}

static void pmic_glink_ucsi_destroy(void *data)
{}

static unsigned long quirk_sc8180x =;
static unsigned long quirk_sc8280xp =;
static unsigned long quirk_sm8450 =;

static const struct of_device_id pmic_glink_ucsi_of_quirks[] =;

static int pmic_glink_ucsi_probe(struct auxiliary_device *adev,
				 const struct auxiliary_device_id *id)
{}

static void pmic_glink_ucsi_remove(struct auxiliary_device *adev)
{}

static const struct auxiliary_device_id pmic_glink_ucsi_id_table[] =;
MODULE_DEVICE_TABLE(auxiliary, pmic_glink_ucsi_id_table);

static struct auxiliary_driver pmic_glink_ucsi_driver =;

module_auxiliary_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();