2010-07-14 11:31:36

by Christian Dietrich

[permalink] [raw]
Subject: [PATCH 0/3] Removing dead code

Hi all!

As part of the VAMOS[0] research project at the University of
Erlangen we are looking at multiple integrity errors in linux'
configuration system.

I've been running a check on the drivers/usb sourcetree for
config Items not defined in Kconfig and found 3 such cases. Sourcecode
blocks depending on these Items are not reachable from a vanilla
kernel -- dead code. I've seen such dead blocks made on purpose
e.g. while integrating new features into the kernel but generally
they're just useless.

Each of the patches in this patchset removes on such dead
config Item, I'd be glad if you consider applying them. I've been
doing deeper analysis of such issues before and can do so again but
I'm not so sure they were fastly usefull.

I build the patches against a vanilla kernel in order to
try if the kernel compiles with this patches

Please keep me informed of this patch getting confirmed /
merged so we can keep track of it.

Regards

Christian Dietrich

[0] http://vamos1.informatik.uni-erlangen.de/

Christian Dietrich (3):
usb/gadget: Remove dead CONFIG_USB_LANGWELL_OTG
usb/{gadget,host}: Remove dead CONFIG_CPU_PXA27x
usb/host || arch/arm: Remove dead CONFIG_ARCH_KARO

arch/arm/tools/mach-types | 1 -
drivers/usb/gadget/langwell_udc.c | 84 +------------------------------------
drivers/usb/gadget/langwell_udc.h | 5 --
drivers/usb/gadget/pxa27x_udc.c | 16 -------
drivers/usb/host/isp1362.h | 24 +----------
drivers/usb/host/ohci-pxa27x.c | 8 ----
6 files changed, 2 insertions(+), 136 deletions(-)


2010-07-14 11:31:59

by Christian Dietrich

[permalink] [raw]
Subject: [PATCH 1/3] usb/gadget: Remove dead CONFIG_USB_LANGWELL_OTG

CONFIG_USB_LANGWELL_OTG doesn't exist in Kconfig, therefore removing all
references for it from the source code.

Because CONFIG_USB_LANGWELL_OTG can't be selected, OTG_TRANSRECEIVER
can't be selected either, so all references to this can be removed also.

Signed-off-by: Christian Dietrich <[email protected]>
---
drivers/usb/gadget/langwell_udc.c | 84 +------------------------------------
drivers/usb/gadget/langwell_udc.h | 5 --
2 files changed, 1 insertions(+), 88 deletions(-)

diff --git a/drivers/usb/gadget/langwell_udc.c b/drivers/usb/gadget/langwell_udc.c
index a391351..b2dfbc7 100644
--- a/drivers/usb/gadget/langwell_udc.c
+++ b/drivers/usb/gadget/langwell_udc.c
@@ -21,11 +21,6 @@
/* #undef DEBUG */
/* #undef VERBOSE */

-#if defined(CONFIG_USB_LANGWELL_OTG)
-#define OTG_TRANSCEIVER
-#endif
-
-
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/dma-mapping.h>
@@ -2251,10 +2246,6 @@ static void handle_setup_packet(struct langwell_udc *dev,
break;
else if (setup->bRequest == USB_DEVICE_B_HNP_ENABLE) {
dev->gadget.b_hnp_enable = 1;
-#ifdef OTG_TRANSCEIVER
- if (!dev->lotg->otg.default_a)
- dev->lotg->hsm.b_hnp_enable = 1;
-#endif
} else if (setup->bRequest == USB_DEVICE_A_HNP_SUPPORT)
dev->gadget.a_hnp_support = 1;
else if (setup->bRequest ==
@@ -2685,12 +2676,6 @@ static void handle_usb_reset(struct langwell_udc *dev)
dev->usb_state = USB_STATE_ATTACHED;
}

-#ifdef OTG_TRANSCEIVER
- /* refer to USB OTG 6.6.2.3 b_hnp_en is cleared */
- if (!dev->lotg->otg.default_a)
- dev->lotg->hsm.b_hnp_enable = 0;
-#endif
-
VDBG(dev, "<--- %s()\n", __func__);
}

@@ -2704,29 +2689,6 @@ static void handle_bus_suspend(struct langwell_udc *dev)
dev->resume_state = dev->usb_state;
dev->usb_state = USB_STATE_SUSPENDED;

