linux/drivers/i3c/master/mipi-i3c-hci/dat_v1.c

// SPDX-License-Identifier: BSD-3-Clause
/*
 * Copyright (c) 2020, MIPI Alliance, Inc.
 *
 * Author: Nicolas Pitre <[email protected]>
 */

#include <linux/bitfield.h>
#include <linux/bitmap.h>
#include <linux/device.h>
#include <linux/errno.h>
#include <linux/i3c/master.h>
#include <linux/io.h>

#include "hci.h"
#include "dat.h"


/*
 * Device Address Table Structure
 */

#define DAT_1_AUTOCMD_HDR_CODE
#define DAT_1_AUTOCMD_MODE
#define DAT_1_AUTOCMD_VALUE
#define DAT_1_AUTOCMD_MASK
/*	DAT_0_I2C_DEVICE		W0_BIT_(31) */
#define DAT_0_DEV_NACK_RETRY_CNT
#define DAT_0_RING_ID
#define DAT_0_DYNADDR_PARITY
#define DAT_0_DYNAMIC_ADDRESS
#define DAT_0_TS
#define DAT_0_MR_REJECT
/*	DAT_0_SIR_REJECT		W0_BIT_(13) */
/*	DAT_0_IBI_PAYLOAD		W0_BIT_(12) */
#define DAT_0_STATIC_ADDRESS

#define dat_w0_read(i)
#define dat_w1_read(i)
#define dat_w0_write(i, v)
#define dat_w1_write(i, v)

static inline bool dynaddr_parity(unsigned int addr)
{}

static int hci_dat_v1_init(struct i3c_hci *hci)
{}

static void hci_dat_v1_cleanup(struct i3c_hci *hci)
{}

static int hci_dat_v1_alloc_entry(struct i3c_hci *hci)
{}

static void hci_dat_v1_free_entry(struct i3c_hci *hci, unsigned int dat_idx)
{}

static void hci_dat_v1_set_dynamic_addr(struct i3c_hci *hci,
					unsigned int dat_idx, u8 address)
{}

static void hci_dat_v1_set_static_addr(struct i3c_hci *hci,
				       unsigned int dat_idx, u8 address)
{}

static void hci_dat_v1_set_flags(struct i3c_hci *hci, unsigned int dat_idx,
				 u32 w0_flags, u32 w1_flags)
{}

static void hci_dat_v1_clear_flags(struct i3c_hci *hci, unsigned int dat_idx,
				   u32 w0_flags, u32 w1_flags)
{}

static int hci_dat_v1_get_index(struct i3c_hci *hci, u8 dev_addr)
{}

const struct hci_dat_ops mipi_i3c_hci_dat_v1 =;