From 71558a41b0b60016f393dfcaa423ce2743d6822f Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Tue, 9 Oct 2018 10:53:08 +0200 Subject: [PATCH] alsatplg: add man file Signed-off-by: Jaroslav Kysela --- alsaucm/Makefile.am | 2 +- topology/Makefile.am | 10 ++++++ topology/alsatplg.rst | 81 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 topology/alsatplg.rst diff --git a/alsaucm/Makefile.am b/alsaucm/Makefile.am index 651f678..29d7466 100644 --- a/alsaucm/Makefile.am +++ b/alsaucm/Makefile.am @@ -28,4 +28,4 @@ edit = \ EXTRA_DIST = alsaucm.rst 89-alsa-ucm.rules.in -CLEANFILES = 89-alsa-ucm.rules +CLEANFILES = alsaucm.1 89-alsa-ucm.rules diff --git a/topology/Makefile.am b/topology/Makefile.am index c370b14..de190ab 100644 --- a/topology/Makefile.am +++ b/topology/Makefile.am @@ -1,6 +1,13 @@ bin_PROGRAMS = \ alsatplg +if USE_RST2MAN +man_MANS = alsatplg.1 +endif + +%.1: %.rst + rst2man $< > $@ + alsatplg_SOURCES = topology.c AM_CPPFLAGS = \ @@ -8,3 +15,6 @@ AM_CPPFLAGS = \ alsatplg_LDADD = -lasound +EXTRA_DIST = alsatplg.rst + +CLEANFILES = alsatplg.1 \ No newline at end of file diff --git a/topology/alsatplg.rst b/topology/alsatplg.rst new file mode 100644 index 0000000..855edff --- /dev/null +++ b/topology/alsatplg.rst @@ -0,0 +1,81 @@ +========== + alsatplg +========== + +---------------------- +ALSA Topology Compiler +---------------------- + +:Author: Jaroslav Kysela +:Date: 2018-10-09 +:Copyright: GPLv2+ +:Manual section: 1 +:Manual group: General Commands Manual + +SYNOPSIS +======== + +*alsatplg* [command] + +DESCRIPTION +=========== + +alsatplg (ALSA Topology compiler) is a program to compile topology +configuration file to the binary file for the kernel drivers. + +Current audio drivers typically hard code topology information +in the driver sources: This tightly couples the audio driver +to the development board making it time consuming to modify +a driver to work on a different devices. The driver is also +tightly coupled to the DSP firmware version meaning extra care +is needed to keep the driver and firmware version in sync. +New firmware features also mean driver updates. + +The ALSA topology project removes the need for re-writing or +porting audio drivers to different devices or different firmwares: +Drivers have no hard coded topology data meaning a single driver +can be used on different devices by updating the topology data +from the file system. Firmware updates can be pushed without +having to update the drivers. The new firmware just needs +to include an updated topology file describing the update. + +OPTIONS +======= + +Available options: + + **-h**, **--help** + this help + + **-c**, **--compile** `FILE` + source configuration file for the compilation + + **-o**, **--output** `FILE` + output binary file + + **-v**, **--verbose** `LEVEL` + set verbose level + + +FILES +===== + +The master topology files for each supported sound card are in +``/usr/share/alsa/topology``. + +For example, the master use case file for the `broadwell` card is in +``/usr/share/alsa/topology/broadwell/broadwell.conf``, this file +describes the audio hardware for the driver. + +For more details on the syntax of UCM files, see the alsa-lib source code: +http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/topology/parser.c + +SEE ALSO +======== + +* Topology Interface: http://www.alsa-project.org/alsa-doc/alsa-lib/group__topology.html + +BUGS +==== + +None known.