-#ifdef OTG_TRANSCEIVER
- if (dev->lotg->otg.default_a) {
- if (dev->lotg->hsm.b_bus_suspend_vld == 1) {
- dev->lotg->hsm.b_bus_suspend = 1;
- /* notify transceiver the state changes */
- if (spin_trylock(&dev->lotg->wq_lock)) {
- langwell_update_transceiver();
- spin_unlock(&dev->lotg->wq_lock);
- }
- }
- dev->lotg->hsm.b_bus_suspend_vld++;
- } else {
- if (!dev->lotg->hsm.a_bus_suspend) {
- dev->lotg->hsm.a_bus_suspend = 1;
- /* notify transceiver the state changes */
- if (spin_trylock(&dev->lotg->wq_lock)) {
- langwell_update_transceiver();
- spin_unlock(&dev->lotg->wq_lock);
- }
- }
- }
-#endif
-
/* report suspend to the driver */
if (dev->driver) {
if (dev->driver->suspend) {
@@ -2761,11 +2723,6 @@ static void handle_bus_resume(struct langwell_udc *dev)
devlc &= ~LPM_PHCD;
writel(devlc, &dev->op_regs->devlc);

-#ifdef OTG_TRANSCEIVER
- if (dev->lotg->otg.default_a == 0)
- dev->lotg->hsm.a_bus_suspend = 0;
-#endif
-
/* report resume to the driver */
if (dev->driver) {
if (dev->driver->resume) {
@@ -2929,7 +2886,6 @@ static void langwell_udc_remove(struct pci_dev *pdev)
if (dev->got_irq)
free_irq(pdev->irq, dev);

-#ifndef OTG_TRANSCEIVER
if (dev->cap_regs)
iounmap(dev->cap_regs);

@@ -2939,13 +2895,6 @@ static void langwell_udc_remove(struct pci_dev *pdev)

if (dev->enabled)
pci_disable_device(pdev);
-#else
- if (dev->transceiver) {
- otg_put_transceiver(dev->transceiver);
- dev->transceiver = NULL;
- dev->lotg = NULL;
- }
-#endif

dev->cap_regs = NULL;

@@ -2955,9 +2904,7 @@ static void langwell_udc_remove(struct pci_dev *pdev)
device_unregister(&dev->gadget.dev);
device_remove_file(&pdev->dev, &dev_attr_langwell_udc);

-#ifndef OTG_TRANSCEIVER
pci_set_drvdata(pdev, NULL);
-#endif

/* free dev, wait for the release() finished */
wait_for_completion(&done);
@@ -2974,9 +2921,7 @@ static int langwell_udc_probe(struct pci_dev *pdev,
const struct pci_device_id *id)
{
struct langwell_udc *dev;
-#ifndef OTG_TRANSCEIVER
unsigned long resource, len;
-#endif
void __iomem *base = NULL;
size_t size;
int retval;
@@ -2999,16 +2944,6 @@ static int langwell_udc_probe(struct pci_dev *pdev,
dev->pdev = pdev;
DBG(dev, "---> %s()\n", __func__);

-#ifdef OTG_TRANSCEIVER
- /* PCI device is already enabled by otg_transceiver driver */
- dev->enabled = 1;
-
- /* mem region and register base */
- dev->region = 1;
- dev->transceiver = otg_get_transceiver();
- dev->lotg = otg_to_langwell(dev->transceiver);
- base = dev->lotg->regs;
-#else
pci_set_drvdata(pdev, dev);

/* now all the pci goodies ... */
@@ -3029,7 +2964,7 @@ static int langwell_udc_probe(struct pci_dev *pdev,
dev->region = 1;

base = ioremap_nocache(resource, len);
-#endif
+
if (base == NULL) {
ERROR(dev, "can't map memory\n");
retval = -EFAULT;
@@ -3049,7 +2984,6 @@ static int langwell_udc_probe(struct pci_dev *pdev,
goto error;
}

-#ifndef OTG_TRANSCEIVER
INFO(dev, "irq %d, io mem: 0x%08lx, len: 0x%08lx, pci mem 0x%p\n",
pdev->irq, resource, len, base);
/* enables bus-mastering for device dev */
@@ -3062,7 +2996,6 @@ static int langwell_udc_probe(struct pci_dev *pdev,
goto error;
}
dev->got_irq = 1;
-#endif

/* set stopped bit */
dev->stopped = 1;
@@ -3131,10 +3064,8 @@ static int langwell_udc_probe(struct pci_dev *pdev,
dev->ep0_dir = USB_DIR_OUT;
dev->remote_wakeup = 0; /* default to 0 on reset */

-#ifndef OTG_TRANSCEIVER
/* reset device controller */
langwell_udc_reset(dev);
-#endif

/* initialize gadget structure */
dev->gadget.ops = &langwell_ops; /* usb_gadget_ops */
@@ -3142,9 +3073,6 @@ static int langwell_udc_probe(struct pci_dev *pdev,
INIT_LIST_HEAD(&dev->gadget.ep_list); /* ep_list */
dev->gadget.speed = USB_SPEED_UNKNOWN; /* speed */
dev->gadget.is_dualspeed = 1; /* support dual speed */
-#ifdef OTG_TRANSCEIVER
- dev->gadget.is_otg = 1; /* support otg mode */
-#endif

/* the "gadget" abstracts/virtualizes the controller */
dev_set_name(&dev->gadget.dev, "gadget");
@@ -3156,10 +3084,8 @@ static int langwell_udc_probe(struct pci_dev *pdev,
/* controller endpoints reinit */
eps_reinit(dev);

-#ifndef OTG_TRANSCEIVER
/* reset ep0 dQH and endptctrl */
ep0_reset(dev);
-#endif

/* create dTD dma_pool resource */
dev->dtd_pool = dma_pool_create("langwell_dtd",
@@ -3351,22 +3277,14 @@ MODULE_LICENSE("GPL");

static int __init init(void)
{
-#ifdef OTG_TRANSCEIVER
- return langwell_register_peripheral(&langwell_pci_driver);
-#else
return pci_register_driver(&langwell_pci_driver);
-#endif
}
module_init(init);


static void __exit cleanup(void)
{
-#ifdef OTG_TRANSCEIVER
- return langwell_unregister_peripheral(&langwell_pci_driver);
-#else
pci_unregister_driver(&langwell_pci_driver);
-#endif
}
module_exit(cleanup);

diff --git a/drivers/usb/gadget/langwell_udc.h b/drivers/usb/gadget/langwell_udc.h
index 9719934..26d5edb 100644
--- a/drivers/usb/gadget/langwell_udc.h
+++ b/drivers/usb/gadget/langwell_udc.h
@@ -19,11 +19,6 @@

#include <linux/usb/langwell_udc.h>

-#if defined(CONFIG_USB_LANGWELL_OTG)
-#include <linux/usb/langwell_otg.h>
-#endif
-
-
/*-------------------------------------------------------------------------*/

/* driver data structures and utilities */
--
1.7.0.4

2010-07-14 11:32:09

by Christian Dietrich

[permalink] [raw]
Subject: [PATCH 2/3] usb/{gadget,host}: Remove dead CONFIG_CPU_PXA27x

CONFIG_CPU_PXA27x doesn't exist in Kconfig, therefore removing all
references for it from the source code.

Signed-off-by: Christian Dietrich <[email protected]>
---
drivers/usb/gadget/pxa27x_udc.c | 16 ----------------
drivers/usb/host/ohci-pxa27x.c | 8 --------
2 files changed, 0 insertions(+), 24 deletions(-)

diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c
index 85b0d89..73783f5 100644
--- a/drivers/usb/gadget/pxa27x_udc.c
+++ b/drivers/usb/gadget/pxa27x_udc.c
@@ -2561,12 +2561,6 @@ static void pxa_udc_shutdown(struct platform_device *_dev)
udc_disable(udc);
}

-#ifdef CONFIG_CPU_PXA27x
-extern void pxa27x_clear_otgph(void);
-#else
-#define pxa27x_clear_otgph() do {} while (0)
-#endif
-
#ifdef CONFIG_PM
/**
* pxa_udc_suspend - Suspend udc device
@@ -2625,16 +2619,6 @@ static int pxa_udc_resume(struct platform_device *_dev)
dplus_pullup(udc, udc->pullup_resume);
if (should_enable_udc(udc))
udc_enable(udc);
- /*
- * We do not handle OTG yet.
- *
- * OTGPH bit is set when sleep mode is entered.
- * it indicates that OTG pad is retaining its state.
- * Upon exit from sleep mode and before clearing OTGPH,
- * Software must configure the USB OTG pad, UDC, and UHC
- * to the state they were in before entering sleep mode.
- */
- pxa27x_clear_otgph();

return 0;
}
diff --git a/drivers/usb/host/ohci-pxa27x.c b/drivers/usb/host/ohci-pxa27x.c
index a18debd..227bdf0 100644
--- a/drivers/usb/host/ohci-pxa27x.c
+++ b/drivers/usb/host/ohci-pxa27x.c
@@ -203,12 +203,6 @@ static inline void pxa27x_reset_hc(struct pxa27x_ohci *ohci)
__raw_writel(uhchr & ~UHCHR_FHR, ohci->mmio_base + UHCHR);
}

-#ifdef CONFIG_CPU_PXA27x
-extern void pxa27x_clear_otgph(void);
-#else
-#define pxa27x_clear_otgph() do {} while (0)
-#endif
-
static int pxa27x_start_hc(struct pxa27x_ohci *ohci, struct device *dev)
{
int retval = 0;
@@ -239,8 +233,6 @@ static int pxa27x_start_hc(struct pxa27x_ohci *ohci, struct device *dev)
__raw_writel(uhchr, ohci->mmio_base + UHCHR);
__raw_writel(UHCHIE_UPRIE | UHCHIE_RWIE, ohci->mmio_base + UHCHIE);

- /* Clear any OTG Pin Hold */
- pxa27x_clear_otgph();
return 0;
}

--
1.7.0.4

2010-07-14 11:32:18

by Christian Dietrich

[permalink] [raw]
Subject: [PATCH 3/3] usb/host || arch/arm: Remove dead CONFIG_ARCH_KARO

CONFIG_ARCH_KARO doesn't exist in Kconfig and is never defined anywhere
else, therefore removing all references for it from the source code.

Signed-off-by: Christian Dietrich <[email protected]>
---
arch/arm/tools/mach-types | 1 -
drivers/usb/host/isp1362.h | 24 +-----------------------
2 files changed, 1 insertions(+), 24 deletions(-)

diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
index 8f10d24..3d86318 100644
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -204,7 +204,6 @@ omaha ARCH_OMAHA OMAHA 186
ta7 ARCH_TA7 TA7 187
nova SA1100_NOVA NOVA 188
hmk ARCH_HMK HMK 189
-karo ARCH_KARO KARO 190
fester SA1100_FESTER FESTER 191
gpi ARCH_GPI GPI 192
smdk2410 ARCH_SMDK2410 SMDK2410 193
diff --git a/drivers/usb/host/isp1362.h b/drivers/usb/host/isp1362.h
index d995351..0f97820 100644
--- a/drivers/usb/host/isp1362.h
+++ b/drivers/usb/host/isp1362.h
@@ -8,29 +8,7 @@
/*
* Platform specific compile time options
*/
-#if defined(CONFIG_ARCH_KARO)
-#include <asm/arch/hardware.h>
-#include <asm/arch/pxa-regs.h>
-#include <asm/arch/karo.h>
-
-#define USE_32BIT 1
-
-
-/* These options are mutually eclusive */
-#define USE_PLATFORM_DELAY 1
-#define USE_NDELAY 0
-/*
- * MAX_ROOT_PORTS: Number of downstream ports
- *
- * The chip has two USB ports, one of which can be configured as
- * an USB device port, so the value of this constant is implementation
- * specific.
- */
-#define MAX_ROOT_PORTS 2
-#define DUMMY_DELAY_ACCESS do {} while (0)
-
-/* insert platform specific definitions for other machines here */
-#elif defined(CONFIG_BLACKFIN)
+#if defined(CONFIG_BLACKFIN)

#include <linux/io.h>
#define USE_32BIT 0
--
1.7.0.4

2010-07-14 11:42:12

by Alan

[permalink] [raw]
Subject: Re: [PATCH 1/3] usb/gadget: Remove dead CONFIG_USB_LANGWELL_OTG

On Wed, 14 Jul 2010 13:31:55 +0200
Christian Dietrich <[email protected]> wrote:

> CONFIG_USB_LANGWELL_OTG doesn't exist in Kconfig, therefore removing all
> references for it from the source code.

NAK

If you followed the USB list you would be aware this was work currently
being moved towards merge.

2010-07-14 12:30:46

by Eric Miao

[permalink] [raw]
Subject: Re: [PATCH 2/3] usb/{gadget,host}: Remove dead CONFIG_CPU_PXA27x

On Wed, Jul 14, 2010 at 7:32 PM, Christian Dietrich
<[email protected]> wrote:
> CONFIG_CPU_PXA27x doesn't exist in Kconfig, therefore removing all
> references for it from the source code.
>
> Signed-off-by: Christian Dietrich <[email protected]>
> ---
>  drivers/usb/gadget/pxa27x_udc.c |   16 ----------------
>  drivers/usb/host/ohci-pxa27x.c  |    8 --------
>  2 files changed, 0 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c
> index 85b0d89..73783f5 100644
> --- a/drivers/usb/gadget/pxa27x_udc.c
> +++ b/drivers/usb/gadget/pxa27x_udc.c
> @@ -2561,12 +2561,6 @@ static void pxa_udc_shutdown(struct platform_device *_dev)
>                udc_disable(udc);
>  }
>
> -#ifdef CONFIG_CPU_PXA27x

This should be CONFIG_PXA27x, I'll prepare a patch on this.

2010-07-14 13:36:04

by Mike Frysinger

[permalink] [raw]
Subject: Re: [PATCH 3/3] usb/host || arch/arm: Remove dead CONFIG_ARCH_KARO

On Wed, Jul 14, 2010 at 07:32, Christian Dietrich wrote:
> CONFIG_ARCH_KARO doesn't exist in Kconfig and is never defined anywhere
> else, therefore removing all references for it from the source code.
>
> --- a/arch/arm/tools/mach-types
> +++ b/arch/arm/tools/mach-types
> @@ -204,7 +204,6 @@ omaha                       ARCH_OMAHA              OMAHA                   186
>  ta7                    ARCH_TA7                TA7                     187
>  nova                   SA1100_NOVA             NOVA                    188
>  hmk                    ARCH_HMK                HMK                     189
> -karo                   ARCH_KARO               KARO                    190
>  fester                 SA1100_FESTER           FESTER                  191
>  gpi                    ARCH_GPI                GPI                     192
>  smdk2410               ARCH_SMDK2410           SMDK2410                193

i dont think you should be modifying the arm registry. there are
probably a lot of boards listed here that you wont find referenced in
the tree, but this is by design.
-mike
????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?

2010-07-14 20:57:45

by Ryan Mallon

[permalink] [raw]
Subject: Re: [PATCH 3/3] usb/host || arch/arm: Remove dead CONFIG_ARCH_KARO

On 07/14/2010 11:32 PM, Christian Dietrich wrote:
> CONFIG_ARCH_KARO doesn't exist in Kconfig and is never defined anywhere
> else, therefore removing all references for it from the source code.
>
> Signed-off-by: Christian Dietrich <[email protected]>
> ---
> arch/arm/tools/mach-types | 1 -
> drivers/usb/host/isp1362.h | 24 +-----------------------
> 2 files changed, 1 insertions(+), 24 deletions(-)
>
> diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
> index 8f10d24..3d86318 100644
> --- a/arch/arm/tools/mach-types
> +++ b/arch/arm/tools/mach-types
> @@ -204,7 +204,6 @@ omaha ARCH_OMAHA OMAHA 186
> ta7 ARCH_TA7 TA7 187
> nova SA1100_NOVA NOVA 188
> hmk ARCH_HMK HMK 189
> -karo ARCH_KARO KARO 190
> fester SA1100_FESTER FESTER 191
> gpi ARCH_GPI GPI 192
> smdk2410 ARCH_SMDK2410 SMDK2410 193

Don't post patches for the mach-types file. It is generated
automatically from here the ARM machine registry:
http://www.arm.linux.org.uk/developer/machines/.

It is perfectly fine to have a machine type defined in mach-types which
is not supported in the mainline kernel. This allows developers to have
a stable machine id even if their board is not yet supported in the
mainline kernel.

> diff --git a/drivers/usb/host/isp1362.h b/drivers/usb/host/isp1362.h
> index d995351..0f97820 100644
> --- a/drivers/usb/host/isp1362.h
> +++ b/drivers/usb/host/isp1362.h
> @@ -8,29 +8,7 @@
> /*
> * Platform specific compile time options
> */
> -#if defined(CONFIG_ARCH_KARO)
> -#include <asm/arch/hardware.h>
> -#include <asm/arch/pxa-regs.h>
> -#include <asm/arch/karo.h>
> -
> -#define USE_32BIT 1
> -
> -
> -/* These options are mutually eclusive */
> -#define USE_PLATFORM_DELAY 1
> -#define USE_NDELAY 0
> -/*
> - * MAX_ROOT_PORTS: Number of downstream ports
> - *
> - * The chip has two USB ports, one of which can be configured as
> - * an USB device port, so the value of this constant is implementation
> - * specific.
> - */
> -#define MAX_ROOT_PORTS 2
> -#define DUMMY_DELAY_ACCESS do {} while (0)
> -
> -/* insert platform specific definitions for other machines here */
> -#elif defined(CONFIG_BLACKFIN)
> +#if defined(CONFIG_BLACKFIN)
>
> #include <linux/io.h>
> #define USE_32BIT 0

The rest of this patch looks fine. It appears the Karo stuff was added
when the ISP1362 driver was first committed. Probably some left over
development stuff that got missed.

~Ryan

--
Bluewater Systems Ltd - ARM Technology Solution Centre

Ryan Mallon 5 Amuri Park, 404 Barbadoes St
[email protected] PO Box 13 889, Christchurch 8013
http://www.bluewatersys.com New Zealand
Phone: +64 3 3779127 Freecall: Australia 1800 148 751
Fax: +64 3 3779135 USA 1800 261 2934

2010-07-15 09:38:58

by Eric Miao

[permalink] [raw]
Subject: Re: [PATCH 2/3] usb/{gadget,host}: Remove dead CONFIG_CPU_PXA27x

On Wed, Jul 14, 2010 at 8:30 PM, Eric Miao <[email protected]> wrote:
> On Wed, Jul 14, 2010 at 7:32 PM, Christian Dietrich
> <[email protected]> wrote:
>> CONFIG_CPU_PXA27x doesn't exist in Kconfig, therefore removing all
>> references for it from the source code.
>>
>> Signed-off-by: Christian Dietrich <[email protected]>
>> ---
>>  drivers/usb/gadget/pxa27x_udc.c |   16 ----------------
>>  drivers/usb/host/ohci-pxa27x.c  |    8 --------
>>  2 files changed, 0 insertions(+), 24 deletions(-)
>>
>> diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c
>> index 85b0d89..73783f5 100644
>> --- a/drivers/usb/gadget/pxa27x_udc.c
>> +++ b/drivers/usb/gadget/pxa27x_udc.c
>> @@ -2561,12 +2561,6 @@ static void pxa_udc_shutdown(struct platform_device *_dev)
>>                udc_disable(udc);
>>  }
>>
>> -#ifdef CONFIG_CPU_PXA27x
>
> This should be CONFIG_PXA27x, I'll prepare a patch on this.
>

[ARM] pxa: fix incorrect CONFIG_CPU_PXA27x to CONFIG_PXA27x

Reported-by: Christian Dietrich <[email protected]>
Signed-off-by: Eric Miao <[email protected]>

diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c
index 85b0d89..9807624 100644
--- a/drivers/usb/gadget/pxa27x_udc.c
+++ b/drivers/usb/gadget/pxa27x_udc.c
@@ -2561,7 +2561,7 @@ static void pxa_udc_shutdown(struct platform_device *_dev)
udc_disable(udc);
}

-#ifdef CONFIG_CPU_PXA27x
+#ifdef CONFIG_PXA27x
extern void pxa27x_clear_otgph(void);
#else
#define pxa27x_clear_otgph() do {} while (0)
diff --git a/drivers/usb/host/ohci-pxa27x.c b/drivers/usb/host/ohci-pxa27x.c
index a18debd..4181638 100644
--- a/drivers/usb/host/ohci-pxa27x.c
+++ b/drivers/usb/host/ohci-pxa27x.c
@@ -203,7 +203,7 @@ static inline void pxa27x_reset_hc(struct pxa27x_ohci *ohci)
__raw_writel(uhchr & ~UHCHR_FHR, ohci->mmio_base + UHCHR);
}

-#ifdef CONFIG_CPU_PXA27x
+#ifdef CONFIG_PXA27x
extern void pxa27x_clear_otgph(void);
#else
#define pxa27x_clear_otgph() do {} while (0)

2010-07-20 07:11:26

by Christian Dietrich

[permalink] [raw]
Subject: [PATCH] usb/host: Remove dead CONFIG_ARCH_KARO


CONFIG_ARCH_KARO doesn't exist in Kconfig and is never defined anywhere
else, therefore removing all references for it from the source code.

Signed-off-by: Christian Dietrich <[email protected]>
---
drivers/usb/host/isp1362.h | 24 +-----------------------
1 files changed, 1 insertions(+), 23 deletions(-)

diff --git a/drivers/usb/host/isp1362.h b/drivers/usb/host/isp1362.h
index d995351..0f97820 100644
--- a/drivers/usb/host/isp1362.h
+++ b/drivers/usb/host/isp1362.h
@@ -8,29 +8,7 @@
/*
* Platform specific compile time options
*/
-#if defined(CONFIG_ARCH_KARO)
-#include <asm/arch/hardware.h>
-#include <asm/arch/pxa-regs.h>
-#include <asm/arch/karo.h>
-
-#define USE_32BIT 1
-
-
-/* These options are mutually eclusive */
-#define USE_PLATFORM_DELAY 1
-#define USE_NDELAY 0
-/*
- * MAX_ROOT_PORTS: Number of downstream ports
- *
- * The chip has two USB ports, one of which can be configured as
- * an USB device port, so the value of this constant is implementation
- * specific.
- */
-#define MAX_ROOT_PORTS 2
-#define DUMMY_DELAY_ACCESS do {} while (0)
-
-/* insert platform specific definitions for other machines here */
-#elif defined(CONFIG_BLACKFIN)
+#if defined(CONFIG_BLACKFIN)

#include <linux/io.h>
#define USE_32BIT 0
--
1.7.0.4

2010-07-20 20:56:26

by Ryan Mallon

[permalink] [raw]
Subject: Re: [PATCH] usb/host: Remove dead CONFIG_ARCH_KARO

On 07/20/2010 07:08 PM, Christian Dietrich wrote:
>
> CONFIG_ARCH_KARO doesn't exist in Kconfig and is never defined anywhere
> else, therefore removing all references for it from the source code.
>
> Signed-off-by: Christian Dietrich <[email protected]>

Unless someone has a reason why the support needs to stay:

Acked-by: Ryan Mallon <[email protected]>

> ---
> drivers/usb/host/isp1362.h | 24 +-----------------------
> 1 files changed, 1 insertions(+), 23 deletions(-)
>
> diff --git a/drivers/usb/host/isp1362.h b/drivers/usb/host/isp1362.h
> index d995351..0f97820 100644
> --- a/drivers/usb/host/isp1362.h
> +++ b/drivers/usb/host/isp1362.h
> @@ -8,29 +8,7 @@
> /*
> * Platform specific compile time options
> */
> -#if defined(CONFIG_ARCH_KARO)
> -#include <asm/arch/hardware.h>
> -#include <asm/arch/pxa-regs.h>
> -#include <asm/arch/karo.h>
> -
> -#define USE_32BIT 1
> -
> -
> -/* These options are mutually eclusive */
> -#define USE_PLATFORM_DELAY 1
> -#define USE_NDELAY 0
> -/*
> - * MAX_ROOT_PORTS: Number of downstream ports
> - *
> - * The chip has two USB ports, one of which can be configured as
> - * an USB device port, so the value of this constant is implementation
> - * specific.
> - */
> -#define MAX_ROOT_PORTS 2
> -#define DUMMY_DELAY_ACCESS do {} while (0)
> -
> -/* insert platform specific definitions for other machines here */
> -#elif defined(CONFIG_BLACKFIN)
> +#if defined(CONFIG_BLACKFIN)
>
> #include <linux/io.h>
> #define USE_32BIT 0


--
Bluewater Systems Ltd - ARM Technology Solution Centre

Ryan Mallon 5 Amuri Park, 404 Barbadoes St
[email protected] PO Box 13 889, Christchurch 8013
http://www.bluewatersys.com New Zealand
Phone: +64 3 3779127 Freecall: Australia 1800 148 751
Fax: +64 3 3779135 USA 1800 261 2934