mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 16:29:59 +00:00
![Thomas Gleixner](/assets/img/avatar_default.png)
Based on 3 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version [author] [kishon] [vijay] [abraham] [i] [kishon]@[ti] [com] this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version [author] [graeme] [gregory] [gg]@[slimlogic] [co] [uk] [author] [kishon] [vijay] [abraham] [i] [kishon]@[ti] [com] [based] [on] [twl6030]_[usb] [c] [author] [hema] [hk] [hemahk]@[ti] [com] this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 1105 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Richard Fontana <rfontana@redhat.com> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190527070033.202006027@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
48 lines
1.4 KiB
C
48 lines
1.4 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* Driver for the Conexant CX25821 PCIe bridge
|
|
*
|
|
* Copyright (C) 2009 Conexant Systems Inc.
|
|
* Authors <shu.lin@conexant.com>, <hiep.huynh@conexant.com>
|
|
*/
|
|
|
|
#ifndef __CX25821_AUDIO_H__
|
|
#define __CX25821_AUDIO_H__
|
|
|
|
#define USE_RISC_NOOP 1
|
|
#define LINES_PER_BUFFER 15
|
|
#define AUDIO_LINE_SIZE 128
|
|
|
|
/* Number of buffer programs to use at once. */
|
|
#define NUMBER_OF_PROGRAMS 8
|
|
|
|
/*
|
|
* Max size of the RISC program for a buffer. - worst case is 2 writes per line
|
|
* Space is also added for the 4 no-op instructions added on the end.
|
|
*/
|
|
#ifndef USE_RISC_NOOP
|
|
#define MAX_BUFFER_PROGRAM_SIZE \
|
|
(2 * LINES_PER_BUFFER * RISC_WRITE_INSTRUCTION_SIZE + \
|
|
RISC_WRITECR_INSTRUCTION_SIZE * 4)
|
|
#endif
|
|
|
|
/* MAE 12 July 2005 Try to use NOOP RISC instruction instead */
|
|
#ifdef USE_RISC_NOOP
|
|
#define MAX_BUFFER_PROGRAM_SIZE \
|
|
(2 * LINES_PER_BUFFER * RISC_WRITE_INSTRUCTION_SIZE + \
|
|
RISC_NOOP_INSTRUCTION_SIZE * 4)
|
|
#endif
|
|
|
|
/* Sizes of various instructions in bytes. Used when adding instructions. */
|
|
#define RISC_WRITE_INSTRUCTION_SIZE 12
|
|
#define RISC_JUMP_INSTRUCTION_SIZE 12
|
|
#define RISC_SKIP_INSTRUCTION_SIZE 4
|
|
#define RISC_SYNC_INSTRUCTION_SIZE 4
|
|
#define RISC_WRITECR_INSTRUCTION_SIZE 16
|
|
#define RISC_NOOP_INSTRUCTION_SIZE 4
|
|
|
|
#define MAX_AUDIO_DMA_BUFFER_SIZE \
|
|
(MAX_BUFFER_PROGRAM_SIZE * NUMBER_OF_PROGRAMS + \
|
|
RISC_SYNC_INSTRUCTION_SIZE)
|
|
|
|
#endif
|