[PATCH v11 13/27] iommu/exynos: support for device tree

Cho KyongHo pullip.cho at samsung.com
Wed Mar 19 05:06:28 EDT 2014


On Tue, 18 Mar 2014 16:25:11 +0100, Tomasz Figa wrote:
> On 18.03.2014 11:52, Cho KyongHo wrote:
> > On Fri, 14 Mar 2014 14:39:33 +0100, Tomasz Figa wrote:
> >>> @@ -557,11 +558,23 @@ static int exynos_sysmmu_probe(struct platform_device *pdev)
> >>>    	return 0;
> >>>    }
> >>>
> >>> -static struct platform_driver exynos_sysmmu_driver = {
> >>> -	.probe		= exynos_sysmmu_probe,
> >>> -	.driver		= {
> >>> +#ifdef CONFIG_OF
> >>> +static struct of_device_id sysmmu_of_match[] __initconst = {
> >>> +	{ .compatible	= "samsung,sysmmu-v1", },
> >>> +	{ .compatible	= "samsung,sysmmu-v2", },
> >>> +	{ .compatible	= "samsung,sysmmu-v3.1", },
> >>> +	{ .compatible	= "samsung,sysmmu-v3.2", },
> >>> +	{ .compatible	= "samsung,sysmmu-v3.3", },
> >>
> >> Do you need all these compatible strings? I mean, are there any
> >> implementation differences that can't be identified by reading IP
> >> registers, such as REG_MMU_VERSION?
> >>
> >
> > Unfortunately, there is a SoC which overrides REG_MMU_VERSION with
> > a value for RTL designers and it is not related to System MMU
> > versions.
> 
> OK.
> 
> What about having a generic compatible string for Samsung SysMMU then, 
> but an additional property that can override the version to account for 
> such brokenness? If not provided, the version would be read from 
> REG_MMU_VERSION.
> 

Yes it is one of possible idea.
Let me think what better way is.

Thank you.

KyongHo



More information about the linux-arm-kernel mailing list