diff options
author | Peter Chen <peter.chen@freescale.com> | 2012-02-15 20:41:52 -0500 |
---|---|---|
committer | Luis Henriques <luis.henriques@canonical.com> | 2012-04-05 11:17:20 -0400 |
commit | cba52bf30d79aaa5ef10068dbceadc06a7dc716d (patch) | |
tree | 6512911250b98ec29e834120ab9dcbce001e5453 /drivers/usb | |
parent | 782d0edf819df8aaf058bfdb7975dfe287875461 (diff) |
usb: Fix build error due to dma_mask is not at pdev_archdata at ARM
BugLink: http://bugs.launchpad.net/bugs/971808
commit e90fc3cb087ce5c5f81e814358222cd6d197b5db upstream.
When build i.mx platform with imx_v6_v7_defconfig, and after adding
USB Gadget support, it has below build error:
CC drivers/usb/host/fsl-mph-dr-of.o
drivers/usb/host/fsl-mph-dr-of.c: In function 'fsl_usb2_device_register':
drivers/usb/host/fsl-mph-dr-of.c:97: error: 'struct pdev_archdata'
has no member named 'dma_mask'
It has discussed at: http://www.spinics.net/lists/linux-usb/msg57302.html
For PowerPC, there is dma_mask at struct pdev_archdata, but there is
no dma_mask at struct pdev_archdata for ARM. The pdev_archdata is
related to specific platform, it should NOT be accessed by
cross platform drivers, like USB.
The code for pdev_archdata should be useless, as for PowerPC,
it has already gotten the value for pdev->dev.dma_mask at function
arch_setup_pdev_archdata of arch/powerpc/kernel/setup-common.c.
Tested-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/host/fsl-mph-dr-of.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/usb/host/fsl-mph-dr-of.c b/drivers/usb/host/fsl-mph-dr-of.c index 79a66d622f9..8388771c0c0 100644 --- a/drivers/usb/host/fsl-mph-dr-of.c +++ b/drivers/usb/host/fsl-mph-dr-of.c | |||
@@ -93,7 +93,6 @@ struct platform_device * __devinit fsl_usb2_device_register( | |||
93 | pdev->dev.parent = &ofdev->dev; | 93 | pdev->dev.parent = &ofdev->dev; |
94 | 94 | ||
95 | pdev->dev.coherent_dma_mask = ofdev->dev.coherent_dma_mask; | 95 | pdev->dev.coherent_dma_mask = ofdev->dev.coherent_dma_mask; |
96 | pdev->dev.dma_mask = &pdev->archdata.dma_mask; | ||
97 | *pdev->dev.dma_mask = *ofdev->dev.dma_mask; | 96 | *pdev->dev.dma_mask = *ofdev->dev.dma_mask; |
98 | 97 | ||
99 | retval = platform_device_add_data(pdev, pdata, sizeof(*pdata)); | 98 | retval = platform_device_add_data(pdev, pdata, sizeof(*pdata)); |