Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  qat_bl.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/* Copyright(c) 2014 - 2022 Intel Corporation */
#ifndef QAT_BL_H
#define QAT_BL_H
#include <linux/crypto.h>
#include <linux/scatterlist.h>
#include <linux/types.h>

#define QAT_MAX_BUFF_DESC 4

struct qat_alg_buf {
 u32 len;
 u32 resrvd;
 u64 addr;
} __packed;

struct qat_alg_buf_list {
 /* New members must be added within the __struct_group() macro below. */
 __struct_group(qat_alg_buf_list_hdr, hdr, __packed,
  u64 resrvd;
  u32 num_bufs;
  u32 num_mapped_bufs;
 );
 struct qat_alg_buf buffers[];
} __packed;
static_assert(offsetof(struct qat_alg_buf_list, buffers) == sizeof(struct qat_alg_buf_list_hdr),
       "struct member likely outside of __struct_group()");

struct qat_alg_fixed_buf_list {
 struct qat_alg_buf_list_hdr sgl_hdr;
 struct qat_alg_buf descriptors[QAT_MAX_BUFF_DESC];
} __packed __aligned(64);

struct qat_request_buffs {
 struct qat_alg_buf_list *bl;
 dma_addr_t blp;
 struct qat_alg_buf_list *blout;
 dma_addr_t bloutp;
 size_t sz;
 size_t sz_out;
 bool sgl_src_valid;
 bool sgl_dst_valid;
 struct qat_alg_fixed_buf_list sgl_src;
 struct qat_alg_fixed_buf_list sgl_dst;
};

struct qat_sgl_to_bufl_params {
 dma_addr_t extra_dst_buff;
 size_t sz_extra_dst_buff;
 unsigned int sskip;
 unsigned int dskip;
};

void qat_bl_free_bufl(struct adf_accel_dev *accel_dev,
        struct qat_request_buffs *buf);
int qat_bl_sgl_to_bufl(struct adf_accel_dev *accel_dev,
         struct scatterlist *sgl,
         struct scatterlist *sglout,
         struct qat_request_buffs *buf,
         struct qat_sgl_to_bufl_params *params,
         gfp_t flags);

static inline gfp_t qat_algs_alloc_flags(struct crypto_async_request *req)
{
 return req->flags & CRYPTO_TFM_REQ_MAY_SLEEP ? GFP_KERNEL : GFP_ATOMIC;
}

#endif

Messung V0.5
C=98 H=94 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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge