Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/i3c/master/mipi-i3c-hci/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  cmd.h   Sprache: C

 
/* SPDX-License-Identifier: BSD-3-Clause */
/*
 * Copyright (c) 2020, MIPI Alliance, Inc.
 *
 * Author: Nicolas Pitre <npitre@baylibre.com>
 *
 * Common command/response related stuff
 */


#ifndef CMD_H
#define CMD_H

/*
 * Those bits are common to all descriptor formats and
 * may be manipulated by the core code.
 */

#define CMD_0_TOC   W0_BIT_(31)
#define CMD_0_ROC   W0_BIT_(30)
#define CMD_0_ATTR   W0_MASK(2, 0)

/*
 * Response Descriptor Structure
 */

#define RESP_STATUS(resp)  FIELD_GET(GENMASK(31, 28), resp)
#define RESP_TID(resp)   FIELD_GET(GENMASK(27, 24), resp)
#define RESP_DATA_LENGTH(resp)  FIELD_GET(GENMASK(21,  0), resp)

#define RESP_ERR_FIELD   GENMASK(31, 28)

enum hci_resp_err {
 RESP_SUCCESS   = 0x0,
 RESP_ERR_CRC   = 0x1,
 RESP_ERR_PARITY   = 0x2,
 RESP_ERR_FRAME   = 0x3,
 RESP_ERR_ADDR_HEADER  = 0x4,
 RESP_ERR_BCAST_NACK_7E  = 0x4,
 RESP_ERR_NACK   = 0x5,
 RESP_ERR_OVL   = 0x6,
 RESP_ERR_I3C_SHORT_READ  = 0x7,
 RESP_ERR_HC_TERMINATED  = 0x8,
 RESP_ERR_I2C_WR_DATA_NACK = 0x9,
 RESP_ERR_BUS_XFER_ABORTED = 0x9,
 RESP_ERR_NOT_SUPPORTED  = 0xa,
 RESP_ERR_ABORTED_WITH_CRC = 0xb,
 /* 0xc to 0xf are reserved for transfer specific errors */
};

/* TID generation (4 bits wide in all cases) */
#define hci_get_tid(bits) \
 (atomic_inc_return_relaxed(&hci->next_cmd_tid) % (1U << 4))

/* This abstracts operations with our command descriptor formats */
struct hci_cmd_ops {
 int (*prep_ccc)(struct i3c_hci *hci, struct hci_xfer *xfer,
   u8 ccc_addr, u8 ccc_cmd, bool raw);
 void (*prep_i3c_xfer)(struct i3c_hci *hci, struct i3c_dev_desc *dev,
         struct hci_xfer *xfer);
 void (*prep_i2c_xfer)(struct i3c_hci *hci, struct i2c_dev_desc *dev,
         struct hci_xfer *xfer);
 int (*perform_daa)(struct i3c_hci *hci);
};

/* Our various instances */
extern const struct hci_cmd_ops mipi_i3c_hci_cmd_v1;
extern const struct hci_cmd_ops mipi_i3c_hci_cmd_v2;

#endif

Messung V0.5
C=97 H=92 G=94

¤ Dauer der Verarbeitung: 0.17 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.