All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] Enable CAN peripheral support on AM3517
@ 2010-02-23  6:37 Sriramakrishnan
  2010-02-23  6:37 ` [PATCH 1/2] can:ti_hecc: Enable CAN " Sriramakrishnan
  0 siblings, 1 reply; 5+ messages in thread
From: Sriramakrishnan @ 2010-02-23  6:37 UTC (permalink / raw)
  To: linux-omap; +Cc: anantgole, Sriramakrishnan

AM3517 platform includes the ti-hecc CAN peripheral. This patch
series enables support for the ti-hecc peripheral on AM3517 platform.
This patch series has been validated on AM3517EVM.

The patch series is dependent on AM35x clock support patches submitted
earlier.
[1].http://marc.info/?l=linux-omap&m=126628362713703&w=2
[2].http://marc.info/?l=linux-omap&m=126628364013734&w=2

Sriramakrishnan (2):
  can:ti_hecc: Enable CAN support on AM3517.
  can:ti_hecc: board specific hookup on AM3517EVM

 arch/arm/configs/am3517_evm_defconfig     |   22 +++++++++++++---
 arch/arm/mach-omap2/board-am3517evm.c     |   38 +++++++++++++++++++++++++++++
 arch/arm/mach-omap2/include/mach/am35xx.h |   10 +++++++
 3 files changed, 66 insertions(+), 4 deletions(-)


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

* [PATCH 1/2] can:ti_hecc: Enable CAN support on AM3517.
  2010-02-23  6:37 [PATCH 0/2] Enable CAN peripheral support on AM3517 Sriramakrishnan
@ 2010-02-23  6:37 ` Sriramakrishnan
  2010-02-23  6:37   ` [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM Sriramakrishnan
  0 siblings, 1 reply; 5+ messages in thread
From: Sriramakrishnan @ 2010-02-23  6:37 UTC (permalink / raw)
  To: linux-omap; +Cc: anantgole, Sriramakrishnan

Modify the default kernel configuration on AM3517 to enable CAN.

Signed-off-by: Sriramakrishnan <srk@ti.com>
Acked-by: Anant Gole <anantgole@ti.com>
---
 arch/arm/configs/am3517_evm_defconfig |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/arch/arm/configs/am3517_evm_defconfig b/arch/arm/configs/am3517_evm_defconfig
index abe9966..d5e15ba 100644
--- a/arch/arm/configs/am3517_evm_defconfig
+++ b/arch/arm/configs/am3517_evm_defconfig
@@ -422,15 +422,29 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 #
 # CONFIG_NET_PKTGEN is not set
 # CONFIG_HAMRADIO is not set
-# CONFIG_CAN is not set
+CONFIG_CAN=y
+CONFIG_CAN_RAW=y
+CONFIG_CAN_BCM=y
+
+#
+# CAN Device Drivers
+#
+CONFIG_CAN_VCAN=y
+CONFIG_CAN_DEV=y
+CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_TI_HECC=y
+# CONFIG_CAN_SJA1000 is not set
+
+#
+# CAN USB interfaces
+#
+# CONFIG_CAN_EMS_USB is not set
+CONFIG_CAN_DEBUG_DEVICES=y
 # CONFIG_IRDA is not set
 # CONFIG_BT is not set
 # CONFIG_AF_RXRPC is not set
 CONFIG_WIRELESS=y
 # CONFIG_CFG80211 is not set
-CONFIG_CFG80211_DEFAULT_PS_VALUE=0
-# CONFIG_WIRELESS_OLD_REGULATORY is not set
-# CONFIG_WIRELESS_EXT is not set
 # CONFIG_LIB80211 is not set
 
 #
-- 
1.6.2.4


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

* [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM
  2010-02-23  6:37 ` [PATCH 1/2] can:ti_hecc: Enable CAN " Sriramakrishnan
@ 2010-02-23  6:37   ` Sriramakrishnan
  2010-02-25 22:04     ` Tony Lindgren
  0 siblings, 1 reply; 5+ messages in thread
From: Sriramakrishnan @ 2010-02-23  6:37 UTC (permalink / raw)
  To: linux-omap; +Cc: anantgole, Sriramakrishnan

Add board specific hookup for TI HECC driver on
AM3517 EVM

