21 Mar, 2017

3 commits


31 Jan, 2017

2 commits


09 Sep, 2016

1 commit

  • While fixing another bug, I noticed that bcma manually sets up
    a dma_mask pointer for its child devices. We have a generic
    helper for that now, which should be able to cope better with
    any variations that might be needed to deal with cache coherency,
    unusual DMA address offsets, iommus, or limited DMA masks, none
    of which are currently handled here.

    This changes the core to use the of_dma_configure(), like
    we do for platform devices that are probed directly from
    DT.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Kalle Valo

    Arnd Bergmann
     

23 Mar, 2016

1 commit

  • The bcma driver core can be built with or without DT support, but
    it fails to build when CONFIG_OF=y and CONFIG_OF_IRQ=n, which
    can happen on platforms that do not support IRQ domains.

    ERROR: "irq_create_of_mapping" [drivers/bcma/bcma.ko] undefined!
    ERROR: "of_irq_parse_raw" [drivers/bcma/bcma.ko] undefined!
    ERROR: "of_irq_parse_one" [drivers/bcma/bcma.ko] undefined!

    This adds another compile-time check for OF_IRQ, but also
    gets rid of now unneeded #ifdef checks: Using the simpler
    IS_ENABLED() check for OF_IRQ also covers the case of not
    having CONFIG_OF enabled. The check for CONFIG_OF_ADDRESS
    was added to allow building on architectures without
    OF_ADDRESS, but that has been addressed already in
    b1d06b60e90c ("of: Provide static inline function for
    of_translate_address if needed").

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Kalle Valo

    Arnd Bergmann
     

07 Mar, 2016

1 commit

  • This follows the way of handling other flashes and cleans code a bit. As
    next task we will want to move flash code to ChipCommon driver as:
    1) Flash controllers are accesible using ChipCommon registers
    2) This code isn't MIPS specific
    This change prepares bcma for that.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     

31 Dec, 2015

1 commit

  • So far we were using fs_initcall. It was (and still is) needed because
    struct bus_type has to be registered early. However main bus
    initialization has to happen later as it requires SPROM which depends on
    NVRAM which depends on mtd.
    Solve it by using fs_initcall only for bus_register call and module_init
    for the rest. It affects bcma only when built-in obviously.

    This was tested with BCM4706 and BCM5357C0 (BCM47XX), BCM4708A0
    (ARCH_BCM_5301X) and BCM43225 (PCIe card with bcma as module).

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     

29 Sep, 2015

1 commit

  • of_default_bus_match_table was not exported earlier, so it could only
    be accessed by code compiled into the kernel. A new function
    of_platform_default_populate() was added which uses
    of_default_bus_match_table and this function is also exported. This way
    it is possible to create a bus with the content of
    of_default_bus_match_table and we can remove the hacks from bcma.

    Signed-off-by: Hauke Mehrtens
    Signed-off-by: Kalle Valo

    Hauke Mehrtens
     

11 Aug, 2015

1 commit

  • bus->host_pdev is part of a union so bus->host_pdev != NULL is probably
    also true for PCIe devices, because there it accesses bus->host_pci. If
    we access the dev member at the offset defined in struct
    platform_device in struct pci_dev instead we probably get something
    else.

    This patch adds a new function which returns the host dev struct and
    NULL if we do not have a host dev. When this gets registered on MIPS
    brcm47xx we do not have a host dev in some situations.
    This function could also be used in other places.

    This problem was introduced in this commit:
    commit cae761b5a6bdc597ba476a040fdcd5b4bc559b85
    Author: Rafa? Mi?ecki
    Date: Sun Jun 28 17:17:13 2015 +0200

    bcma: populate bus DT subnodes as platform_device-s

    Signed-off-by: Hauke Mehrtens
    Signed-off-by: Kalle Valo

    Hauke Mehrtens
     

26 Jul, 2015

1 commit

  • Currently of_default_bus_match_table is not exported so we can only use
    this feature when bcma is build into the kernel. This patch removes
    support for child buses when bcma is build as a module as a temporary
    fix for a build problem introduces in this commit:

    commit cae761b5a6bdc597ba476a040fdcd5b4bc559b85
    Author: Rafał Miłecki
    Date: Sun Jun 28 17:17:13 2015 +0200

    bcma: populate bus DT subnodes as platform_device-s

    Reported-by: Stephen Rothwell
    Fixes: cae761b5a6bd ("bcma: populate bus DT subnodes as platform_device-s")
    Signed-off-by: Hauke Mehrtens
    Signed-off-by: Kalle Valo

    Hauke Mehrtens
     

21 Jul, 2015

1 commit


02 Mar, 2015

1 commit


29 Jan, 2015

2 commits


24 Jan, 2015

2 commits


20 Nov, 2014

1 commit


12 Nov, 2014

2 commits


28 Oct, 2014

1 commit


24 Oct, 2014

1 commit

  • Commit 2101e533f41a ("bcma: register bcma as device tree driver")
    introduces a hard dependency on OF_ADDRESS into the bcma driver.
    OF_ADDRESS is specifically disabled for the sparc architecture.
    This results in the following error when building sparc64:allmodconfig.

    drivers/bcma/main.c: In function 'bcma_of_find_child_device':
    drivers/bcma/main.c:150:3: error: implicit declaration of function 'of_translate_address'

    Fixes: 2101e533f41a ("bcma: register bcma as device tree driver")
    Reported-by: Guenter Roeck
    Signed-off-by: Hauke Mehrtens
    Reviewed-by: Guenter Roeck
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

01 Oct, 2014

1 commit

  • This driver is used by the bcm53xx ARM SoC code. Now it is possible to
    give the address of the chipcommon core in device tree and bcma will
    search for all the other cores.

    Signed-off-by: Hauke Mehrtens
    Acked-by: Arnd Bergmann
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

10 Sep, 2014

4 commits


08 Jul, 2014

1 commit


05 Jan, 2014

1 commit

  • This function is used to get a specific core when there is more than
    one core of that specific type. This is used in bgmac to reset all GMAC
    cores.

    Signed-off-by: Hauke Mehrtens
    Acked-by: Rafał Miłecki
    Signed-off-by: David S. Miller

    Hauke Mehrtens
     

20 Dec, 2013

1 commit


17 Oct, 2013

1 commit


23 Jul, 2013

1 commit


28 Jun, 2013

1 commit


07 Mar, 2013

1 commit


09 Feb, 2013

2 commits


07 Feb, 2013

1 commit


05 Feb, 2013

1 commit


31 Jan, 2013

1 commit