17 Jun, 2020

1 commit

  • bcm63xx arch resets the SPI controller at early boot. However, bmips arch
    needs to perform a reset when probing the driver.

    Signed-off-by: Álvaro Fernández Rojas
    Reviewed-by: Philipp Zabel
    Reviewed-by: Florian Fainelli
    Link: https://lore.kernel.org/r/20200616173235.3473149-2-noltari@gmail.com
    Signed-off-by: Mark Brown

    Álvaro Fernández Rojas
     

15 Oct, 2019

1 commit


02 Aug, 2019

1 commit

  • We don't need dev_err() messages when platform_get_irq() fails now that
    platform_get_irq() prints an error message itself when something goes
    wrong. Let's remove these prints with a simple semantic patch.

    //
    @@
    expression ret;
    struct platform_device *E;
    @@

    ret =
    (
    platform_get_irq(E, ...)
    |
    platform_get_irq_byname(E, ...)
    );

    if ( \( ret < 0 \| ret

    While we're here, remove braces on if statements that only have one
    statement (manually).

    Cc: Mark Brown
    Cc: linux-spi@vger.kernel.org
    Cc: Greg Kroah-Hartman
    Signed-off-by: Stephen Boyd
    Link: https://lore.kernel.org/r/20190730181557.90391-42-swboyd@chromium.org
    Signed-off-by: Mark Brown

    Stephen Boyd
     

31 May, 2019

1 commit

  • Based on 3 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version this program is distributed in the
    hope that it will be useful but without any warranty without even
    the implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version [author] [kishon] [vijay] [abraham]
    [i] [kishon]@[ti] [com] this program is distributed in the hope that
    it will be useful but without any warranty without even the implied
    warranty of merchantability or fitness for a particular purpose see
    the gnu general public license for more details

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version [author] [graeme] [gregory]
    [gg]@[slimlogic] [co] [uk] [author] [kishon] [vijay] [abraham] [i]
    [kishon]@[ti] [com] [based] [on] [twl6030]_[usb] [c] [author] [hema]
    [hk] [hemahk]@[ti] [com] this program is distributed in the hope
    that it will be useful but without any warranty without even the
    implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 1105 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Allison Randal
    Reviewed-by: Richard Fontana
    Reviewed-by: Kate Stewart
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190527070033.202006027@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

08 Aug, 2017

1 commit

  • platform_get_irq() returns an error code, but the spi-bcm63xx driver
    ignores it and always returns -ENXIO. This is not correct and,
    prevents -EPROBE_DEFER from being propagated properly.

    Notice that platform_get_irq() no longer returns 0 on error:
    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e330b9a6bb35dc7097a4f02cb1ae7b6f96df92af

    Print and propagate the return value of platform_get_irq on failure.

    This issue was detected with the help of Coccinelle.

    Signed-off-by: Gustavo A. R. Silva
    Signed-off-by: Mark Brown

    Gustavo A. R. Silva
     

21 Jun, 2017

1 commit


22 Feb, 2017

3 commits

  • Fix compilation by renaming argument dev to spi as expected by the code.

    Fixes the following error:

    drivers/spi/spi-bcm63xx.c: In function ‘bcm63xx_spi_max_length’:
    drivers/spi/spi-bcm63xx.c:434:50: error: ‘spi’ undeclared (first use in this function)
    struct bcm63xx_spi *bs = spi_master_get_devdata(spi->master);
    ^~~

    Fixes: 0135c03df914 ("spi/bcm63xx: make spi subsystem aware of message size limits")
    Signed-off-by: Jonas Gorski
    Signed-off-by: Mark Brown

    Jonas Gorski
     
  • Add required binding support to probe through device tree.

    Use the compatible instead of the resource size for identifiying the
    block type, and allow reducing the number of cs lines through OF.

    Signed-off-by: Jonas Gorski
    Signed-off-by: Mark Brown

    Jonas Gorski
     
  • The bcm63xx SPI controller does not allow manual control of the CS
    lines and will toggle it automatically before and after sending data,
    so we are limited to messages that fit in the FIFO buffer. Since the CS
    lines aren't available as GPIOs either, we will need to make slave
    drivers aware of this limitation so they can handle them accordingly.

    Signed-off-by: Jonas Gorski
    Signed-off-by: Mark Brown

    Jonas Gorski
     

12 Jan, 2016

1 commit


17 Nov, 2015

2 commits

  • With a 64-bit resource_size_t, we get a build warning on bcm63xx_spi_probe:

    drivers/spi/spi-bcm63xx.c:565:16: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'resource_size_t {aka long long unsigned int}' [-Wformat=]

    As we are printing a resource, we can just use the %pr format
    specifier that pretty-prints the address and avoids the warning.

    Signed-off-by: Arnd Bergmann
    Acked-by: Florian Fainelli
    Signed-off-by: Mark Brown

    Arnd Bergmann
     
  • drivers/spi/spi-bcm63xx.c: In function ‘bcm63xx_spi_setup_transfer’:
    drivers/spi/spi-bcm63xx.c:207: warning: ‘clk_cfg’ may be used uninitialized in this function

    While this is a false positive, it can easily be avoided by selecting
    the default clock configuration first.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Mark Brown

    Geert Uytterhoeven
     

23 Oct, 2015

1 commit

  • Move all register definitions and structs into the driver. This allows
    us dropping the platform_data struct and drop any arch specific
    includes. Make use of different device names to identify the version of
    the block we have.

    Since we now have full control over the message width, we can drop the
    size check, which was broken anyway, since it never set ret to any error
    code.

    Also since we now have no arch depedendent resources, we can now allow
    compiling it for any arch, hidden behind COMPILE_TEST.

    Signed-off-by: Jonas Gorski
    Signed-off-by: Mark Brown

    Jonas Gorski
     

13 Oct, 2015

2 commits


15 Sep, 2015

4 commits


22 Dec, 2014

1 commit


20 Oct, 2014

1 commit


15 Apr, 2014

1 commit


30 Mar, 2014

2 commits


26 Mar, 2014

1 commit


10 Feb, 2014

1 commit


03 Feb, 2014

1 commit


23 Jan, 2014

1 commit


18 Dec, 2013

6 commits


15 Nov, 2013

1 commit


26 Sep, 2013

1 commit


01 Sep, 2013

2 commits


29 Aug, 2013

2 commits