diff options
author | Varun Wadekar <vwadekar@nvidia.com> | 2010-10-15 22:42:14 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:36:49 -0800 |
commit | dc5d224993e210b6821abc0a380ae0ad2046391d (patch) | |
tree | ee0f77cc9916a94d05d0681685728a4ab5538c0a /arch/arm/mach-tegra/include/mach/arb_sema.h | |
parent | 3205d6ae5e92224e6d64e53fc1de5a22d143aea2 (diff) |
ARM: tegra: hardware arbitration semaphore support
add apis to use the hardware arbitration semaphores in order
to share hardware modules between kernel drivers and AVP
firmware (e.g., the BSEA (audio bitstream) engine and
AES block)
Change-Id: I500ef0797223bc702151ad14e0e2156f50644a2a
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/include/mach/arb_sema.h')
-rw-r--r-- | arch/arm/mach-tegra/include/mach/arb_sema.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/include/mach/arb_sema.h b/arch/arm/mach-tegra/include/mach/arb_sema.h new file mode 100644 index 000000000000..374c5a913700 --- /dev/null +++ b/arch/arm/mach-tegra/include/mach/arb_sema.h @@ -0,0 +1,34 @@ +/* + * arch/arm/mach-tegra/include/mach/arb_sema.h + * + * Hardware arbitration semaphore interface + * + * Copyright (c) 2010, NVIDIA Corporation. + * + * 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. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __MACH_TEGRA_ARB_SEMA_H +#define __MACH_TEGRA_ARB_SEMA_H + +enum tegra_arb_module { + TEGRA_ARB_AES = 0, +}; + +int tegra_arb_mutex_lock_timeout(enum tegra_arb_module lock, int msecs); + +int tegra_arb_mutex_unlock(enum tegra_arb_module lock); + +#endif |