lkml.org 
[lkml]   [2018]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.18 072/197] mfd: sm501: Set coherent_dma_mask when creating subdevices
    Date
    4.18-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Guenter Roeck <linux@roeck-us.net>

    [ Upstream commit 2f606da78230f09cf1a71fde6ee91d0c710fa2b2 ]

    Instantiating the sm501 OHCI subdevice results in a kernel warning.

    sm501-usb sm501-usb: SM501 OHCI
    sm501-usb sm501-usb: new USB bus registered, assigned bus number 1
    WARNING: CPU: 0 PID: 1 at ./include/linux/dma-mapping.h:516
    ohci_init+0x194/0x2d8
    Modules linked in:

    CPU: 0 PID: 1 Comm: swapper Tainted: G W
    4.18.0-rc7-00178-g0b5b1f9a78b5 #1
    PC is at ohci_init+0x194/0x2d8
    PR is at ohci_init+0x168/0x2d8
    PC : 8c27844c SP : 8f81dd94 SR : 40008001
    TEA : 29613060
    R0 : 00000000 R1 : 00000000 R2 : 00000000 R3 : 00000202
    R4 : 8fa98b88 R5 : 8c277e68 R6 : 00000000 R7 : 00000000
    R8 : 8f965814 R9 : 8c388100 R10 : 8fa98800 R11 : 8fa98928
    R12 : 8c48302c R13 : 8fa98920 R14 : 8c48302c
    MACH: 00000096 MACL: 0000017c GBR : 00000000 PR : 8c278420

    Call trace:
    [<(ptrval)>] usb_add_hcd+0x1e8/0x6ec
    [<(ptrval)>] _dev_info+0x0/0x54
    [<(ptrval)>] arch_local_save_flags+0x0/0x8
    [<(ptrval)>] arch_local_irq_restore+0x0/0x24
    [<(ptrval)>] ohci_hcd_sm501_drv_probe+0x114/0x2d8
    ...

    Initialize coherent_dma_mask when creating SM501 subdevices to fix
    the problem.

    Fixes: b6d6454fdb66f ("mfd: SM501 core driver")
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/mfd/sm501.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/drivers/mfd/sm501.c
    +++ b/drivers/mfd/sm501.c
    @@ -715,6 +715,7 @@ sm501_create_subdev(struct sm501_devdata
    smdev->pdev.name = name;
    smdev->pdev.id = sm->pdev_id;
    smdev->pdev.dev.parent = sm->dev;
    + smdev->pdev.dev.coherent_dma_mask = 0xffffffff;

    if (res_count) {
    smdev->pdev.resource = (struct resource *)(smdev+1);

    \
     
     \ /
      Last update: 2018-09-13 16:10    [W:3.710 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site