msm: synx: ipclite: Remove Hyp Assign
Hyp assign is removed from ipclite. S2 mapping for CDSP & LPASS will be assigned from DSP PIL driver going forward. Cleaned up ipclite probe exit on failure. Change-Id: I342da2bb89024c252eebd4411194093ac77401d5 Signed-off-by: Chelliah Vinu R <quic_chelliah@quicinc.com>
This commit is contained in:
@@ -24,7 +24,6 @@
|
|||||||
#include "ipclite_client.h"
|
#include "ipclite_client.h"
|
||||||
#include "ipclite.h"
|
#include "ipclite.h"
|
||||||
|
|
||||||
#define VMID_CDSP 30
|
|
||||||
#define GLOBAL_ATOMICS_ENABLED 1
|
#define GLOBAL_ATOMICS_ENABLED 1
|
||||||
#define GLOBAL_ATOMICS_DISABLED 0
|
#define GLOBAL_ATOMICS_DISABLED 0
|
||||||
#define FIFO_FULL_RESERVE 8
|
#define FIFO_FULL_RESERVE 8
|
||||||
@@ -997,26 +996,6 @@ static void ipcmem_init(struct ipclite_mem *ipcmem)
|
|||||||
IPCLITE_OS_LOG(IPCLITE_DBG, "Ipcmem init completed\n");
|
IPCLITE_OS_LOG(IPCLITE_DBG, "Ipcmem init completed\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*Add VMIDs corresponding to EVA, CDSP and VPU to set IPCMEM access control*/
|
|
||||||
static int set_ipcmem_access_control(struct ipclite_info *ipclite)
|
|
||||||
{
|
|
||||||
int ret = 0;
|
|
||||||
u64 srcVM = BIT(QCOM_SCM_VMID_HLOS);
|
|
||||||
struct qcom_scm_vmperm destVM[2];
|
|
||||||
|
|
||||||
destVM[0].vmid = QCOM_SCM_VMID_HLOS;
|
|
||||||
destVM[0].perm = QCOM_SCM_PERM_RW;
|
|
||||||
|
|
||||||
destVM[1].vmid = VMID_CDSP;
|
|
||||||
destVM[1].perm = QCOM_SCM_PERM_RW;
|
|
||||||
|
|
||||||
ret = qcom_scm_assign_mem(ipclite->ipcmem.mem.aux_base,
|
|
||||||
ipclite->ipcmem.mem.size, &srcVM,
|
|
||||||
destVM, ARRAY_SIZE(destVM));
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int ipclite_channel_irq_init(struct device *parent, struct device_node *node,
|
static int ipclite_channel_irq_init(struct device *parent, struct device_node *node,
|
||||||
struct ipclite_channel *channel)
|
struct ipclite_channel *channel)
|
||||||
{
|
{
|
||||||
@@ -1461,7 +1440,7 @@ static int ipclite_probe(struct platform_device *pdev)
|
|||||||
if (hwlock_id != -EPROBE_DEFER)
|
if (hwlock_id != -EPROBE_DEFER)
|
||||||
dev_err(&pdev->dev, "failed to retrieve hwlock\n");
|
dev_err(&pdev->dev, "failed to retrieve hwlock\n");
|
||||||
ret = hwlock_id;
|
ret = hwlock_id;
|
||||||
goto error;
|
goto release;
|
||||||
}
|
}
|
||||||
IPCLITE_OS_LOG(IPCLITE_DBG, "Hwlock id retrieved, hwlock_id=%d\n", hwlock_id);
|
IPCLITE_OS_LOG(IPCLITE_DBG, "Hwlock id retrieved, hwlock_id=%d\n", hwlock_id);
|
||||||
|
|
||||||
@@ -1469,7 +1448,7 @@ static int ipclite_probe(struct platform_device *pdev)
|
|||||||
if (!ipclite->hwlock) {
|
if (!ipclite->hwlock) {
|
||||||
IPCLITE_OS_LOG(IPCLITE_ERR, "Failed to assign hwlock_id\n");
|
IPCLITE_OS_LOG(IPCLITE_ERR, "Failed to assign hwlock_id\n");
|
||||||
ret = -ENXIO;
|
ret = -ENXIO;
|
||||||
goto error;
|
goto release;
|
||||||
}
|
}
|
||||||
IPCLITE_OS_LOG(IPCLITE_DBG, "Hwlock id assigned successfully, hwlock=%p\n",
|
IPCLITE_OS_LOG(IPCLITE_DBG, "Hwlock id assigned successfully, hwlock=%p\n",
|
||||||
ipclite->hwlock);
|
ipclite->hwlock);
|
||||||
@@ -1485,12 +1464,6 @@ static int ipclite_probe(struct platform_device *pdev)
|
|||||||
mem = &(ipclite->ipcmem.mem);
|
mem = &(ipclite->ipcmem.mem);
|
||||||
memset(mem->virt_base, 0, mem->size);
|
memset(mem->virt_base, 0, mem->size);
|
||||||
|
|
||||||
ret = set_ipcmem_access_control(ipclite);
|
|
||||||
if (ret) {
|
|
||||||
IPCLITE_OS_LOG(IPCLITE_ERR, "failed to set access control policy\n");
|
|
||||||
goto release;
|
|
||||||
}
|
|
||||||
|
|
||||||
ipcmem_init(&ipclite->ipcmem);
|
ipcmem_init(&ipclite->ipcmem);
|
||||||
|
|
||||||
/* Set up sysfs for debug */
|
/* Set up sysfs for debug */
|
||||||
@@ -1558,6 +1531,7 @@ mem_release:
|
|||||||
*/
|
*/
|
||||||
release:
|
release:
|
||||||
kfree(ipclite);
|
kfree(ipclite);
|
||||||
|
ipclite = NULL;
|
||||||
error:
|
error:
|
||||||
IPCLITE_OS_LOG(IPCLITE_ERR, "IPCLite probe failed\n");
|
IPCLITE_OS_LOG(IPCLITE_ERR, "IPCLite probe failed\n");
|
||||||
return ret;
|
return ret;
|
||||||
|
Reference in New Issue
Block a user