linux/drivers/hwmon/pmbus/mp2888.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Hardware monitoring driver for MPS Multi-phase Digital VR Controllers
 *
 * Copyright (C) 2020 Nvidia Technologies Ltd.
 */

#include <linux/err.h>
#include <linux/i2c.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include "pmbus.h"

/* Vendor specific registers. */
#define MP2888_MFR_SYS_CONFIG
#define MP2888_MFR_READ_CS1_2
#define MP2888_MFR_READ_CS3_4
#define MP2888_MFR_READ_CS5_6
#define MP2888_MFR_READ_CS7_8
#define MP2888_MFR_READ_CS9_10
#define MP2888_MFR_VR_CONFIG1

#define MP2888_TOTAL_CURRENT_RESOLUTION
#define MP2888_PHASE_CURRENT_RESOLUTION
#define MP2888_DRMOS_KCS
#define MP2888_TEMP_UNIT
#define MP2888_MAX_PHASE

struct mp2888_data {};

#define to_mp2888_data(x)

static int mp2888_read_byte_data(struct i2c_client *client, int page, int reg)
{}

static int
mp2888_current_sense_gain_and_resolution_get(struct i2c_client *client, struct mp2888_data *data)
{}

static int
mp2888_read_phase(struct i2c_client *client, struct mp2888_data *data, int page, int phase, u8 reg)
{}

static int
mp2888_read_phases(struct i2c_client *client, struct mp2888_data *data, int page, int phase)
{}

static int mp2888_read_word_data(struct i2c_client *client, int page, int phase, int reg)
{}

static int mp2888_write_word_data(struct i2c_client *client, int page, int reg, u16 word)
{}

static int
mp2888_identify_multiphase(struct i2c_client *client, struct mp2888_data *data,
			   struct pmbus_driver_info *info)
{}

static struct pmbus_driver_info mp2888_info =;

static int mp2888_probe(struct i2c_client *client)
{}

static const struct i2c_device_id mp2888_id[] =;

MODULE_DEVICE_TABLE(i2c, mp2888_id);

static const struct of_device_id __maybe_unused mp2888_of_match[] =;
MODULE_DEVICE_TABLE(of, mp2888_of_match);

static struct i2c_driver mp2888_driver =;

module_i2c_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_IMPORT_NS();