19 Apr, 2017
1 commit
-
The dw_mmio driver disables the block clock before unregistering
the host. The code unregistering the host may access the SPI block
registers. If register access happens with block clock disabled,
this may lead to a bus hang. Disable the clock after unregistering
the host to prevent such situation.This bug was observed on Altera Cyclone V SoC.
Signed-off-by: Marek Vasut
Cc: Andy Shevchenko
Cc: Mark Brown
Signed-off-by: Mark Brown
06 Feb, 2016
1 commit
-
devm_ioremap_resource() validates its parameters and issues an error message if
needed.Signed-off-by: Andy Shevchenko
Signed-off-by: Mark Brown
20 Oct, 2015
1 commit
-
Convert the driver to use unfied device property API instead of OF one.
Signed-off-by: Andy Shevchenko
Signed-off-by: Mark Brown
22 Aug, 2015
1 commit
-
The commit dd11444327ce ("spi: dw-spi: Convert 16bit accesses to 32bit
accesses") changed all 16bit accesses in the DW_apb_ssi driver to 32bit.
This, unfortunately, breaks data register access on picoXcell, where the
DW IP needs data register accesses to be word accesses (all other
accesses appear to be OK).This change introduces a new master variable to allow interface drivers
to specify that 16bit data transfer I/O is required. This change also
introduces the ability to set this variable via device tree bindings in
the MMIO interface driver. Both the core and the MMIO interface driver
default to the current 32bit behaviour.Before this change, on a picoXcell pc3x3:
spi_master spi32766: interrupt_transfer: fifo overrun/underrun
m25p80 spi32766.0: error -5 reading 9f
m25p80: probe of spi32766.0 failed with error -5After this change:
m25p80 spi32766.0: m25p40 (512 Kbytes)Fixes: dd11444327ce ("spi: dw-spi: Convert 16bit accesses to 32bit accesses")
Signed-off-by: Michael van der Westhuizen
Reviewed-by: Andy Shevchenko
Signed-off-by: Mark Brown
20 Oct, 2014
1 commit
-
A platform_driver does not need to set an owner, it will be populated by the
driver core.Signed-off-by: Wolfram Sang
04 Jul, 2014
1 commit
-
Allow probing the dw-mmio from devicetree.
Signed-off-by: Steffen Trumtrar
Signed-off-by: Mark Brown
25 Apr, 2014
1 commit
-
Also, use this opportunity to let spi_chip_sel() handle chip-select
deactivation as well.Signed-off-by: Baruch Siach
Signed-off-by: Mark Brown
03 Feb, 2014
1 commit
-
Use the platform_device id to uniquely identify each SPI master instance.
Cc: Jean-Hugues Deschenes
Signed-off-by: Baruch Siach
Signed-off-by: Mark Brown
31 Dec, 2013
2 commits
-
This is required for common clock support.
Signed-off-by: Baruch Siach
Signed-off-by: Mark Brown -
Migrate mmio code and core driver to managed resources to reduce boilerplate
error handling code. Also, handle clk_enable() failure while at it, and drop
unused dw_spi iolen field.Signed-off-by: Baruch Siach
Signed-off-by: Mark Brown
17 Sep, 2013
1 commit
-
Free_irq is not needed if there has been no request_irq. Free_irq is
removed from both the probe and remove functions. The correct request_irq
and free_irq appear to be in the add_host and remove_host functions in
spi-dw.c.A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@@
expression e;
@@*e = platform_get_irq(...);
... when != request_irq(e,...)
*free_irq(e,...)
//Signed-off-by: Julia Lawall
Signed-off-by: Mark Brown
13 May, 2013
1 commit
-
The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.Signed-off-by: Jingoo Han
Acked-by: Grant Likely
Signed-off-by: Mark Brown
08 Dec, 2012
1 commit
-
CONFIG_HOTPLUG is going away as an option. As result the __dev*
markings will be going away.Remove use of __devinit, __devexit_p, __devinitdata, __devinitconst,
and __devexit.Bill Pemberton has done most of the legwork on this series. I've used
his script to purge the attributes from the drivers/gpio tree.Reported-by: Bill Pemberton
Signed-off-by: Grant Likely
01 Nov, 2011
1 commit
-
We are clipping down the presence of module.h, since it was
everywhere. If you really need it, you better call it out,
as per this changeset.Signed-off-by: Paul Gortmaker
25 Oct, 2011
1 commit
-
For simple modules that contain a single platform_driver without any
additional setup code then ends up being a block of duplicated
boilerplate. This patch adds a new macro, module_platform_driver(),
which replaces the module_init()/module_exit() registrations with
template functions.Signed-off-by: Grant Likely
Acked-by: Greg Kroah-Hartman
Reviewed-by: Magnus Damm
Reviewed-by: Mark Brown
Reviewed-by: Stephen Boyd
06 Jun, 2011
1 commit
-
Sort the SPI makefile and enforce the naming convention spi_*.c for
spi drivers.This change also rolls the contents of atmel_spi.h into the .c file
since there is only one user of that particular include file.v2: - Use 'spi-' prefix instead of 'spi_' to match what seems to be
be the predominant pattern for subsystem prefixes.
- Clean up filenames in Kconfig and header comment blocksSigned-off-by: Grant Likely
Acked-by: Wolfram Sang
Acked-by: Linus Walleij