Re: [PATCH v6 09/18] PCI: dwc: dra7xx: Help compiler to remove unused code

2017-12-19 Thread Kishon Vijay Abraham I


On Wednesday 20 December 2017 04:59 AM, Niklas Cassel wrote:
> The dra7xx driver supports both host and ep mode.
> When enabling support for only one of the modes, help the compiler
> to remove code for the mode that we have not enabled in the driver.
> 
> By adding if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) return -ENODEV;
> anything after that statement will get silently dropped by the compiler,
> including static functions and structures that are referenced indirectly
> from there.
> 
> Suggested-by: Arnd Bergmann 
> Signed-off-by: Niklas Cassel 

Acked-by: Kishon Vijay Abraham I 
> ---
>  drivers/pci/dwc/pci-dra7xx.c | 10 ++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c
> index 07c74ae3614e..224ff8affdce 100644
> --- a/drivers/pci/dwc/pci-dra7xx.c
> +++ b/drivers/pci/dwc/pci-dra7xx.c
> @@ -694,6 +694,11 @@ static int __init dra7xx_pcie_probe(struct 
> platform_device *pdev)
>  
>   switch (mode) {
>   case DW_PCIE_RC_TYPE:
> + if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) {
> + ret = -ENODEV;
> + goto err_gpio;
> + }
> +
>   dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
>  DEVICE_TYPE_RC);
>   ret = dra7xx_add_pcie_port(dra7xx, pdev);
> @@ -701,6 +706,11 @@ static int __init dra7xx_pcie_probe(struct 
> platform_device *pdev)
>   goto err_gpio;
>   break;
>   case DW_PCIE_EP_TYPE:
> + if (!IS_ENABLED(CONFIG_PCI_DRA7XX_EP)) {
> + ret = -ENODEV;
> + goto err_gpio;
> + }
> +
>   dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
>  DEVICE_TYPE_EP);
>  
> 


Re: [PATCH v6 09/18] PCI: dwc: dra7xx: Help compiler to remove unused code

2017-12-19 Thread Kishon Vijay Abraham I


On Wednesday 20 December 2017 04:59 AM, Niklas Cassel wrote:
> The dra7xx driver supports both host and ep mode.
> When enabling support for only one of the modes, help the compiler
> to remove code for the mode that we have not enabled in the driver.
> 
> By adding if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) return -ENODEV;
> anything after that statement will get silently dropped by the compiler,
> including static functions and structures that are referenced indirectly
> from there.
> 
> Suggested-by: Arnd Bergmann 
> Signed-off-by: Niklas Cassel 

Acked-by: Kishon Vijay Abraham I 
> ---
>  drivers/pci/dwc/pci-dra7xx.c | 10 ++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c
> index 07c74ae3614e..224ff8affdce 100644
> --- a/drivers/pci/dwc/pci-dra7xx.c
> +++ b/drivers/pci/dwc/pci-dra7xx.c
> @@ -694,6 +694,11 @@ static int __init dra7xx_pcie_probe(struct 
> platform_device *pdev)
>  
>   switch (mode) {
>   case DW_PCIE_RC_TYPE:
> + if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) {
> + ret = -ENODEV;
> + goto err_gpio;
> + }
> +
>   dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
>  DEVICE_TYPE_RC);
>   ret = dra7xx_add_pcie_port(dra7xx, pdev);
> @@ -701,6 +706,11 @@ static int __init dra7xx_pcie_probe(struct 
> platform_device *pdev)
>   goto err_gpio;
>   break;
>   case DW_PCIE_EP_TYPE:
> + if (!IS_ENABLED(CONFIG_PCI_DRA7XX_EP)) {
> + ret = -ENODEV;
> + goto err_gpio;
> + }
> +
>   dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
>  DEVICE_TYPE_EP);
>  
> 


[PATCH v6 09/18] PCI: dwc: dra7xx: Help compiler to remove unused code

2017-12-19 Thread Niklas Cassel
The dra7xx driver supports both host and ep mode.
When enabling support for only one of the modes, help the compiler
to remove code for the mode that we have not enabled in the driver.

By adding if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) return -ENODEV;
anything after that statement will get silently dropped by the compiler,
including static functions and structures that are referenced indirectly
from there.

Suggested-by: Arnd Bergmann 
Signed-off-by: Niklas Cassel 
---
 drivers/pci/dwc/pci-dra7xx.c | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c
index 07c74ae3614e..224ff8affdce 100644
--- a/drivers/pci/dwc/pci-dra7xx.c
+++ b/drivers/pci/dwc/pci-dra7xx.c
@@ -694,6 +694,11 @@ static int __init dra7xx_pcie_probe(struct platform_device 
*pdev)
 
switch (mode) {
case DW_PCIE_RC_TYPE:
+   if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) {
+   ret = -ENODEV;
+   goto err_gpio;
+   }
+
dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
   DEVICE_TYPE_RC);
ret = dra7xx_add_pcie_port(dra7xx, pdev);
@@ -701,6 +706,11 @@ static int __init dra7xx_pcie_probe(struct platform_device 
*pdev)
goto err_gpio;
break;
case DW_PCIE_EP_TYPE:
+   if (!IS_ENABLED(CONFIG_PCI_DRA7XX_EP)) {
+   ret = -ENODEV;
+   goto err_gpio;
+   }
+
dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
   DEVICE_TYPE_EP);
 
-- 
2.14.2



[PATCH v6 09/18] PCI: dwc: dra7xx: Help compiler to remove unused code

2017-12-19 Thread Niklas Cassel
The dra7xx driver supports both host and ep mode.
When enabling support for only one of the modes, help the compiler
to remove code for the mode that we have not enabled in the driver.

By adding if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) return -ENODEV;
anything after that statement will get silently dropped by the compiler,
including static functions and structures that are referenced indirectly
from there.

Suggested-by: Arnd Bergmann 
Signed-off-by: Niklas Cassel 
---
 drivers/pci/dwc/pci-dra7xx.c | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/drivers/pci/dwc/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c
index 07c74ae3614e..224ff8affdce 100644
--- a/drivers/pci/dwc/pci-dra7xx.c
+++ b/drivers/pci/dwc/pci-dra7xx.c
@@ -694,6 +694,11 @@ static int __init dra7xx_pcie_probe(struct platform_device 
*pdev)
 
switch (mode) {
case DW_PCIE_RC_TYPE:
+   if (!IS_ENABLED(CONFIG_PCI_DRA7XX_HOST)) {
+   ret = -ENODEV;
+   goto err_gpio;
+   }
+
dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
   DEVICE_TYPE_RC);
ret = dra7xx_add_pcie_port(dra7xx, pdev);
@@ -701,6 +706,11 @@ static int __init dra7xx_pcie_probe(struct platform_device 
*pdev)
goto err_gpio;
break;
case DW_PCIE_EP_TYPE:
+   if (!IS_ENABLED(CONFIG_PCI_DRA7XX_EP)) {
+   ret = -ENODEV;
+   goto err_gpio;
+   }
+
dra7xx_pcie_writel(dra7xx, PCIECTRL_TI_CONF_DEVICE_TYPE,
   DEVICE_TYPE_EP);
 
-- 
2.14.2