Re: [PATCH v3] bus: imx-weim: support CS GPR config for imx6q-weim
From: Alexander Shiyan <hidden>
Date: 2014-02-16 11:08:01
Also in:
linux-devicetree
???????????, 16 ??????? 2014, 18:56 +08:00 ?? Shawn Guo [off-list ref]:
On Sun, Feb 16, 2014 at 04:38:44PM +0800, Shawn Guo wrote:quoted
@@ -56,6 +59,55 @@ static const struct of_device_id weim_id_table[] = { }; MODULE_DEVICE_TABLE(of, weim_id_table); +static int __init imx6q_weim_gpr_setup(struct platform_device *pdev) +{ + struct device_node *np = pdev->dev.of_node; + struct property *prop; + const __be32 *p; + struct regmap *gpr; + u32 gprvals[4] = { + 05, /* CS0(128M) CS1(0M) CS2(0M) CS3(0M) */ + 033, /* CS0(64M) CS1(64M) CS2(0M) CS3(0M) */ + 0113, /* CS0(64M) CS1(32M) CS2(32M) CS3(0M) */ + 01111, /* CS0(64M) CS1(32M) CS2(32M) CS3(0M) */ + }; + u32 gprval = 0; + u32 val; + int cs = 0; + int i = 0; + + gpr = syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr");When trying to improve the bindings doc imx-weim.txt, I checked hardware manuals and found that SoCs imx50, imx53, imx6q, imx6dl and imx6sl all need the same CS GPR setup. It's inappropriate to look up by hard-coded compatible "fsl,imx6q-iomuxc-gpr" then. So I'm going to add the property fsl,weim-cs-gpr back, and update bindings doc accordingly.
You can add additional call into struct imx_weim_devtype for handle soc-specific stuff. ---