Message ID | 8981d49e7011a7246ff7dc6a9a9da0a56dfe5621.1487670384.git.nsekhar@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tuesday 21 February 2017 03:30 PM, Sekhar Nori wrote: > From: Schuyler Patton <spatton@ti.com> > > AM571x IDK and the AM572x IDK use CAN1 interface. > This patch enables it for both boards. > > Tested on AM572x IDK using cansequence. > > Signed-off-by: Schuyler Patton <spatton@ti.com> > Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> > Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> > [nsekhar@ti.com: move to use DRA7XX_CORE_IOPAD()) > Signed-off-by: Sekhar Nori <nsekhar@ti.com> I should have noted that although CAN does function on the IDK with this patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" messages that come up due to lack of workaround for errata i893[1] Roger does have some patches to workaround that errata. If you want to wait for those patches to be submitted and accepted first, it should be fine as well. Thanks, Sekhar [1] http://www.ti.com/lit/er/sprz436b/sprz436b.pdf
* Sekhar Nori <nsekhar@ti.com> [170221 02:13]: > On Tuesday 21 February 2017 03:30 PM, Sekhar Nori wrote: > > From: Schuyler Patton <spatton@ti.com> > > > > AM571x IDK and the AM572x IDK use CAN1 interface. > > This patch enables it for both boards. > > > > Tested on AM572x IDK using cansequence. > > > > Signed-off-by: Schuyler Patton <spatton@ti.com> > > Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> > > Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> > > [nsekhar@ti.com: move to use DRA7XX_CORE_IOPAD()) > > Signed-off-by: Sekhar Nori <nsekhar@ti.com> > > I should have noted that although CAN does function on the IDK with this > patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" > messages that come up due to lack of workaround for errata i893[1] > > Roger does have some patches to workaround that errata. If you want to > wait for those patches to be submitted and accepted first, it should be > fine as well. OK let's wait a bit on this then to avoid introducing extra warnings. Regards, Tony > [1] http://www.ti.com/lit/er/sprz436b/sprz436b.pdf
Hi Tony, On Tuesday 07 March 2017 12:11 AM, Tony Lindgren wrote: > * Sekhar Nori <nsekhar@ti.com> [170221 02:13]: >> On Tuesday 21 February 2017 03:30 PM, Sekhar Nori wrote: >>> From: Schuyler Patton <spatton@ti.com> >>> >>> AM571x IDK and the AM572x IDK use CAN1 interface. >>> This patch enables it for both boards. >>> >>> Tested on AM572x IDK using cansequence. >>> >>> Signed-off-by: Schuyler Patton <spatton@ti.com> >>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> >>> Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> >>> [nsekhar@ti.com: move to use DRA7XX_CORE_IOPAD()) >>> Signed-off-by: Sekhar Nori <nsekhar@ti.com> >> >> I should have noted that although CAN does function on the IDK with this >> patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" >> messages that come up due to lack of workaround for errata i893[1] >> >> Roger does have some patches to workaround that errata. If you want to >> wait for those patches to be submitted and accepted first, it should be >> fine as well. > > OK let's wait a bit on this then to avoid introducing extra warnings. Now that Roger's hwmod patches for the DCAN errata are in linux-next, this patch can be applied safely. Let me know if you need me to resend it. Thanks, Sekhar
* Sekhar Nori <nsekhar@ti.com> [170330 07:26]: > Hi Tony, > > On Tuesday 07 March 2017 12:11 AM, Tony Lindgren wrote: > > * Sekhar Nori <nsekhar@ti.com> [170221 02:13]: > >> On Tuesday 21 February 2017 03:30 PM, Sekhar Nori wrote: > >>> From: Schuyler Patton <spatton@ti.com> > >>> > >>> AM571x IDK and the AM572x IDK use CAN1 interface. > >>> This patch enables it for both boards. > >>> > >>> Tested on AM572x IDK using cansequence. > >>> > >>> Signed-off-by: Schuyler Patton <spatton@ti.com> > >>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> > >>> Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> > >>> [nsekhar@ti.com: move to use DRA7XX_CORE_IOPAD()) > >>> Signed-off-by: Sekhar Nori <nsekhar@ti.com> > >> > >> I should have noted that although CAN does function on the IDK with this > >> patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" > >> messages that come up due to lack of workaround for errata i893[1] > >> > >> Roger does have some patches to workaround that errata. If you want to > >> wait for those patches to be submitted and accepted first, it should be > >> fine as well. > > > > OK let's wait a bit on this then to avoid introducing extra warnings. > > Now that Roger's hwmod patches for the DCAN errata are in linux-next, > this patch can be applied safely. Let me know if you need me to resend it. No need to resend, applying into omap-for-v4.12/dt-v2. Thanks, Tony
diff --git a/arch/arm/boot/dts/am57xx-idk-common.dtsi b/arch/arm/boot/dts/am57xx-idk-common.dtsi index 814a720d5c3d..abdee2e7a18e 100644 --- a/arch/arm/boot/dts/am57xx-idk-common.dtsi +++ b/arch/arm/boot/dts/am57xx-idk-common.dtsi @@ -97,6 +97,22 @@ }; }; +&dra7_pmx_core { + dcan1_pins_default: dcan1_pins_default { + pinctrl-single,pins = < + DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */ + DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0) /* dcan1_rx */ + >; + }; + + dcan1_pins_sleep: dcan1_pins_sleep { + pinctrl-single,pins = < + DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */ + DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP) /* dcan1_rx.off */ + >; + }; +}; + &i2c1 { status = "okay"; clock-frequency = <400000>; @@ -387,6 +403,14 @@ max-frequency = <96000000>; }; +&dcan1 { + status = "okay"; + pinctrl-names = "default", "sleep", "active"; + pinctrl-0 = <&dcan1_pins_sleep>; + pinctrl-1 = <&dcan1_pins_sleep>; + pinctrl-2 = <&dcan1_pins_default>; +}; + &qspi { status = "okay";