public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* imx6qdl, weim ranges and gpr1
@ 2014-02-10  0:15 Philippe De Muyter
  2014-02-10 15:10 ` Shawn Guo
  0 siblings, 1 reply; 2+ messages in thread
From: Philippe De Muyter @ 2014-02-10  0:15 UTC (permalink / raw)
  To: linux-arm-kernel

Hello linux on i.mx6 experts,

on our i.mx6q/dl-based custom hardware we have used the weim interface to
connect some peripherals.  Our weim dts description looks like that:

&weim {
	compatible = "fsl,imx6q-weim";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_weim_sram_1>;
	clocks = <&clks 196>;
	reg = <0x021b8000 0x4000>;
	#address-cells = <2>;
	#size-cells = <1>;
	ranges = <0 0 0x08000000 0x04000000>, /* 64Mb for CS0 */
		<1 0 0x0c000000 0x04000000>; /* 64Mb for CS1 */
	status = "okay";

	...
};

Actually, to achieve this mapping, I must configure some bits in IOMUXC_GPR1,
like that:
	regmap_update_bits(gpr, IOMUXC_GPR1, 0xfff, 0x1b);

Would it be possible to set the IOMUXC_GPR1 bits automagically, based on the
dts description ? Where should that go, in drivers/bus/imx-weim.c or in
arch/arm/mach-imx/mach-imx6q.c ?  Also, I do not know how to retrieve
the 'ranges' property of the weim description.

Thanks in advance

-- 
Philippe De Muyter +32 2 6101532 Macq SA rue de l'Aeronef 2 B-1140 Bruxelles

^ permalink raw reply	[flat|nested] 2+ messages in thread

* imx6qdl, weim ranges and gpr1
  2014-02-10  0:15 imx6qdl, weim ranges and gpr1 Philippe De Muyter
@ 2014-02-10 15:10 ` Shawn Guo
  0 siblings, 0 replies; 2+ messages in thread
From: Shawn Guo @ 2014-02-10 15:10 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 10, 2014 at 01:15:47AM +0100, Philippe De Muyter wrote:
> Hello linux on i.mx6 experts,
> 
> on our i.mx6q/dl-based custom hardware we have used the weim interface to
> connect some peripherals.  Our weim dts description looks like that:
> 
> &weim {
> 	compatible = "fsl,imx6q-weim";
> 	pinctrl-names = "default";
> 	pinctrl-0 = <&pinctrl_weim_sram_1>;
> 	clocks = <&clks 196>;
> 	reg = <0x021b8000 0x4000>;
> 	#address-cells = <2>;
> 	#size-cells = <1>;
> 	ranges = <0 0 0x08000000 0x04000000>, /* 64Mb for CS0 */
> 		<1 0 0x0c000000 0x04000000>; /* 64Mb for CS1 */
> 	status = "okay";
> 
> 	...
> };
> 
> Actually, to achieve this mapping, I must configure some bits in IOMUXC_GPR1,
> like that:
> 	regmap_update_bits(gpr, IOMUXC_GPR1, 0xfff, 0x1b);
> 
> Would it be possible to set the IOMUXC_GPR1 bits automagically, based on the
> dts description ?

It's possible, I think.

> Where should that go, in drivers/bus/imx-weim.c or in
> arch/arm/mach-imx/mach-imx6q.c ?

I prefer to drivers/bus/imx-weim.c.

> Also, I do not know how to retrieve
> the 'ranges' property of the weim description.

Just read it as an array of integers.  I will post a patch for it
tomorrow.  And please help test it.

Shawn

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-02-10 15:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-10  0:15 imx6qdl, weim ranges and gpr1 Philippe De Muyter
2014-02-10 15:10 ` Shawn Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox