Blame topology/alsatplg.rst

Packit Service a9274b
==========
Packit Service a9274b
 alsatplg
Packit Service a9274b
==========
Packit Service a9274b
Packit Service a9274b
----------------------
Packit Service a9274b
ALSA Topology Compiler
Packit Service a9274b
----------------------
Packit Service a9274b
Packit Service a9274b
:Author: Jaroslav Kysela <perex@perex.cz>
Packit Service a9274b
:Date:   2018-10-09
Packit Service a9274b
:Copyright: GPLv2+
Packit Service a9274b
:Manual section: 1
Packit Service a9274b
:Manual group: General Commands Manual
Packit Service a9274b
Packit Service a9274b
SYNOPSIS
Packit Service a9274b
========
Packit Service a9274b
Packit Service a9274b
*alsatplg* <options> [command]
Packit Service a9274b
Packit Service a9274b
DESCRIPTION
Packit Service a9274b
===========
Packit Service a9274b
Packit Service a9274b
alsatplg (ALSA Topology compiler) is a program to compile topology
Packit Service a9274b
configuration file to the binary file for the kernel drivers.
Packit Service a9274b
Packit Service a9274b
Current audio drivers typically hard code topology information
Packit Service a9274b
in the driver sources: This tightly couples the audio driver
Packit Service a9274b
to the development board making it time consuming to modify
Packit Service a9274b
a driver to work on a different devices. The driver is also
Packit Service a9274b
tightly coupled to the DSP firmware version meaning extra care
Packit Service a9274b
is needed to keep the driver and firmware version in sync.
Packit Service a9274b
New firmware features also mean driver updates.
Packit Service a9274b
Packit Service a9274b
The ALSA topology project removes the need for re-writing or
Packit Service a9274b
porting audio drivers to different devices or different firmwares:
Packit Service a9274b
Drivers have no hard coded topology data meaning a single driver
Packit Service a9274b
can be used on different devices by updating the topology data
Packit Service a9274b
from the file system. Firmware updates can be pushed without
Packit Service a9274b
having to update the drivers. The new firmware just needs
Packit Service a9274b
to include an updated topology file describing the update.
Packit Service a9274b
Packit Service a9274b
OPTIONS
Packit Service a9274b
=======
Packit Service a9274b
Packit Service a9274b
Available options:
Packit Service a9274b
Packit Service a9274b
  **-h**, **--help**
Packit Service a9274b
    this help
Packit Service a9274b
Packit Service a9274b
  **-V**, **--version**
Packit Service a9274b
    show the utility version and versions of used libraries
Packit Service a9274b
Packit Service a9274b
  **-c**, **--compile** `FILE`
Packit Service a9274b
    source configuration file for the compilation
Packit Service a9274b
Packit Service a9274b
  **-d**, **--decode** `FILE`
Packit Service a9274b
    source binary topology file for the decode
Packit Service a9274b
Packit Service a9274b
  **-n**, **--normalize** `FILE`
Packit Service a9274b
    parse and save the configuration file in the normalized format
Packit Service a9274b
Packit Service a9274b
  **-u**, **--dump** `FILE`
Packit Service a9274b
    parse and save the configuration file in the specified format
Packit Service a9274b
Packit Service a9274b
  **-o**, **--output** `FILE`
Packit Service a9274b
    output file
Packit Service a9274b
Packit Service a9274b
  **-v**, **--verbose** `LEVEL`
Packit Service a9274b
    set verbose level
Packit Service a9274b
Packit Service a9274b
  **-s**, **--sort**
Packit Service a9274b
    sort the configuration identifiers (set for normalization)
Packit Service a9274b
Packit Service a9274b
  **-x**, **--nocheck**
Packit Service a9274b
    save the configuration without additional integrity check
Packit Service a9274b
Packit Service a9274b
  **-z**, **--dapm-nosort**
Packit Service a9274b
    do not sort DAPM graph items (like in version 1.2.1-)
Packit Service a9274b
Packit Service a9274b
Packit Service a9274b
FILES
Packit Service a9274b
=====
Packit Service a9274b
Packit Service a9274b
The master topology files for each supported sound card are in
Packit Service a9274b
``/usr/share/alsa/topology``.
Packit Service a9274b
Packit Service a9274b
For example, the master use case file for the `broadwell` card is in
Packit Service a9274b
``/usr/share/alsa/topology/broadwell/broadwell.conf``, this file
Packit Service a9274b
describes the audio hardware for the driver.
Packit Service a9274b
Packit Service a9274b
For more details on the syntax of UCM files, see the alsa-lib source code:
Packit Service a9274b
http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/topology/parser.c
Packit Service a9274b
Packit Service a9274b
SEE ALSO
Packit Service a9274b
========
Packit Service a9274b
Packit Service a9274b
* Topology Interface: http://www.alsa-project.org/alsa-doc/alsa-lib/group__topology.html
Packit Service a9274b
Packit Service a9274b
BUGS
Packit Service a9274b
====
Packit Service a9274b
Packit Service a9274b
None known.