Signed-off-by: Sriramakrishnan <srk@ti.com>
Acked-by: Anant Gole <anantgole@ti.com>
---
The driver requires that CAN_STB signal be driven low to enable
CAN PHY. Currently this is being managed from U-boot. Will submit a patch
for handling this as part of board init sequence.

 arch/arm/mach-omap2/board-am3517evm.c     |   38 +++++++++++++++++++++++++++++
 arch/arm/mach-omap2/include/mach/am35xx.h |   10 +++++++
 2 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c
index af99faf..42013b5 100644
--- a/arch/arm/mach-omap2/board-am3517evm.c
+++ b/arch/arm/mach-omap2/board-am3517evm.c
@@ -20,6 +20,7 @@
 #include <linux/init.h>
 #include <linux/platform_device.h>
 #include <linux/gpio.h>
+#include <linux/can/platform/ti_hecc.h>
 
 #include <mach/hardware.h>
 #include <mach/am35xx.h>
@@ -223,6 +224,42 @@ static struct omap_board_mux board_mux[] __initdata = {
 #define board_mux	NULL
 #endif
 
+
+static struct resource am3517_hecc_resources[] = {
+	{
+		.start  = AM35XX_IPSS_HECC_BASE,
+		.end    = AM35XX_IPSS_HECC_BASE + 0x3FFF,
+		.flags  = IORESOURCE_MEM,
+	},
+	{
+		.start  = INT_35XX_HECC0_IRQ,
+		.end    = INT_35XX_HECC0_IRQ,
+		.flags  = IORESOURCE_IRQ,
+	},
+};
+
+static struct platform_device am3517_hecc_device = {
+	.name           = "ti_hecc",
+	.id             = -1,
+	.num_resources  = ARRAY_SIZE(am3517_hecc_resources),
+	.resource       = am3517_hecc_resources,
+};
+
+static struct ti_hecc_platform_data am3517_evm_hecc_pdata = {
+	.scc_hecc_offset        = AM35XX_HECC_SCC_HECC_OFFSET,
+	.scc_ram_offset         = AM35XX_HECC_SCC_RAM_OFFSET,
+	.hecc_ram_offset        = AM35XX_HECC_RAM_OFFSET,
+	.mbx_offset            = AM35XX_HECC_MBOX_OFFSET,
+	.int_line               = AM35XX_HECC_INT_LINE,
+	.version                = AM35XX_HECC_VERSION,
+};
+
+static void am3517_evm_hecc_init(struct ti_hecc_platform_data *pdata)
+{
+	am3517_hecc_device.dev.platform_data = pdata;
+	platform_device_register(&am3517_hecc_device);
+}
+
 static void __init am3517_evm_init(void)
 {
 	am3517_evm_i2c_init();
@@ -233,6 +270,7 @@ static void __init am3517_evm_init(void)
 
 	omap_serial_init();
 	usb_ehci_init(&ehci_pdata);
+	am3517_evm_hecc_init(&am3517_evm_hecc_pdata);
 	/* DSS */
 	am3517_evm_display_init();
 }
diff --git a/arch/arm/mach-omap2/include/mach/am35xx.h b/arch/arm/mach-omap2/include/mach/am35xx.h
index a705f94..6d5429b 100644
--- a/arch/arm/mach-omap2/include/mach/am35xx.h
+++ b/arch/arm/mach-omap2/include/mach/am35xx.h
@@ -23,4 +23,14 @@
 #define AM35XX_IPSS_HECC_BASE		0x5C050000
 #define AM35XX_IPSS_VPFE_BASE		0x5C060000
 
+
+/* HECC module specifc offset definitions */
+#define AM35XX_HECC_SCC_HECC_OFFSET	(0x0)
+#define AM35XX_HECC_SCC_RAM_OFFSET	(0x3000)
+#define AM35XX_HECC_RAM_OFFSET		(0x3000)
+#define AM35XX_HECC_MBOX_OFFSET		(0x2000)
+#define AM35XX_HECC_INT_LINE		(0x0)
+#define AM35XX_HECC_VERSION		(0x1)
+
+
 #endif /*  __ASM_ARCH_AM35XX_H */
-- 
1.6.2.4


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

* Re: [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM
  2010-02-23  6:37   ` [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM Sriramakrishnan
@ 2010-02-25 22:04     ` Tony Lindgren
  2010-02-26 10:55       ` Govindarajan, Sriramakrishnan
  0 siblings, 1 reply; 5+ messages in thread
From: Tony Lindgren @ 2010-02-25 22:04 UTC (permalink / raw)
  To: Sriramakrishnan; +Cc: linux-omap, anantgole

* Sriramakrishnan <srk@ti.com> [100222 22:35]:
> Add board specific hookup for TI HECC driver on
> AM3517 EVM
> 
> Signed-off-by: Sriramakrishnan <srk@ti.com>
> Acked-by: Anant Gole <anantgole@ti.com>
> ---
> The driver requires that CAN_STB signal be driven low to enable
> CAN PHY. Currently this is being managed from U-boot. Will submit a patch
> for handling this as part of board init sequence.
> 
>  arch/arm/mach-omap2/board-am3517evm.c     |   38 +++++++++++++++++++++++++++++
>  arch/arm/mach-omap2/include/mach/am35xx.h |   10 +++++++
>  2 files changed, 48 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c
> index af99faf..42013b5 100644
> --- a/arch/arm/mach-omap2/board-am3517evm.c
> +++ b/arch/arm/mach-omap2/board-am3517evm.c
> @@ -20,6 +20,7 @@
>  #include <linux/init.h>
>  #include <linux/platform_device.h>
>  #include <linux/gpio.h>
> +#include <linux/can/platform/ti_hecc.h>
>  
>  #include <mach/hardware.h>
>  #include <mach/am35xx.h>
> @@ -223,6 +224,42 @@ static struct omap_board_mux board_mux[] __initdata = {
>  #define board_mux	NULL
>  #endif
>  
> +
> +static struct resource am3517_hecc_resources[] = {
> +	{
> +		.start  = AM35XX_IPSS_HECC_BASE,
> +		.end    = AM35XX_IPSS_HECC_BASE + 0x3FFF,
> +		.flags  = IORESOURCE_MEM,
> +	},
> +	{
> +		.start  = INT_35XX_HECC0_IRQ,
> +		.end    = INT_35XX_HECC0_IRQ,
> +		.flags  = IORESOURCE_IRQ,
> +	},
> +};
> +
> +static struct platform_device am3517_hecc_device = {
> +	.name           = "ti_hecc",
> +	.id             = -1,
> +	.num_resources  = ARRAY_SIZE(am3517_hecc_resources),
> +	.resource       = am3517_hecc_resources,
> +};
> +
> +static struct ti_hecc_platform_data am3517_evm_hecc_pdata = {
> +	.scc_hecc_offset        = AM35XX_HECC_SCC_HECC_OFFSET,
> +	.scc_ram_offset         = AM35XX_HECC_SCC_RAM_OFFSET,
> +	.hecc_ram_offset        = AM35XX_HECC_RAM_OFFSET,
> +	.mbx_offset            = AM35XX_HECC_MBOX_OFFSET,
> +	.int_line               = AM35XX_HECC_INT_LINE,
> +	.version                = AM35XX_HECC_VERSION,
> +};

The formatting above should use tabs instead of spaces. Please
check and run checkpatch.pl --strict on this.

Also, sounds like the Kconfig changes should be 2/2, not 1/2
to enable this.

Tony

> +
> +static void am3517_evm_hecc_init(struct ti_hecc_platform_data *pdata)
> +{
> +	am3517_hecc_device.dev.platform_data = pdata;
> +	platform_device_register(&am3517_hecc_device);
> +}
> +
>  static void __init am3517_evm_init(void)
>  {
>  	am3517_evm_i2c_init();
> @@ -233,6 +270,7 @@ static void __init am3517_evm_init(void)
>  
>  	omap_serial_init();
>  	usb_ehci_init(&ehci_pdata);
> +	am3517_evm_hecc_init(&am3517_evm_hecc_pdata);
>  	/* DSS */
>  	am3517_evm_display_init();
>  }
> diff --git a/arch/arm/mach-omap2/include/mach/am35xx.h b/arch/arm/mach-omap2/include/mach/am35xx.h
> index a705f94..6d5429b 100644
> --- a/arch/arm/mach-omap2/include/mach/am35xx.h
> +++ b/arch/arm/mach-omap2/include/mach/am35xx.h
> @@ -23,4 +23,14 @@
>  #define AM35XX_IPSS_HECC_BASE		0x5C050000
>  #define AM35XX_IPSS_VPFE_BASE		0x5C060000
>  
> +
> +/* HECC module specifc offset definitions */
> +#define AM35XX_HECC_SCC_HECC_OFFSET	(0x0)
> +#define AM35XX_HECC_SCC_RAM_OFFSET	(0x3000)
> +#define AM35XX_HECC_RAM_OFFSET		(0x3000)
> +#define AM35XX_HECC_MBOX_OFFSET		(0x2000)
> +#define AM35XX_HECC_INT_LINE		(0x0)
> +#define AM35XX_HECC_VERSION		(0x1)
> +
> +
>  #endif /*  __ASM_ARCH_AM35XX_H */
> -- 
> 1.6.2.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* RE: [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM
  2010-02-25 22:04     ` Tony Lindgren
@ 2010-02-26 10:55       ` Govindarajan, Sriramakrishnan
  0 siblings, 0 replies; 5+ messages in thread
From: Govindarajan, Sriramakrishnan @ 2010-02-26 10:55 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap, Gole, Anant


> -----Original Message-----
> From: Tony Lindgren [mailto:tony@atomide.com]
> Sent: Friday, February 26, 2010 3:34 AM
> To: Govindarajan, Sriramakrishnan
> Cc: linux-omap@vger.kernel.org; Gole, Anant
> Subject: Re: [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM
> 
> * Sriramakrishnan <srk@ti.com> [100222 22:35]:
> > Add board specific hookup for TI HECC driver on
> > AM3517 EVM
> >
> > Signed-off-by: Sriramakrishnan <srk@ti.com>
> > Acked-by: Anant Gole <anantgole@ti.com>
> > ---
> > The driver requires that CAN_STB signal be driven low to enable
> > CAN PHY. Currently this is being managed from U-boot. Will submit a
> patch
> > for handling this as part of board init sequence.
> >
> >  arch/arm/mach-omap2/board-am3517evm.c     |   38
> +++++++++++++++++++++++++++++
> >  arch/arm/mach-omap2/include/mach/am35xx.h |   10 +++++++
> >  2 files changed, 48 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-
> omap2/board-am3517evm.c
> > index af99faf..42013b5 100644
> > --- a/arch/arm/mach-omap2/board-am3517evm.c
> > +++ b/arch/arm/mach-omap2/board-am3517evm.c
> > @@ -20,6 +20,7 @@
> >  #include <linux/init.h>
> >  #include <linux/platform_device.h>
> >  #include <linux/gpio.h>
> > +#include <linux/can/platform/ti_hecc.h>
> >
--- snip ----
> > +
> > +static struct ti_hecc_platform_data am3517_evm_hecc_pdata = {
> > +	.scc_hecc_offset        = AM35XX_HECC_SCC_HECC_OFFSET,
> > +	.scc_ram_offset         = AM35XX_HECC_SCC_RAM_OFFSET,
> > +	.hecc_ram_offset        = AM35XX_HECC_RAM_OFFSET,
> > +	.mbx_offset            = AM35XX_HECC_MBOX_OFFSET,
> > +	.int_line               = AM35XX_HECC_INT_LINE,
> > +	.version                = AM35XX_HECC_VERSION,
> > +};
> 
> The formatting above should use tabs instead of spaces. Please
> check and run checkpatch.pl --strict on this.
> 
> Also, sounds like the Kconfig changes should be 2/2, not 1/2
> to enable this.
> 
> Tony
> 
[Sriram] Tony, I did verify the patch with checkpatch(log below) but 
Somehow, it didn't flag any formatting errors. I realize that there are spaces that need to be converted to tabs. I will re-generate the patch and also re-order the patches as pointed out.

$scripts/checkpatch.pl --strict 2-2-can-ti_hecc-board-specific-hookup-on-AM3517EVM.patch
total: 0 errors, 0 warnings, 0 checks, 70 lines checked

2-2-can-ti_hecc-board-specific-hookup-on-AM3517EVM.patch has no obvious style problems and is ready for submission.

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

end of thread, other threads:[~2010-02-26 10:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-23  6:37 [PATCH 0/2] Enable CAN peripheral support on AM3517 Sriramakrishnan
2010-02-23  6:37 ` [PATCH 1/2] can:ti_hecc: Enable CAN " Sriramakrishnan
2010-02-23  6:37   ` [PATCH 2/2] can:ti_hecc: board specific hookup on AM3517EVM Sriramakrishnan
2010-02-25 22:04     ` Tony Lindgren
2010-02-26 10:55       ` Govindarajan, Sriramakrishnan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.