23 Mar, 2013
2 commits
-
Basically all drivers can have sdhci_ops struct const, but almost none do.
This patch constifies all sdhci_ops struct declarations where possible.The patch was auto-generated with the following coccinelle semantic patch:
//
@r1@
identifier ops;
identifier fld;
@@
ops.fld = ...;@disable optional_qualifier@
identifier ops != r1.ops;
@@
static
+const
struct sdhci_ops ops = { ... };
//Signed-off-by: Lars-Peter Clausen
Acked-by: Shawn Guo
Signed-off-by: Chris Ball -
The sdhci_pltfm_data struct is never modified within the sdhci_pltfm
module. So make the pdata parameter to sdhci_pltfm_init and
sdhci_pltfm_register const. This allows drivers to declare their
sdhci_pltfm_data struct as const.This patch also makes the sdhci_pltfm_data declarations const where
possible.Signed-off-by: Lars-Peter Clausen
Acked-by: Shawn Guo
Signed-off-by: Chris Ball
12 Dec, 2012
1 commit
-
Pull driver core updates from Greg Kroah-Hartman:
"Here's the large driver core updates for 3.8-rc1.The biggest thing here is the various __dev* marking removals. This
is going to be a pain for the merge with different subsystem trees, I
know, but all of the patches included here have been ACKed by their
various subsystem maintainers, as they wanted them to go through here.If this is too much of a pain, I can pull all of them out of this tree
and just send you one with the other fixes/updates and then, after
3.8-rc1 is out, do the rest of the removals to ensure we catch them
all, it's up to you. The merges should all be trivial, and Stephen
has been doing them all in linux-next for a few weeks now quite
easily.Other than the __dev* marking removals, there's nothing major here,
some firmware loading updates and other minor things in the driver
core.All of these have (much to Stephen's annoyance), been in linux-next
for a while.Signed-off-by: Greg Kroah-Hartman "
Fixed up trivial conflicts in drivers/gpio/gpio-{em,stmpe}.c due to gpio
update.* tag 'driver-core-3.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (93 commits)
modpost.c: Stop checking __dev* section mismatches
init.h: Remove __dev* sections from the kernel
acpi: remove use of __devinit
PCI: Remove __dev* markings
PCI: Always build setup-bus when PCI is enabled
PCI: Move pci_uevent into pci-driver.c
PCI: Remove CONFIG_HOTPLUG ifdefs
unicore32/PCI: Remove CONFIG_HOTPLUG ifdefs
sh/PCI: Remove CONFIG_HOTPLUG ifdefs
powerpc/PCI: Remove CONFIG_HOTPLUG ifdefs
mips/PCI: Remove CONFIG_HOTPLUG ifdefs
microblaze/PCI: Remove CONFIG_HOTPLUG ifdefs
dma: remove use of __devinit
dma: remove use of __devexit_p
firewire: remove use of __devinitdata
firewire: remove use of __devinit
leds: remove use of __devexit
leds: remove use of __devinit
leds: remove use of __devexit_p
mmc: remove use of __devexit
...
07 Dec, 2012
2 commits
-
A-003500: False ADMA Error might be reported when ADMA is used for
multiple block read command with Stop at Block Gap. If PROCTL[SABGREQ]
is set when the particular block's data is received by the System side
logic before entire block (with CRC) data is received by the SD side
logic, and also if ADMA descriptor line is fetched at the same time,
then DMA engine might report false ADMA error. eSDHC might not be able
to Continue (PROCTL[CREQ]=1) after Stop at Block Gap.
This issue will impact the eSDHC IP VVN2.3.Signed-off-by: Haijun Zhang
Signed-off-by: Jerry Huang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball -
The IP versions older than 2.3 didn't support commands with busy
response which expect the TC bit set. But after the VVN2.3, eSDHC
IP has supported it.Signed-off-by: Jerry Huang
Signed-off-by: Chris Ball
29 Nov, 2012
3 commits
-
CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.Signed-off-by: Bill Pemberton
Cc: Manuel Lauss
Cc: Chris Ball
Cc: "Michał Mirosław"
Cc: Jarkko Lavinen
Cc: Venkatraman S
Cc: Viresh Kumar
Cc: Ian Molton
Cc: Bruce Chang
Cc: Harald Welte
Cc: Pierre Ossman
Acked-by: Guennadi Liakhovetski
Signed-off-by: Greg Kroah-Hartman -
CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.Signed-off-by: Bill Pemberton
Cc: Chris Ball
Cc: Manuel Lauss
Cc: "Michał Mirosław"
Cc: Jarkko Lavinen
Cc: Venkatraman S
Cc: Ian Molton
Cc: Bruce Chang
Cc: Harald Welte
Cc: Pierre Ossman
Acked-by: Ludovic Desroches
Acked-by: Viresh Kumar
Acked-by: Guennadi Liakhovetski
Signed-off-by: Greg Kroah-Hartman -
CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.Signed-off-by: Bill Pemberton
Cc: Chris Ball
Cc: "Michał Mirosław"
Cc: Jarkko Lavinen
Cc: Venkatraman S
Cc: Ian Molton
Cc: Bruce Chang
Cc: Harald Welte
Cc: Pierre Ossman
Acked-by: Viresh Kumar
Acked-by: Guennadi Liakhovetski
Signed-off-by: Greg Kroah-Hartman
08 Nov, 2012
1 commit
-
CMD23 causes lots of errors in kernel on some freescale SoCs
(P1020, P1021, P1022, P1024, P1025 and P4080) when MMC card used,
which is because these controllers does not support CMD23,
even on the SoCs which declares CMD23 is supported.
Therefore, we'll not use CMD23.Signed-off-by: Jerry Huang
Signed-off-by: Shaohui Xie
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
05 Sep, 2012
1 commit
-
The register of eSDHC Host Controller Capabilities is not compatible with
standard SDHC register, and eSDHC cannot support End Attribute in NOP ADMA
descriptor. With this patch eSDHC can works in ADMA mode and performance
can be improved.Signed-off-by: Jerry Huang
Signed-off-by: Pan Jiafei
Signed-off-by: Jason Jin
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
26 Mar, 2012
2 commits
-
SD card read was failing (data crc error) on some cards at
maximum possible frequency on P1010 (CCB frequency set to 400MHz).
Some clock deviations are also observed at this frequency.
Hence reduced the mmc clock freq.Signed-off-by: Priyanka Jain
Singed-off-by: Jerry Huang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball -
For FSL ESDHC controllers, when entering sleep the controller will power off,
therefore the registers will lose their values, and the driver should save
the value of registers during suspend and write them back during resume.Signed-off-by: Jerry Huang
Signed-off-by: Jiang Yutang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
12 Feb, 2012
1 commit
-
When eSDHC module is enabled on P5020/P3041/P2041/P1010 with eSDHC
version 2.3, there is following errors:mmc0: Timeout waiting for hardware interrupt.
mmc0: error -110 whilst initialising SD card
mmc0: Unexpected interrupt 0x02000000.
mmc0: Timeout waiting for hardware interrupt.
mmc0: error -110 whilst initialising SD card
mmc0: Unexpected interrupt 0x02000000.It is because eSDHC controller has different bit setting for PROCTL
register at 0x28 comparing SD specification.
This patch sets DMAS bits correctly for byte operation and does not
change the default value of other field of PROCTL register.For other FSL chips, such as MPC8536/P2020, PROCTL[DMAS]
bits are reserved and even if they are set to wrong bits, it will not
take effective.Signed-off-by: Roy Zang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
12 Jan, 2012
1 commit
-
This patch converts the drivers in drivers/mmc/host/* to use the
module_platform_driver() macro which makes the code smaller and a bit
simpler.Signed-off-by: Axel Lin
Acked-by: "Michał Mirosław"
Acked-by: David Brown
Acked-by: Viresh Kumar
Acked-by: Guennadi Liakhovetski
Acked-by: Sascha Hauer
Acked-by: Wolfram Sang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
20 Dec, 2011
1 commit
-
Drop the "state" argument from sdhci_suspend_host. Its only user is the
PCI glue; this allows to move all SDHCI glues to use dev_pm_ops instead.Signed-off-by: Manuel Lauss
Acked-by: Adrian Hunter
Signed-off-by: Chris Ball
27 Oct, 2011
2 commits
-
We are cleaning up the implicit presence of module.h; these guys are
some of the people who just assume it will be there. Call it out
explitly for those that really need it.Signed-off-by: Paul Gortmaker
Signed-off-by: Chris Ball -
Freescale eSDHC registers only support 32-bit accesses, this patch
ensures that all Freescale eSDHC register accesses are 32-bit.Signed-off-by: Xu lei
Signed-off-by: Roy Zang
Signed-off-by: Kumar Gala
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
21 Jul, 2011
3 commits
-
There are a couple of problems left from the sdhci pltfm and OF
consolidation changes.* When building more than one sdhci-pltfm based drivers in the same
image, linker will give multiple definition error on the sdhci-pltfm
helper functions. For example right now, building sdhci-of-esdhc
and sdhci-of-hlwd together is a valid combination from Kconfig view.* With the current build method, there is error with building the
drivers as module, but module installation fails with modprobe.The patch fixes above problems by changing sdhci-pltfm into a module.
To avoid EXPORT_SYMBOL on so many big endian IO accessors, it moves
these accessors into sdhci-pltfm.h as the 'static inline' functions.
As a result, sdhci.h needs to be included in sdhci-pltfm.h, and in
turn can be removed from individual drivers which already include
sdhci-pltfm.h.Signed-off-by: Shawn Guo
Signed-off-by: Chris Ball -
The patch turns the sdhci-of-core common stuff into helper functions
added into sdhci-pltfm.c, and makes sdhci-of device drviers self
registered using the same pair of .probe and .remove used by
sdhci-pltfm device drivers.As a result, sdhci-of-core.c and sdhci-of.h can be eliminated with
those common things merged into sdhci-pltfm.c and sdhci-pltfm.h
respectively.Signed-off-by: Shawn Guo
Acked-by: Anton Vorontsov
Reviewed-by: Wolfram Sang
Signed-off-by: Chris Ball -
The patch migrates the use of sdhci_of_host and sdhci_of_data to
sdhci_pltfm_host and sdhci_pltfm_data, so that the former pair can
be eliminated.Signed-off-by: Shawn Guo
Reviewed-by: Grant Likely
Reviewed-by: Wolfram Sang
Acked-by: Anton Vorontsov
Signed-off-by: Chris Ball
25 Mar, 2011
1 commit
-
sdhci-esdhc-imx does not need SDHCI_QUIRK_NO_CARD_NO_RESET.
Make it OF-specific.Signed-off-by: Richard Zhu
Tested-by: Wolfram Sang
Signed-off-by: Chris Ball
18 Mar, 2011
1 commit
-
It can be worked around using a GPIO which will be done for i.MX later.
Signed-off-by: Wolfram Sang
Acked-by: Anton Vorontsov
Tested-by: Marc Reilly
Tested-by: Eric Benard
Signed-off-by: Chris Ball
23 Oct, 2010
1 commit
-
Put everything which can be shared between the OF and platform version
of this driver into a local .h file.Signed-off-by: Wolfram Sang
Tested-by: Eric Bénard
[cjb: fix compile error: sdhci-esdhc.c->sdhci-esdhc.h]
Signed-off-by: Chris Ball
28 May, 2010
1 commit
-
Unfortunately some architectures #define their read{b,w,l} and
write{b,w,l} I/O accessors which makes the SDHCI I/O accessor functions of
the same names subject to preprocessing. This leads to the following
compiler error,In file included from drivers/mmc/host/sdhci.c:26:
drivers/mmc/host/sdhci.h:318:35: error: macro "writel" passed 3 arguments, but takes just 2Rename the SDHCI I/O functions so that CONFIG_MMC_SDHCI_IO_ACCESSORS can
be enabled for architectures that implement their read{b,w,l} and
write{b,w,l} functions with macros.Signed-off-by: Matt Fleming
Cc: Zhangfei Gao
Acked-by: Anton Vorontsov
Acked-by: Wolfram Sang
Acked-by: Ben Dooks
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
18 Dec, 2009
1 commit
-
This patch breaks down sdhci-of into a core portion and a eSDHC portion,
clearing the path to easily support additional hardware using the same OF
driver.Signed-off-by: Albert Herranz
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds