forked from Minki/linux
iommu/mediatek: Clean up struct mtk_smi_iommu
Remove the "struct mtk_smi_iommu" to simplify the code since it has only one item in it right now. Signed-off-by: Yong Wu <yong.wu@mediatek.com> Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
ec2da07ca1
commit
1ee9feb2c9
@ -278,7 +278,7 @@ static void mtk_iommu_config(struct mtk_iommu_data *data,
|
||||
for (i = 0; i < fwspec->num_ids; ++i) {
|
||||
larbid = MTK_M4U_TO_LARB(fwspec->ids[i]);
|
||||
portid = MTK_M4U_TO_PORT(fwspec->ids[i]);
|
||||
larb_mmu = &data->smi_imu.larb_imu[larbid];
|
||||
larb_mmu = &data->larb_imu[larbid];
|
||||
|
||||
dev_dbg(dev, "%s iommu port: %d\n",
|
||||
enable ? "enable" : "disable", portid);
|
||||
@ -680,7 +680,7 @@ static int mtk_iommu_probe(struct platform_device *pdev)
|
||||
of_node_put(larbnode);
|
||||
return -EPROBE_DEFER;
|
||||
}
|
||||
data->smi_imu.larb_imu[id].dev = &plarbdev->dev;
|
||||
data->larb_imu[id].dev = &plarbdev->dev;
|
||||
|
||||
component_match_add_release(dev, &match, release_of,
|
||||
compare_of, larbnode);
|
||||
|
@ -56,7 +56,6 @@ struct mtk_iommu_data {
|
||||
struct mtk_iommu_suspend_reg reg;
|
||||
struct mtk_iommu_domain *m4u_dom;
|
||||
struct iommu_group *m4u_group;
|
||||
struct mtk_smi_iommu smi_imu; /* SMI larb iommu info */
|
||||
bool enable_4GB;
|
||||
bool tlb_flush_active;
|
||||
|
||||
@ -64,6 +63,7 @@ struct mtk_iommu_data {
|
||||
const struct mtk_iommu_plat_data *plat_data;
|
||||
|
||||
struct list_head list;
|
||||
struct mtk_smi_larb_iommu larb_imu[MTK_LARB_NR_MAX];
|
||||
};
|
||||
|
||||
static inline int compare_of(struct device *dev, void *data)
|
||||
@ -80,14 +80,14 @@ static inline int mtk_iommu_bind(struct device *dev)
|
||||
{
|
||||
struct mtk_iommu_data *data = dev_get_drvdata(dev);
|
||||
|
||||
return component_bind_all(dev, &data->smi_imu);
|
||||
return component_bind_all(dev, &data->larb_imu);
|
||||
}
|
||||
|
||||
static inline void mtk_iommu_unbind(struct device *dev)
|
||||
{
|
||||
struct mtk_iommu_data *data = dev_get_drvdata(dev);
|
||||
|
||||
component_unbind_all(dev, &data->smi_imu);
|
||||
component_unbind_all(dev, &data->larb_imu);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -206,7 +206,7 @@ static void mtk_iommu_config(struct mtk_iommu_data *data,
|
||||
for (i = 0; i < fwspec->num_ids; ++i) {
|
||||
larbid = mt2701_m4u_to_larb(fwspec->ids[i]);
|
||||
portid = mt2701_m4u_to_port(fwspec->ids[i]);
|
||||
larb_mmu = &data->smi_imu.larb_imu[larbid];
|
||||
larb_mmu = &data->larb_imu[larbid];
|
||||
|
||||
dev_dbg(dev, "%s iommu port: %d\n",
|
||||
enable ? "enable" : "disable", portid);
|
||||
@ -610,7 +610,7 @@ static int mtk_iommu_probe(struct platform_device *pdev)
|
||||
}
|
||||
}
|
||||
|
||||
data->smi_imu.larb_imu[larb_nr].dev = &plarbdev->dev;
|
||||
data->larb_imu[larb_nr].dev = &plarbdev->dev;
|
||||
component_match_add_release(dev, &match, release_of,
|
||||
compare_of, larb_spec.np);
|
||||
larb_nr++;
|
||||
|
@ -143,13 +143,13 @@ static int
|
||||
mtk_smi_larb_bind(struct device *dev, struct device *master, void *data)
|
||||
{
|
||||
struct mtk_smi_larb *larb = dev_get_drvdata(dev);
|
||||
struct mtk_smi_iommu *smi_iommu = data;
|
||||
struct mtk_smi_larb_iommu *larb_mmu = data;
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < MTK_LARB_NR_MAX; i++) {
|
||||
if (dev == smi_iommu->larb_imu[i].dev) {
|
||||
if (dev == larb_mmu[i].dev) {
|
||||
larb->larbid = i;
|
||||
larb->mmu = &smi_iommu->larb_imu[i].mmu;
|
||||
larb->mmu = &larb_mmu[i].mmu;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -20,10 +20,6 @@ struct mtk_smi_larb_iommu {
|
||||
unsigned int mmu;
|
||||
};
|
||||
|
||||
struct mtk_smi_iommu {
|
||||
struct mtk_smi_larb_iommu larb_imu[MTK_LARB_NR_MAX];
|
||||
};
|
||||
|
||||
/*
|
||||
* mtk_smi_larb_get: Enable the power domain and clocks for this local arbiter.
|
||||
* It also initialize some basic setting(like iommu).
|
||||
|
Loading…
Reference in New Issue
Block a user