* [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller @ 2012-08-02 11:02 AnilKumar Ch 2012-08-02 11:02 ` [PATCH v3 1/3] can: c_can: Add device tree support to Bosch " AnilKumar Ch ` (3 more replies) 0 siblings, 4 replies; 11+ messages in thread From: AnilKumar Ch @ 2012-08-02 11:02 UTC (permalink / raw) To: wg, mkl, linux-can Cc: devicetree-discuss, grant.likely, anantgole, nsekhar, AnilKumar Ch This patch series adds the device tree support and Runtime PM support to C_CAN/D_CAN controller. These patches have been tested on AM335x EVM using some additional patches to add device tree data to EVM dts files and to initialize D_CAN RAM. D_CAN raminit is controlled from control module register. This patch will be submitted once control module MFD driver support is added. These patches are based on linx-can-next tree. Due to lack of hardware I am not able to test c_can functionality. I appreciate if anyone can test c_can functionality with this patch series. Changes from v2: - Incorporated Marcs on v2 * Fix compilation errors in pci due to device name changes in v2 by adding new patch. Changes from v1: - Separated 4 patches into CAN driver specific and device tree data addition specific. - Incorporated Marc's comments on v1 * Modified c_can_dev_id enum to handle both devtype and platform device id index. * Removed "legacy bosch,c_can_platform" from DT bindings AnilKumar Ch (3): can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller can: c_can: Modify c_can device names in c_can_pci driver can: c_can: Add runtime PM support to Bosch C_CAN/D_CAN controller .../devicetree/bindings/net/can/c_can.txt | 37 +++++++++++ drivers/net/can/c_can/c_can.h | 5 +- drivers/net/can/c_can/c_can_pci.c | 6 +- drivers/net/can/c_can/c_can_platform.c | 65 +++++++++++++++----- 4 files changed, 91 insertions(+), 22 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/can/c_can.txt -- 1.7.9.5 ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v3 1/3] can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller 2012-08-02 11:02 [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller AnilKumar Ch @ 2012-08-02 11:02 ` AnilKumar Ch 2012-08-02 11:33 ` Arnd Bergmann [not found] ` <1343905339-4642-1-git-send-email-anilkumar-l0cyMroinI0@public.gmane.org> ` (2 subsequent siblings) 3 siblings, 1 reply; 11+ messages in thread From: AnilKumar Ch @ 2012-08-02 11:02 UTC (permalink / raw) To: wg, mkl, linux-can Cc: devicetree-discuss, grant.likely, anantgole, nsekhar, AnilKumar Ch Add device tree support to C_CAN/D_CAN controller and usage details are added to device tree documentation. Driver was tested on AM335x EVM. Signed-off-by: AnilKumar Ch <anilkumar@ti.com> --- .../devicetree/bindings/net/can/c_can.txt | 37 +++++++++++++ drivers/net/can/c_can/c_can.h | 5 +- drivers/net/can/c_can/c_can_platform.c | 57 ++++++++++++++------ 3 files changed, 80 insertions(+), 19 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/can/c_can.txt diff --git a/Documentation/devicetree/bindings/net/can/c_can.txt b/Documentation/devicetree/bindings/net/can/c_can.txt new file mode 100644 index 0000000..dc4aec5 --- /dev/null +++ b/Documentation/devicetree/bindings/net/can/c_can.txt @@ -0,0 +1,37 @@ +Bosch C_CAN/D_CAN controller Device Tree Bindings +------------------------------------------------- + +Required properties: +- compatible : Should be "bosch,c_can" for C_CAN controllers and + "bosch,d_can" for D_CAN controllers. +- reg : physical base address and size of the C_CAN/D_CAN + registers map +- interrupts : property with a value describing the interrupt + number +- interrupt-parent : The parent interrupt controller + +Optional properties: +- ti,hwmods : Must be "d_can<n>" or "c_can<n>", n being the + instance number + +Note: "ti,hwmods" field is used to fetch the base address and irq +resources from TI, omap hwmod data base during device registration. +Future plan is to migrate hwmod data base contents into device tree +blob so that, all the required data will be used from device tree dts +file. + +Examples: + + d_can@481D0000 { + compatible = "bosch,d_can"; + reg = <0x481D0000 0x1000>; + interrupts = <55 0x4>; + interrupt-parent = <&intc>; + }; + +(or) + + d_can@481D0000 { + compatible = "bosch,d_can"; + ti,hwmods = "d_can1"; + }; diff --git a/drivers/net/can/c_can/c_can.h b/drivers/net/can/c_can/c_can.h index 01a7049..4e56baa 100644 --- a/drivers/net/can/c_can/c_can.h +++ b/drivers/net/can/c_can/c_can.h @@ -143,8 +143,9 @@ static const u16 reg_map_d_can[] = { }; enum c_can_dev_id { - C_CAN_DEVTYPE, - D_CAN_DEVTYPE, + BOSCH_C_CAN_PLATFORM, + BOSCH_C_CAN, + BOSCH_D_CAN, }; /* c_can private data structure */ diff --git a/drivers/net/can/c_can/c_can_platform.c b/drivers/net/can/c_can/c_can_platform.c index 6ff7ad0..d0a66cf 100644 --- a/drivers/net/can/c_can/c_can_platform.c +++ b/drivers/net/can/c_can/c_can_platform.c @@ -30,6 +30,8 @@ #include <linux/io.h> #include <linux/platform_device.h> #include <linux/clk.h> +#include <linux/of.h> +#include <linux/of_device.h> #include <linux/can/dev.h> @@ -65,17 +67,52 @@ static void c_can_plat_write_reg_aligned_to_32bit(struct c_can_priv *priv, writew(val, priv->base + 2 * priv->regs[index]); } +static struct platform_device_id c_can_id_table[] = { + [BOSCH_C_CAN_PLATFORM] = { + .name = KBUILD_MODNAME, + .driver_data = BOSCH_C_CAN, + }, + [BOSCH_C_CAN] = { + .name = "c_can", + .driver_data = BOSCH_C_CAN, + }, + [BOSCH_D_CAN] = { + .name = "d_can", + .driver_data = BOSCH_D_CAN, + }, { + } +}; + +static const struct of_device_id c_can_of_table[] = { + { .compatible = "bosch,c_can", .data = &c_can_id_table[BOSCH_C_CAN] }, + { .compatible = "bosch,d_can", .data = &c_can_id_table[BOSCH_D_CAN] }, + { /* sentinel */ }, +}; + static int __devinit c_can_plat_probe(struct platform_device *pdev) { int ret; void __iomem *addr; struct net_device *dev; struct c_can_priv *priv; + const struct of_device_id *match; const struct platform_device_id *id; struct resource *mem; int irq; struct clk *clk; + if (pdev->dev.of_node) { + match = of_match_device(c_can_of_table, &pdev->dev); + if (!match) { + dev_err(&pdev->dev, "Failed to find matching dt id\n"); + ret = -EINVAL; + goto exit; + } + id = match->data; + } else { + id = platform_get_device_id(pdev); + } + /* get the appropriate clk */ clk = clk_get(&pdev->dev, NULL); if (IS_ERR(clk)) { @@ -114,9 +151,8 @@ static int __devinit c_can_plat_probe(struct platform_device *pdev) } priv = netdev_priv(dev); - id = platform_get_device_id(pdev); switch (id->driver_data) { - case C_CAN_DEVTYPE: + case BOSCH_C_CAN: priv->regs = reg_map_c_can; switch (mem->flags & IORESOURCE_MEM_TYPE_MASK) { case IORESOURCE_MEM_32BIT: @@ -130,7 +166,7 @@ static int __devinit c_can_plat_probe(struct platform_device *pdev) break; } break; - case D_CAN_DEVTYPE: + case BOSCH_D_CAN: priv->regs = reg_map_d_can; priv->can.ctrlmode_supported |= CAN_CTRLMODE_3_SAMPLES; priv->read_reg = c_can_plat_read_reg_aligned_to_16bit; @@ -195,24 +231,11 @@ static int __devexit c_can_plat_remove(struct platform_device *pdev) return 0; } -static const struct platform_device_id c_can_id_table[] = { - { - .name = KBUILD_MODNAME, - .driver_data = C_CAN_DEVTYPE, - }, { - .name = "c_can", - .driver_data = C_CAN_DEVTYPE, - }, { - .name = "d_can", - .driver_data = D_CAN_DEVTYPE, - }, { - } -}; - static struct platform_driver c_can_plat_driver = { .driver = { .name = KBUILD_MODNAME, .owner = THIS_MODULE, + .of_match_table = of_match_ptr(c_can_of_table), }, .probe = c_can_plat_probe, .remove = __devexit_p(c_can_plat_remove), -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v3 1/3] can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller 2012-08-02 11:02 ` [PATCH v3 1/3] can: c_can: Add device tree support to Bosch " AnilKumar Ch @ 2012-08-02 11:33 ` Arnd Bergmann 2012-08-02 12:01 ` AnilKumar, Chimata 0 siblings, 1 reply; 11+ messages in thread From: Arnd Bergmann @ 2012-08-02 11:33 UTC (permalink / raw) To: devicetree-discuss; +Cc: AnilKumar Ch, wg, mkl, linux-can, nsekhar, anantgole On Thursday 02 August 2012 16:32:17 AnilKumar Ch wrote: > +- interrupt-parent : The parent interrupt controller > + > +Optional properties: > +- ti,hwmods : Must be "d_can<n>" or "c_can<n>", n being the > + instance number interrupt-parent should be optional, not mandatory. It's usually implied by the parent's interrupt-parent. Arnd ^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH v3 1/3] can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller 2012-08-02 11:33 ` Arnd Bergmann @ 2012-08-02 12:01 ` AnilKumar, Chimata 0 siblings, 0 replies; 11+ messages in thread From: AnilKumar, Chimata @ 2012-08-02 12:01 UTC (permalink / raw) To: Arnd Bergmann, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Cc: Nori, Sekhar, mkl-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, Gole, Anant, linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Hi Arnd, Thanks for the review On Thu, Aug 02, 2012 at 17:03:59, Arnd Bergmann wrote: > On Thursday 02 August 2012 16:32:17 AnilKumar Ch wrote: > > +- interrupt-parent : The parent interrupt controller > > + > > +Optional properties: > > +- ti,hwmods : Must be "d_can<n>" or "c_can<n>", n being the > > + instance number > > interrupt-parent should be optional, not mandatory. It's usually implied > by the parent's interrupt-parent. > In case of AM33XX specific we need to connect interrupt to interrupt controller so I added to mandatory list. Yes I agree with you, in generic case this should be optional I will change. Thanks AnilKumar ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <1343905339-4642-1-git-send-email-anilkumar-l0cyMroinI0@public.gmane.org>]
* [PATCH v3 2/3] can: c_can: Modify c_can device names in c_can_pci driver [not found] ` <1343905339-4642-1-git-send-email-anilkumar-l0cyMroinI0@public.gmane.org> @ 2012-08-02 11:02 ` AnilKumar Ch 0 siblings, 0 replies; 11+ messages in thread From: AnilKumar Ch @ 2012-08-02 11:02 UTC (permalink / raw) To: wg-5Yr1BZd7O62+XT7JhA+gdA, mkl-bIcnvbaLZ9MEGnE8C9+IrQ, linux-can-u79uwXL29TY76Z2rM5mHXA Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, nsekhar-l0cyMroinI0, anantgole-l0cyMroinI0 Modify c_can device names from *_CAN_DEVTYPE to BOSCH_*_CAN to make use of same names in platform_device_id struct and of_device_id struct. Signed-off-by: AnilKumar Ch <anilkumar-l0cyMroinI0@public.gmane.org> --- drivers/net/can/c_can/c_can_pci.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/can/c_can/c_can_pci.c b/drivers/net/can/c_can/c_can_pci.c index 1011146..3d7830b 100644 --- a/drivers/net/can/c_can/c_can_pci.c +++ b/drivers/net/can/c_can/c_can_pci.c @@ -120,10 +120,10 @@ static int __devinit c_can_pci_probe(struct pci_dev *pdev, /* Configure CAN type */ switch (c_can_pci_data->type) { - case C_CAN_DEVTYPE: + case BOSCH_C_CAN: priv->regs = reg_map_c_can; break; - case D_CAN_DEVTYPE: + case BOSCH_D_CAN: priv->regs = reg_map_d_can; priv->can.ctrlmode_supported |= CAN_CTRLMODE_3_SAMPLES; break; @@ -192,7 +192,7 @@ static void __devexit c_can_pci_remove(struct pci_dev *pdev) } static struct c_can_pci_data c_can_sta2x11= { - .type = C_CAN_DEVTYPE, + .type = BOSCH_C_CAN, .reg_align = C_CAN_REG_ALIGN_32, .freq = 52000000, /* 52 Mhz */ }; -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 3/3] can: c_can: Add runtime PM support to Bosch C_CAN/D_CAN controller 2012-08-02 11:02 [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller AnilKumar Ch 2012-08-02 11:02 ` [PATCH v3 1/3] can: c_can: Add device tree support to Bosch " AnilKumar Ch [not found] ` <1343905339-4642-1-git-send-email-anilkumar-l0cyMroinI0@public.gmane.org> @ 2012-08-02 11:02 ` AnilKumar Ch 2012-08-02 11:13 ` [PATCH v3 0/3] Add DT support to " Marc Kleine-Budde 3 siblings, 0 replies; 11+ messages in thread From: AnilKumar Ch @ 2012-08-02 11:02 UTC (permalink / raw) To: wg, mkl, linux-can Cc: devicetree-discuss, grant.likely, anantgole, nsekhar, AnilKumar Ch Add Runtime PM support to C_CAN/D_CAN controller. The runtime PM APIs control clocks for C_CAN/D_CAN IP and prevent access to the register of C_CAN/D_CAN IP when clock is turned off. Signed-off-by: AnilKumar Ch <anilkumar@ti.com> --- drivers/net/can/c_can/c_can_platform.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/net/can/c_can/c_can_platform.c b/drivers/net/can/c_can/c_can_platform.c index d0a66cf..83a1e17 100644 --- a/drivers/net/can/c_can/c_can_platform.c +++ b/drivers/net/can/c_can/c_can_platform.c @@ -32,6 +32,7 @@ #include <linux/clk.h> #include <linux/of.h> #include <linux/of_device.h> +#include <linux/pm_runtime.h> #include <linux/can/dev.h> @@ -177,6 +178,9 @@ static int __devinit c_can_plat_probe(struct platform_device *pdev) goto exit_free_device; } + pm_runtime_enable(&pdev->dev); + pm_runtime_get_sync(&pdev->dev); + dev->irq = irq; priv->base = addr; priv->can.clock.freq = clk_get_rate(clk); @@ -198,6 +202,8 @@ static int __devinit c_can_plat_probe(struct platform_device *pdev) exit_free_device: platform_set_drvdata(pdev, NULL); + pm_runtime_put_sync(&pdev->dev); + pm_runtime_disable(&pdev->dev); free_c_can_dev(dev); exit_iounmap: iounmap(addr); @@ -226,6 +232,8 @@ static int __devexit c_can_plat_remove(struct platform_device *pdev) mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); release_mem_region(mem->start, resource_size(mem)); + pm_runtime_put_sync(&pdev->dev); + pm_runtime_disable(&pdev->dev); clk_put(priv->priv); return 0; -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller 2012-08-02 11:02 [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller AnilKumar Ch ` (2 preceding siblings ...) 2012-08-02 11:02 ` [PATCH v3 3/3] can: c_can: Add runtime PM support to Bosch C_CAN/D_CAN controller AnilKumar Ch @ 2012-08-02 11:13 ` Marc Kleine-Budde [not found] ` <501A60C0.1040504-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 3 siblings, 1 reply; 11+ messages in thread From: Marc Kleine-Budde @ 2012-08-02 11:13 UTC (permalink / raw) To: AnilKumar Ch Cc: wg, linux-can, devicetree-discuss, grant.likely, anantgole, nsekhar [-- Attachment #1: Type: text/plain, Size: 2248 bytes --] On 08/02/2012 01:02 PM, AnilKumar Ch wrote: > This patch series adds the device tree support and Runtime PM support > to C_CAN/D_CAN controller. > > These patches have been tested on AM335x EVM using some additional > patches to add device tree data to EVM dts files and to initialize > D_CAN RAM. D_CAN raminit is controlled from control module register. > This patch will be submitted once control module MFD driver support > is added. > > These patches are based on linx-can-next tree. > > Due to lack of hardware I am not able to test c_can functionality. > I appreciate if anyone can test c_can functionality with this patch > series. > > Changes from v2: > - Incorporated Marcs on v2 > * Fix compilation errors in pci due to device name changes > in v2 by adding new patch. > > Changes from v1: > - Separated 4 patches into CAN driver specific and device > tree data addition specific. > - Incorporated Marc's comments on v1 > * Modified c_can_dev_id enum to handle both devtype and > platform device id index. > * Removed "legacy bosch,c_can_platform" from DT bindings > > AnilKumar Ch (3): > can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller > can: c_can: Modify c_can device names in c_can_pci driver You break bisectability here. After patch 1 the pci driver will not compile anymore. I suggest to do the renaming of enum c_can_dev_id and all it's users in patch 1. Marc > can: c_can: Add runtime PM support to Bosch C_CAN/D_CAN controller > > .../devicetree/bindings/net/can/c_can.txt | 37 +++++++++++ > drivers/net/can/c_can/c_can.h | 5 +- > drivers/net/can/c_can/c_can_pci.c | 6 +- > drivers/net/can/c_can/c_can_platform.c | 65 +++++++++++++++----- > 4 files changed, 91 insertions(+), 22 deletions(-) > create mode 100644 Documentation/devicetree/bindings/net/can/c_can.txt > -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de | [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 262 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <501A60C0.1040504-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>]
* RE: [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller [not found] ` <501A60C0.1040504-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> @ 2012-08-02 11:21 ` AnilKumar, Chimata 2012-08-02 11:23 ` Marc Kleine-Budde 0 siblings, 1 reply; 11+ messages in thread From: AnilKumar, Chimata @ 2012-08-02 11:21 UTC (permalink / raw) To: Marc Kleine-Budde Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, Nori, Sekhar, linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Gole, Anant Marc, On Thu, Aug 02, 2012 at 16:43:04, Marc Kleine-Budde wrote: > On 08/02/2012 01:02 PM, AnilKumar Ch wrote: > > This patch series adds the device tree support and Runtime PM support > > to C_CAN/D_CAN controller. > > > > These patches have been tested on AM335x EVM using some additional > > patches to add device tree data to EVM dts files and to initialize > > D_CAN RAM. D_CAN raminit is controlled from control module register. > > This patch will be submitted once control module MFD driver support > > is added. > > > > These patches are based on linx-can-next tree. > > > > Due to lack of hardware I am not able to test c_can functionality. > > I appreciate if anyone can test c_can functionality with this patch > > series. > > > > Changes from v2: > > - Incorporated Marcs on v2 > > * Fix compilation errors in pci due to device name changes > > in v2 by adding new patch. > > > > Changes from v1: > > - Separated 4 patches into CAN driver specific and device > > tree data addition specific. > > - Incorporated Marc's comments on v1 > > * Modified c_can_dev_id enum to handle both devtype and > > platform device id index. > > * Removed "legacy bosch,c_can_platform" from DT bindings > > > > AnilKumar Ch (3): > > can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller > > can: c_can: Modify c_can device names in c_can_pci driver > > You break bisectability here. After patch 1 the pci driver will not > compile anymore. I suggest to do the renaming of enum c_can_dev_id and > all it's users in patch 1. > I will merge patch 1 and 2 and submit v4. Regards AnilKumar ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller 2012-08-02 11:21 ` AnilKumar, Chimata @ 2012-08-02 11:23 ` Marc Kleine-Budde [not found] ` <501A633A.5000100-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 0 siblings, 1 reply; 11+ messages in thread From: Marc Kleine-Budde @ 2012-08-02 11:23 UTC (permalink / raw) To: AnilKumar, Chimata Cc: wg@grandegger.com, linux-can@vger.kernel.org, devicetree-discuss@lists.ozlabs.org, grant.likely@secretlab.ca, Gole, Anant, Nori, Sekhar [-- Attachment #1: Type: text/plain, Size: 2166 bytes --] On 08/02/2012 01:21 PM, AnilKumar, Chimata wrote: > Marc, > > On Thu, Aug 02, 2012 at 16:43:04, Marc Kleine-Budde wrote: >> On 08/02/2012 01:02 PM, AnilKumar Ch wrote: >>> This patch series adds the device tree support and Runtime PM support >>> to C_CAN/D_CAN controller. >>> >>> These patches have been tested on AM335x EVM using some additional >>> patches to add device tree data to EVM dts files and to initialize >>> D_CAN RAM. D_CAN raminit is controlled from control module register. >>> This patch will be submitted once control module MFD driver support >>> is added. >>> >>> These patches are based on linx-can-next tree. >>> >>> Due to lack of hardware I am not able to test c_can functionality. >>> I appreciate if anyone can test c_can functionality with this patch >>> series. >>> >>> Changes from v2: >>> - Incorporated Marcs on v2 >>> * Fix compilation errors in pci due to device name changes >>> in v2 by adding new patch. >>> >>> Changes from v1: >>> - Separated 4 patches into CAN driver specific and device >>> tree data addition specific. >>> - Incorporated Marc's comments on v1 >>> * Modified c_can_dev_id enum to handle both devtype and >>> platform device id index. >>> * Removed "legacy bosch,c_can_platform" from DT bindings >>> >>> AnilKumar Ch (3): >>> can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller >>> can: c_can: Modify c_can device names in c_can_pci driver >> >> You break bisectability here. After patch 1 the pci driver will not >> compile anymore. I suggest to do the renaming of enum c_can_dev_id and >> all it's users in patch 1. >> > > I will merge patch 1 and 2 and submit v4. But changing the pci driver has nothing to do with the subject ("Add device tree support to Bosch C_CAN/D_CAN controller"). It's considered bad practise to do so. Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de | [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 262 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <501A633A.5000100-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>]
* RE: [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller [not found] ` <501A633A.5000100-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> @ 2012-08-02 11:39 ` AnilKumar, Chimata [not found] ` <331ABD5ECB02734CA317220B2BBEABC13EA081FB-Er742YJ7I/eIQmiDNMet8wC/G2K4zDHf@public.gmane.org> 0 siblings, 1 reply; 11+ messages in thread From: AnilKumar, Chimata @ 2012-08-02 11:39 UTC (permalink / raw) To: Marc Kleine-Budde Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, Nori, Sekhar, linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Gole, Anant Marc, On Thu, Aug 02, 2012 at 16:53:38, Marc Kleine-Budde wrote: > On 08/02/2012 01:21 PM, AnilKumar, Chimata wrote: > > Marc, > > > > On Thu, Aug 02, 2012 at 16:43:04, Marc Kleine-Budde wrote: > >> On 08/02/2012 01:02 PM, AnilKumar Ch wrote: > >>> This patch series adds the device tree support and Runtime PM support > >>> to C_CAN/D_CAN controller. > >>> > >>> These patches have been tested on AM335x EVM using some additional > >>> patches to add device tree data to EVM dts files and to initialize > >>> D_CAN RAM. D_CAN raminit is controlled from control module register. > >>> This patch will be submitted once control module MFD driver support > >>> is added. > >>> > >>> These patches are based on linx-can-next tree. > >>> > >>> Due to lack of hardware I am not able to test c_can functionality. > >>> I appreciate if anyone can test c_can functionality with this patch > >>> series. > >>> > >>> Changes from v2: > >>> - Incorporated Marcs on v2 > >>> * Fix compilation errors in pci due to device name changes > >>> in v2 by adding new patch. > >>> > >>> Changes from v1: > >>> - Separated 4 patches into CAN driver specific and device > >>> tree data addition specific. > >>> - Incorporated Marc's comments on v1 > >>> * Modified c_can_dev_id enum to handle both devtype and > >>> platform device id index. > >>> * Removed "legacy bosch,c_can_platform" from DT bindings > >>> > >>> AnilKumar Ch (3): > >>> can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller > >>> can: c_can: Modify c_can device names in c_can_pci driver > >> > >> You break bisectability here. After patch 1 the pci driver will not > >> compile anymore. I suggest to do the renaming of enum c_can_dev_id and > >> all it's users in patch 1. > >> > > > > I will merge patch 1 and 2 and submit v4. > > But changing the pci driver has nothing to do with the subject ("Add > device tree support to Bosch C_CAN/D_CAN controller"). > > It's considered bad practise to do so. > In that case I will change the patch 1 according to "C_CAN_PLTFORM_DEVTYPE" and flag name changes to BOSCH_* will be in patch 2. So that we can get rid of these two problems. Regards AnilKumar ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <331ABD5ECB02734CA317220B2BBEABC13EA081FB-Er742YJ7I/eIQmiDNMet8wC/G2K4zDHf@public.gmane.org>]
* Re: [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller [not found] ` <331ABD5ECB02734CA317220B2BBEABC13EA081FB-Er742YJ7I/eIQmiDNMet8wC/G2K4zDHf@public.gmane.org> @ 2012-08-02 11:45 ` Marc Kleine-Budde 0 siblings, 0 replies; 11+ messages in thread From: Marc Kleine-Budde @ 2012-08-02 11:45 UTC (permalink / raw) To: AnilKumar, Chimata Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, Nori, Sekhar, linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Gole, Anant [-- Attachment #1.1: Type: text/plain, Size: 1383 bytes --] On 08/02/2012 01:39 PM, AnilKumar, Chimata wrote: [...] >>>>> AnilKumar Ch (3): >>>>> can: c_can: Add device tree support to Bosch C_CAN/D_CAN controller >>>>> can: c_can: Modify c_can device names in c_can_pci driver >>>> >>>> You break bisectability here. After patch 1 the pci driver will not >>>> compile anymore. I suggest to do the renaming of enum c_can_dev_id and >>>> all it's users in patch 1. >>>> >>> >>> I will merge patch 1 and 2 and submit v4. >> >> But changing the pci driver has nothing to do with the subject ("Add >> device tree support to Bosch C_CAN/D_CAN controller"). >> >> It's considered bad practise to do so. >> > > In that case I will change the patch 1 according to "C_CAN_PLTFORM_DEVTYPE" > and flag name changes to BOSCH_* will be in patch 2. So that we can get rid > of these two problems. I'm not sure if I understand you correctly. Please first rename the constants, then add device tree support. It doesn't make any sense to first introduce DT support and then patch parts of the DT that have been added in the previous patch. Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de | [-- Attachment #1.2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 262 bytes --] [-- Attachment #2: Type: text/plain, Size: 192 bytes --] _______________________________________________ devicetree-discuss mailing list devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org https://lists.ozlabs.org/listinfo/devicetree-discuss ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2012-08-02 12:01 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-08-02 11:02 [PATCH v3 0/3] Add DT support to C_CAN/D_CAN controller AnilKumar Ch 2012-08-02 11:02 ` [PATCH v3 1/3] can: c_can: Add device tree support to Bosch " AnilKumar Ch 2012-08-02 11:33 ` Arnd Bergmann 2012-08-02 12:01 ` AnilKumar, Chimata [not found] ` <1343905339-4642-1-git-send-email-anilkumar-l0cyMroinI0@public.gmane.org> 2012-08-02 11:02 ` [PATCH v3 2/3] can: c_can: Modify c_can device names in c_can_pci driver AnilKumar Ch 2012-08-02 11:02 ` [PATCH v3 3/3] can: c_can: Add runtime PM support to Bosch C_CAN/D_CAN controller AnilKumar Ch 2012-08-02 11:13 ` [PATCH v3 0/3] Add DT support to " Marc Kleine-Budde [not found] ` <501A60C0.1040504-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-08-02 11:21 ` AnilKumar, Chimata 2012-08-02 11:23 ` Marc Kleine-Budde [not found] ` <501A633A.5000100-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-08-02 11:39 ` AnilKumar, Chimata [not found] ` <331ABD5ECB02734CA317220B2BBEABC13EA081FB-Er742YJ7I/eIQmiDNMet8wC/G2K4zDHf@public.gmane.org> 2012-08-02 11:45 ` Marc Kleine-Budde
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).