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


Quelle  qcom_bam_dma.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
 */


#ifndef _QCOM_BAM_DMA_H
#define _QCOM_BAM_DMA_H

#include <asm/byteorder.h>

/*
 * This data type corresponds to the native Command Element
 * supported by BAM DMA Engine.
 *
 * @cmd_and_addr - upper 8 bits command and lower 24 bits register address.
 * @data - for write command: content to be written into peripheral register.
 *    for read command: dest addr to write peripheral register value.
 * @mask - register mask.
 * @reserved - for future usage.
 *
 */

struct bam_cmd_element {
 __le32 cmd_and_addr;
 __le32 data;
 __le32 mask;
 __le32 reserved;
};

/*
 * This enum indicates the command type in a command element
 */

enum bam_command_type {
 BAM_WRITE_COMMAND = 0,
 BAM_READ_COMMAND,
};

/*
 * prep_bam_ce_le32 - Wrapper function to prepare a single BAM command
 * element with the data already in le32 format.
 *
 * @bam_ce: bam command element
 * @addr: target address
 * @cmd: BAM command
 * @data: actual data for write and dest addr for read in le32
 */

static inline void
bam_prep_ce_le32(struct bam_cmd_element *bam_ce, u32 addr,
   enum bam_command_type cmd, __le32 data)
{
 bam_ce->cmd_and_addr =
  cpu_to_le32((addr & 0xffffff) | ((cmd & 0xff) << 24));
 bam_ce->data = data;
 bam_ce->mask = cpu_to_le32(0xffffffff);
}

/*
 * bam_prep_ce - Wrapper function to prepare a single BAM command element
 * with the data.
 *
 * @bam_ce: BAM command element
 * @addr: target address
 * @cmd: BAM command
 * @data: actual data for write and dest addr for read
 */

static inline void
bam_prep_ce(struct bam_cmd_element *bam_ce, u32 addr,
     enum bam_command_type cmd, u32 data)
{
 bam_prep_ce_le32(bam_ce, addr, cmd, cpu_to_le32(data));
}
#endif

Messung V0.5
C=91 H=97 G=93

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