]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: gadget: bdc: 64-bit pointer capability check
authorSrinath Mannam <srinath.mannam@broadcom.com>
Thu, 15 Jun 2017 09:09:22 +0000 (14:39 +0530)
committerSasha Levin <alexander.levin@microsoft.com>
Wed, 23 May 2018 01:33:48 +0000 (21:33 -0400)
[ Upstream commit c8e4e5bdb62a5ac6f860ebcaaf7b467b62f453f1 ]

Corrected the register to check the 64-bit pointer
capability state. 64-bit pointer implementation capability
was checking in wrong register, which causes the BDC
enumeration failure in 64-bit memory address.

Fixes: efed421a94e6 ("usb: gadget: Add UDC driver for
Broadcom USB3.0 device controller IP BDC")

Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Srinath Mannam <srinath.mannam@broadcom.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
drivers/usb/gadget/udc/bdc/bdc_core.c

index 5c8f4effb62ac2ef09ae65e9fcddb707ff9d473c..caec234822c65e1bf2f0f30531f5ae979752e7d5 100644 (file)
@@ -476,7 +476,7 @@ static int bdc_probe(struct platform_device *pdev)
        bdc->dev = dev;
        dev_dbg(bdc->dev, "bdc->regs: %p irq=%d\n", bdc->regs, bdc->irq);
 
-       temp = bdc_readl(bdc->regs, BDC_BDCSC);
+       temp = bdc_readl(bdc->regs, BDC_BDCCAP1);
        if ((temp & BDC_P64) &&
                        !dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64))) {
                dev_dbg(bdc->dev, "Using 64-bit address\n");