msm: remote_spinlock: Support multiplatform
Upstream prefers existing drivers be converted to support multiplatform kernels. This requires drivers to be located in generic functionality directories instead of specific mach directories. Move the remote-spinlock driver to the drivers/hwspinlock location to support multiplatform. Change-Id: Ibbc6046ab177b62a5a79cba7f5752685470c4ebb Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
This commit is contained in:
parent
15d9b130f7
commit
aca2f1a277
|
@ -519,6 +519,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_CLKDIV=y
|
||||
CONFIG_QPNP_USB_DETECT=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_IOMMU_PGTABLES_L2=y
|
||||
CONFIG_IOMMU_LPAE=y
|
||||
|
|
|
@ -520,6 +520,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_CLKDIV=y
|
||||
CONFIG_QPNP_USB_DETECT=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_MSM_IOMMU_PMON=y
|
||||
CONFIG_IOMMU_PGTABLES_L2=y
|
||||
|
|
|
@ -205,6 +205,7 @@ CONFIG_SPS=y
|
|||
CONFIG_SPS_SUPPORT_NDP_BAM=y
|
||||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_CLKDIV=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
CONFIG_EXT2_FS=y
|
||||
|
|
|
@ -206,6 +206,7 @@ CONFIG_SPS=y
|
|||
CONFIG_SPS_SUPPORT_NDP_BAM=y
|
||||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_CLKDIV=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
CONFIG_EXT2_FS=y
|
||||
|
|
|
@ -351,6 +351,7 @@ CONFIG_SPS_SUPPORT_BAMDMA=y
|
|||
CONFIG_SPS_SUPPORT_NDP_BAM=y
|
||||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_CLKDIV=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_IOMMU_PGTABLES_L2=y
|
||||
CONFIG_IOMMU_NON_SECURE=y
|
||||
|
|
|
@ -408,6 +408,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_VIBRATOR=y
|
||||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
|
|
|
@ -412,6 +412,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_VIBRATOR=y
|
||||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
|
|
|
@ -382,6 +382,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_VIBRATOR=y
|
||||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V0=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
|
|
|
@ -380,6 +380,7 @@ CONFIG_SPS_SUPPORT_NDP_BAM=y
|
|||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_VIBRATOR=y
|
||||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V0=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_QPNP=y
|
||||
|
|
|
@ -448,6 +448,7 @@ CONFIG_QPNP_CLKDIV=y
|
|||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_QPNP_COINCELL=y
|
||||
CONFIG_MSM_AVTIMER=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_IOMMU_PGTABLES_L2=y
|
||||
CONFIG_PWM=y
|
||||
|
|
|
@ -459,6 +459,7 @@ CONFIG_QPNP_CLKDIV=y
|
|||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_QPNP_COINCELL=y
|
||||
CONFIG_MSM_AVTIMER=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_MSM_IOMMU_V1=y
|
||||
CONFIG_MSM_IOMMU_PMON=y
|
||||
CONFIG_IOMMU_PGTABLES_L2=y
|
||||
|
|
|
@ -190,6 +190,7 @@ CONFIG_PCI_MSI=y
|
|||
CONFIG_MSM_PCIE=y
|
||||
CONFIG_QPNP_POWER_ON=y
|
||||
CONFIG_QPNP_REVID=y
|
||||
CONFIG_REMOTE_SPINLOCK_MSM=y
|
||||
CONFIG_IPA=y
|
||||
CONFIG_RMNET_IPA=y
|
||||
CONFIG_CORESIGHT=y
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
/* Copyright (c) 2009, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
#ifndef __ASM_REMOTE_SPINLOCK_H
|
||||
#define __ASM_REMOTE_SPINLOCK_H
|
||||
|
||||
#include <mach/remote_spinlock.h>
|
||||
|
||||
#endif /* __ASM_REMOTE_SPINLOCK_H */
|
|
@ -592,6 +592,7 @@ config MSM_SERIAL_DEBUGGER_CONSOLE
|
|||
the debugger serial port as the occur.
|
||||
|
||||
config MSM_SMD
|
||||
depends on REMOTE_SPINLOCK_MSM
|
||||
bool "MSM Shared Memory Driver (SMD)"
|
||||
help
|
||||
Support for the shared memory interface between the apps
|
||||
|
|
|
@ -32,7 +32,7 @@ target += smd_rpc_sym.c
|
|||
$(obj)/smd_rpc_sym.c: $(src)/smd_rpc_sym $(src)/mkrpcsym.pl
|
||||
$(call if_changed,mkrpcsym)
|
||||
|
||||
obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o remote_spinlock.o smd_private.o smem.o smd_init_dt.o smd_init_plat.o smsm_debug.o smem_debug.o
|
||||
obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o smd_private.o smem.o smd_init_dt.o smd_init_plat.o smsm_debug.o smem_debug.o
|
||||
obj-$(CONFIG_MSM_SMP2P) += smp2p.o smp2p_debug.o smp2p_gpio.o
|
||||
obj-$(CONFIG_MSM_SMP2P_TEST) += smp2p_loopback.o smp2p_test.o smp2p_gpio_test.o smp2p_spinlock_test.o
|
||||
obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.o
|
||||
|
|
|
@ -29,4 +29,15 @@ config HSEM_U8500
|
|||
|
||||
If unsure, say N.
|
||||
|
||||
config REMOTE_SPINLOCK_MSM
|
||||
bool "MSM Remote Spinlock Functionality"
|
||||
depends on ARCH_MSM
|
||||
select HWSPINLOCK
|
||||
help
|
||||
Say y here to support the MSM Remote Spinlock functionality, which
|
||||
provides a synchronisation mechanism for the various processor on the
|
||||
SoC.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
endmenu
|
||||
|
|
|
@ -5,3 +5,4 @@
|
|||
obj-$(CONFIG_HWSPINLOCK) += hwspinlock_core.o
|
||||
obj-$(CONFIG_HWSPINLOCK_OMAP) += omap_hwspinlock.o
|
||||
obj-$(CONFIG_HSEM_U8500) += u8500_hsem.o
|
||||
obj-$(CONFIG_REMOTE_SPINLOCK_MSM) += msm_remote_spinlock.o
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
#include <linux/delay.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_address.h>
|
||||
#include <linux/msm_remote_spinlock.h>
|
||||
|
||||
#include <mach/remote_spinlock.h>
|
||||
#include <mach/msm_smem.h>
|
||||
|
||||
|
|
@ -32,7 +32,7 @@ typedef raw_remote_spinlock_t *_remote_spinlock_t;
|
|||
|
||||
#define remote_spinlock_id_t const char *
|
||||
|
||||
#if defined(CONFIG_MSM_SMD)
|
||||
#if defined(CONFIG_REMOTE_SPINLOCK_MSM)
|
||||
int _remote_spin_lock_init(remote_spinlock_id_t, _remote_spinlock_t *lock);
|
||||
void _remote_spin_release_all(uint32_t pid);
|
||||
void _remote_spin_lock(_remote_spinlock_t *lock);
|
||||
|
@ -76,7 +76,7 @@ struct remote_mutex_id {
|
|||
uint32_t delay_us;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_MSM_SMD
|
||||
#ifdef CONFIG_REMOTE_SPINLOCK_MSM
|
||||
int _remote_mutex_init(struct remote_mutex_id *id, _remote_mutex_t *lock);
|
||||
void _remote_mutex_lock(_remote_mutex_t *lock);
|
||||
void _remote_mutex_unlock(_remote_mutex_t *lock);
|
|
@ -16,8 +16,7 @@
|
|||
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/mutex.h>
|
||||
|
||||
#include <asm/remote_spinlock.h>
|
||||
#include <linux/msm_remote_spinlock.h>
|
||||
|
||||
/* Grabbing a local spin lock before going for a remote lock has several
|
||||
* advantages:
|
||||
|
|
Loading…
Reference in New Issue