Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/media/platform/st/sti/delta/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  delta-ipc.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Copyright (C) STMicroelectronics SA 2015
 * Author: Hugues Fruchet <hugues.fruchet@st.com> for STMicroelectronics.
 */


#ifndef DELTA_IPC_H
#define DELTA_IPC_H

int delta_ipc_init(struct delta_dev *delta);
void delta_ipc_exit(struct delta_dev *delta);

/*
 * delta_ipc_open - open a decoding instance on firmware side
 * @ctx: (in) delta context
 * @name: (in) name of decoder to be used
 * @param: (in) open command parameters specific to decoder
 *  @param.size: (in) size of parameter
 *  @param.data: (in) virtual address of parameter
 * @ipc_buf_size: (in) size of IPC shared buffer between host
 *      and copro used to share command data.
 *      Client have to set here the size of the biggest
 *      command parameters (+ status if any).
 *      Allocation will be done in this function which
 *      will give back to client in @ipc_buf the virtual
 *      & physical addresses & size of shared IPC buffer.
 *      All the further command data (parameters + status)
 *      have to be written in this shared IPC buffer
 *      virtual memory. This is done to avoid
 *      unnecessary copies of command data.
 * @ipc_buf: (out) allocated IPC shared buffer
 *  @ipc_buf.size: (out) allocated size
 *  @ipc_buf.vaddr: (out) virtual address where to copy
 *       further command data
 * @hdl: (out) handle of decoding instance.
 */


int delta_ipc_open(struct delta_ctx *ctx, const char *name,
     struct delta_ipc_param *param, u32 ipc_buf_size,
     struct delta_buf **ipc_buf, void **hdl);

/*
 * delta_ipc_set_stream - set information about stream to decoder
 * @hdl: (in) handle of decoding instance.
 * @param: (in) set stream command parameters specific to decoder
 *  @param.size: (in) size of parameter
 *  @param.data: (in) virtual address of parameter. Must be
 *      within IPC shared buffer range
 */

int delta_ipc_set_stream(void *hdl, struct delta_ipc_param *param);

/*
 * delta_ipc_decode - frame decoding synchronous request, returns only
 *       after decoding completion on firmware side.
 * @hdl: (in) handle of decoding instance.
 * @param: (in) decode command parameters specific to decoder
 *  @param.size: (in) size of parameter
 *  @param.data: (in) virtual address of parameter. Must be
 *      within IPC shared buffer range
 * @status: (in/out) decode command status specific to decoder
 *  @status.size: (in) size of status
 *  @status.data: (in/out) virtual address of status. Must be
 *  within IPC shared buffer range.
 *  Status is filled by decoding instance
 *  after decoding completion.
 */

int delta_ipc_decode(void *hdl, struct delta_ipc_param *param,
       struct delta_ipc_param *status);

/*
 * delta_ipc_close - close decoding instance
 * @hdl: (in) handle of decoding instance to close.
 */

void delta_ipc_close(void *hdl);

#endif /* DELTA_IPC_H */

Messung V0.5
C=92 H=100 G=95

¤ Dauer der Verarbeitung: 0.0 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.