linux/drivers/peci/device.c

// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2018-2021 Intel Corporation

#include <linux/bitfield.h>
#include <linux/peci.h>
#include <linux/peci-cpu.h>
#include <linux/slab.h>

#include "internal.h"

/*
 * PECI device can be removed using sysfs, but the removal can also happen as
 * a result of controller being removed.
 * Mutex is used to protect PECI device from being double-deleted.
 */
static DEFINE_MUTEX(peci_device_del_lock);

#define REVISION_NUM_MASK
static int peci_get_revision(struct peci_device *device, u8 *revision)
{}

static int peci_get_cpu_id(struct peci_device *device, u32 *cpu_id)
{}

static unsigned int peci_x86_cpu_family(unsigned int sig)
{}

static unsigned int peci_x86_cpu_model(unsigned int sig)
{}

static int peci_device_info_init(struct peci_device *device)
{}

static int peci_detect(struct peci_controller *controller, u8 addr)
{}

static bool peci_addr_valid(u8 addr)
{}

static int peci_dev_exists(struct device *dev, void *data)
{}

int peci_device_create(struct peci_controller *controller, u8 addr)
{}

void peci_device_destroy(struct peci_device *device)
{}

int __peci_driver_register(struct peci_driver *driver, struct module *owner,
			   const char *mod_name)
{}
EXPORT_SYMBOL_NS_GPL();

void peci_driver_unregister(struct peci_driver *driver)
{}
EXPORT_SYMBOL_NS_GPL();

static void peci_device_release(struct device *dev)
{}

const struct device_type peci_device_type =;