Loading sound/soc/atmel/tse850-pcm5142.c +36 −42 Original line number Diff line number Diff line /* * TSE-850 audio - ASoC driver for the Axentia TSE-850 with a PCM5142 codec * * Copyright (C) 2016 Axentia Technologies AB * * Author: Peter Rosin <peda@axentia.se> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ /* * loop1 relays * IN1 +---o +------------+ o---+ OUT1 * \ / * + + * | / | * +--o +--. | * | add | | * | V | * | .---. | * DAC +----------->|Sum|---+ * | '---' | * | | * + + * * IN2 +---o--+------------+--o---+ OUT2 * loop2 relays * * The 'loop1' gpio pin controlls two relays, which are either in loop * position, meaning that input and output are directly connected, or * they are in mixer position, meaning that the signal is passed through * the 'Sum' mixer. Similarly for 'loop2'. * * In the above, the 'loop1' relays are inactive, thus feeding IN1 to the * mixer (if 'add' is active) and feeding the mixer output to OUT1. The * 'loop2' relays are active, short-cutting the TSE-850 from channel 2. * IN1, IN2, OUT1 and OUT2 are TSE-850 connectors and DAC is the PCB name * of the (filtered) output from the PCM5142 codec. */ // SPDX-License-Identifier: GPL-2.0 // // TSE-850 audio - ASoC driver for the Axentia TSE-850 with a PCM5142 codec // // Copyright (C) 2016 Axentia Technologies AB // // Author: Peter Rosin <peda@axentia.se> // // loop1 relays // IN1 +---o +------------+ o---+ OUT1 // \ / // + + // | / | // +--o +--. | // | add | | // | V | // | .---. | // DAC +----------->|Sum|---+ // | '---' | // | | // + + // // IN2 +---o--+------------+--o---+ OUT2 // loop2 relays // // The 'loop1' gpio pin controlls two relays, which are either in loop // position, meaning that input and output are directly connected, or // they are in mixer position, meaning that the signal is passed through // the 'Sum' mixer. Similarly for 'loop2'. // // In the above, the 'loop1' relays are inactive, thus feeding IN1 to the // mixer (if 'add' is active) and feeding the mixer output to OUT1. The // 'loop2' relays are active, short-cutting the TSE-850 from channel 2. // IN1, IN2, OUT1 and OUT2 are TSE-850 connectors and DAC is the PCB name // of the (filtered) output from the PCM5142 codec. #include <linux/clk.h> #include <linux/gpio.h> Loading Loading @@ -452,4 +446,4 @@ module_platform_driver(tse850_driver); /* Module information */ MODULE_AUTHOR("Peter Rosin <peda@axentia.se>"); MODULE_DESCRIPTION("ALSA SoC driver for TSE-850 with PCM5142 codec"); MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL v2"); Loading
sound/soc/atmel/tse850-pcm5142.c +36 −42 Original line number Diff line number Diff line /* * TSE-850 audio - ASoC driver for the Axentia TSE-850 with a PCM5142 codec * * Copyright (C) 2016 Axentia Technologies AB * * Author: Peter Rosin <peda@axentia.se> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ /* * loop1 relays * IN1 +---o +------------+ o---+ OUT1 * \ / * + + * | / | * +--o +--. | * | add | | * | V | * | .---. | * DAC +----------->|Sum|---+ * | '---' | * | | * + + * * IN2 +---o--+------------+--o---+ OUT2 * loop2 relays * * The 'loop1' gpio pin controlls two relays, which are either in loop * position, meaning that input and output are directly connected, or * they are in mixer position, meaning that the signal is passed through * the 'Sum' mixer. Similarly for 'loop2'. * * In the above, the 'loop1' relays are inactive, thus feeding IN1 to the * mixer (if 'add' is active) and feeding the mixer output to OUT1. The * 'loop2' relays are active, short-cutting the TSE-850 from channel 2. * IN1, IN2, OUT1 and OUT2 are TSE-850 connectors and DAC is the PCB name * of the (filtered) output from the PCM5142 codec. */ // SPDX-License-Identifier: GPL-2.0 // // TSE-850 audio - ASoC driver for the Axentia TSE-850 with a PCM5142 codec // // Copyright (C) 2016 Axentia Technologies AB // // Author: Peter Rosin <peda@axentia.se> // // loop1 relays // IN1 +---o +------------+ o---+ OUT1 // \ / // + + // | / | // +--o +--. | // | add | | // | V | // | .---. | // DAC +----------->|Sum|---+ // | '---' | // | | // + + // // IN2 +---o--+------------+--o---+ OUT2 // loop2 relays // // The 'loop1' gpio pin controlls two relays, which are either in loop // position, meaning that input and output are directly connected, or // they are in mixer position, meaning that the signal is passed through // the 'Sum' mixer. Similarly for 'loop2'. // // In the above, the 'loop1' relays are inactive, thus feeding IN1 to the // mixer (if 'add' is active) and feeding the mixer output to OUT1. The // 'loop2' relays are active, short-cutting the TSE-850 from channel 2. // IN1, IN2, OUT1 and OUT2 are TSE-850 connectors and DAC is the PCB name // of the (filtered) output from the PCM5142 codec. #include <linux/clk.h> #include <linux/gpio.h> Loading Loading @@ -452,4 +446,4 @@ module_platform_driver(tse850_driver); /* Module information */ MODULE_AUTHOR("Peter Rosin <peda@axentia.se>"); MODULE_DESCRIPTION("ALSA SoC driver for TSE-850 with PCM5142 codec"); MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL v2");