uboot/include/scmi_agent-uclass.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0+ */
   2/*
   3 * Copyright (C) 2019-2020 Linaro Limited.
   4 */
   5#ifndef _SCMI_AGENT_UCLASS_H
   6#define _SCMI_AGENT_UCLASS_H
   7
   8struct udevice;
   9struct scmi_msg;
  10struct scmi_channel;
  11
  12/**
  13 * struct scmi_transport_ops - The functions that a SCMI transport layer must implement.
  14 */
  15struct scmi_agent_ops {
  16        /*
  17         * of_get_channel - Get SCMI channel from SCMI agent device tree node
  18         *
  19         * @dev:                SCMI protocol device using the transport
  20         * @channel:            Output reference to SCMI channel upon success
  21         * Return 0 upon success and a negative errno on failure
  22         */
  23        int (*of_get_channel)(struct udevice *dev, struct scmi_channel **channel);
  24
  25        /*
  26         * process_msg - Request transport to get the SCMI message processed
  27         *
  28         * @dev:                SCMI protocol device using the transport
  29         * @msg:                SCMI message to be transmitted
  30         */
  31        int (*process_msg)(struct udevice *dev, struct scmi_channel *channel,
  32                           struct scmi_msg *msg);
  33};
  34
  35#endif /* _SCMI_TRANSPORT_UCLASS_H */
  36