linux/drivers/thunderbolt/usb4_port.c

// SPDX-License-Identifier: GPL-2.0
/*
 * USB4 port device
 *
 * Copyright (C) 2021, Intel Corporation
 * Author: Mika Westerberg <[email protected]>
 */

#include <linux/pm_runtime.h>
#include <linux/component.h>
#include <linux/property.h>

#include "tb.h"

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

static void connector_unbind(struct device *dev, struct device *connector, void *data)
{}

static const struct component_ops connector_ops =;

static ssize_t link_show(struct device *dev, struct device_attribute *attr,
			 char *buf)
{}
static DEVICE_ATTR_RO(link);

static struct attribute *common_attrs[] =;

static const struct attribute_group common_group =;

static int usb4_port_offline(struct usb4_port *usb4)
{}

static void usb4_port_online(struct usb4_port *usb4)
{}

static ssize_t offline_show(struct device *dev,
	struct device_attribute *attr, char *buf)
{}

static ssize_t offline_store(struct device *dev,
	struct device_attribute *attr, const char *buf, size_t count)
{}
static DEVICE_ATTR_RW(offline);

static ssize_t rescan_store(struct device *dev,
	struct device_attribute *attr, const char *buf, size_t count)
{}
static DEVICE_ATTR_WO(rescan);

static struct attribute *service_attrs[] =;

static umode_t service_attr_is_visible(struct kobject *kobj,
				       struct attribute *attr, int n)
{}

static const struct attribute_group service_group =;

static const struct attribute_group *usb4_port_device_groups[] =;

static void usb4_port_device_release(struct device *dev)
{}

const struct device_type usb4_port_device_type =;

/**
 * usb4_port_device_add() - Add USB4 port device
 * @port: Lane 0 adapter port to add the USB4 port
 *
 * Creates and registers a USB4 port device for @port. Returns the new
 * USB4 port device pointer or ERR_PTR() in case of error.
 */
struct usb4_port *usb4_port_device_add(struct tb_port *port)
{}

/**
 * usb4_port_device_remove() - Removes USB4 port device
 * @usb4: USB4 port device
 *
 * Unregisters the USB4 port device from the system. The device will be
 * released when the last reference is dropped.
 */
void usb4_port_device_remove(struct usb4_port *usb4)
{}

/**
 * usb4_port_device_resume() - Resumes USB4 port device
 * @usb4: USB4 port device
 *
 * Used to resume USB4 port device after sleep state.
 */
int usb4_port_device_resume(struct usb4_port *usb4)
{}