Commit graph

506,942 commits

Author SHA1 Message Date
Takashi Iwai
60478295d6 ALSA: asihpi: Fix unlocked snd_pcm_stop() call
snd_pcm_stop() must be called in the PCM substream lock context.

Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-07-15 18:12:49 +02:00
Dan Carpenter
b2781e1021 svcrdma: underflow issue in decode_write_list()
My static checker marks everything from ntohl() as untrusted and it
complains we could have an underflow problem doing:

	return (u32 *)&ary->wc_array[nchunks];

Also on 32 bit systems the upper bound check could overflow.

Cc: stable@vger.kernel.org
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2013-07-15 11:46:23 -04:00
Mark Brown
4734dc96ea ASoC: kirkwood-i2s: Use devm_clk_get() for extclk
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 16:43:15 +01:00
Mark Brown
30d3924852 ASoC: kirkwood: Enable build on non-Kirkwood platforms
Improve build coverage by enabling build on other platforms if COMPILE_TEST
is enabled.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 16:43:15 +01:00
Mark Brown
c50c2f7af1 ASoC: kirkwood: Remove unused headers
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 16:43:14 +01:00
Fabio Estevam
84bb084725 ARM: dts: imx51-babbage: Pass a real clock to the codec
On imx51_babbage the codec clock is activated via GPIO4_26.

Provide a real clock to the sgtl5000 codec via device tree.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-07-15 22:28:52 +08:00
Trond Myklebust
1540c5d3cb SUNRPC: Fix another issue with rpc_client_register()
Fix the error pathway if rpcauth_create() fails.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2013-07-15 10:15:54 -04:00
Fengguang Wu
68593c9340 ALSA: hdspm - remove unneeded semicolon
sound/pci/rme9652/hdspm.c:1110:2-3: Unneeded semicolon

Generated by: coccinelle/misc/semicolon.cocci

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-07-15 15:46:13 +02:00
Sergey Senozhatsky
a01c34f72e radeon kms: do not flush uninitialized hotplug work
Fix a warning from lockdep caused by calling flush_work() for
uninitialized hotplug work. Initialize hotplug_work, audio_work
and reset_work upon successful radeon_irq_kms_init() completion
and thus perform hotplug flush_work only when rdev->irq.installed
is true.

[    4.790019] [drm] Loading CEDAR Microcode
[    4.790943] r600_cp: Failed to load firmware "radeon/CEDAR_smc.bin"
[    4.791152] [drm:evergreen_startup] *ERROR* Failed to load firmware!
[    4.791330] radeon 0000:01:00.0: disabling GPU acceleration

[    4.792633] INFO: trying to register non-static key.
[    4.792792] the code is fine but needs lockdep annotation.
[    4.792953] turning off the locking correctness validator.

[    4.793114] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 3.11.0-rc0-dbg-10676-gfe56456-dirty #1816
[    4.793314] Hardware name: Acer             Aspire 5741G    /Aspire 5741G    , BIOS V1.20 02/08/2011
[    4.793507]  ffffffff821fd810 ffff8801530b9a18 ffffffff8160434e 0000000000000002
[    4.794155]  ffff8801530b9ad8 ffffffff810b8404 ffff8801530b0798 ffff8801530b0000
[    4.794789]  ffff8801530b9b00 0000000000000046 00000000000004c0 ffffffff00000000
[    4.795418] Call Trace:
[    4.795573]  [<ffffffff8160434e>] dump_stack+0x4e/0x82
[    4.795731]  [<ffffffff810b8404>] __lock_acquire+0x1a64/0x1d30
[    4.795893]  [<ffffffff814a87f0>] ? dev_vprintk_emit+0x50/0x60
[    4.796034]  [<ffffffff810b8fb4>] lock_acquire+0xa4/0x200
[    4.796216]  [<ffffffff8106cd75>] ? flush_work+0x5/0x280
[    4.796375]  [<ffffffff8106cdad>] flush_work+0x3d/0x280
[    4.796520]  [<ffffffff8106cd75>] ? flush_work+0x5/0x280
[    4.796682]  [<ffffffff810b659d>] ? trace_hardirqs_on_caller+0xfd/0x1c0
[    4.796862]  [<ffffffff8131d775>] ? delay_tsc+0x95/0xf0
[    4.797024]  [<ffffffff8141bb8b>] radeon_irq_kms_fini+0x2b/0x70
[    4.797186]  [<ffffffff814557c9>] evergreen_init+0x2a9/0x2e0
[    4.797347]  [<ffffffff813ebb1f>] radeon_device_init+0x5ef/0x700
[    4.797511]  [<ffffffff81335bc7>] ? pci_find_capability+0x47/0x50
[    4.797672]  [<ffffffff813edaed>] radeon_driver_load_kms+0x8d/0x150
[    4.797843]  [<ffffffff813ce426>] drm_get_pci_dev+0x166/0x280
[    4.798007]  [<ffffffff8116cff5>] ? kfree+0xf5/0x2e0
[    4.798168]  [<ffffffff813ea298>] ? radeon_pci_probe+0x98/0xd0
[    4.798329]  [<ffffffff813ea2aa>] radeon_pci_probe+0xaa/0xd0
[    4.798489]  [<ffffffff81339404>] pci_device_probe+0x84/0xe0
[    4.798644]  [<ffffffff814ac7d6>] driver_probe_device+0x76/0x240
[    4.798805]  [<ffffffff814aca73>] __driver_attach+0x93/0xa0
[    4.798948]  [<ffffffff814ac9e0>] ? __device_attach+0x40/0x40
[    4.799126]  [<ffffffff814aa82b>] bus_for_each_dev+0x6b/0xb0
[    4.799272]  [<ffffffff814ac2be>] driver_attach+0x1e/0x20
[    4.799434]  [<ffffffff814abec0>] bus_add_driver+0x1f0/0x280
[    4.799596]  [<ffffffff814ad0e4>] driver_register+0x74/0x150
[    4.799758]  [<ffffffff8133923d>] __pci_register_driver+0x5d/0x60
[    4.799936]  [<ffffffff81d16efc>] ? ttm_init+0x67/0x67
[    4.800081]  [<ffffffff813ce655>] drm_pci_init+0x115/0x130
[    4.800243]  [<ffffffff81d16efc>] ? ttm_init+0x67/0x67
[    4.800405]  [<ffffffff81d16f98>] radeon_init+0x9c/0xba
[    4.800586]  [<ffffffff810002ca>] do_one_initcall+0xfa/0x150
[    4.800746]  [<ffffffff81073f60>] ? parse_args+0x120/0x330
[    4.800909]  [<ffffffff81cdafae>] kernel_init_freeable+0x111/0x191
[    4.801052]  [<ffffffff81cda87a>] ? do_early_param+0x88/0x88
[    4.801233]  [<ffffffff815fb670>] ? rest_init+0x140/0x140
[    4.801393]  [<ffffffff815fb67e>] kernel_init+0xe/0x180
[    4.801556]  [<ffffffff8160dcac>] ret_from_fork+0x7c/0xb0
[    4.801718]  [<ffffffff815fb670>] ? rest_init+0x140/0x140

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2013-07-15 09:37:38 -04:00
Alex Deucher
13f69c2c9c drm/radeon/dpm/sumo: handle boost states properly when forcing a perf level
Need to properly enable/disable boost states when forcing a performance
level.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-07-15 09:37:25 -04:00
Alex Deucher
1c01103cb9 drm/radeon: align VM PTBs (Page Table Blocks) to 32K
Covers requirements of all current asics.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2013-07-15 09:37:10 -04:00
Takashi Iwai
1abfeb03a9 ASoC: Updates for v3.11
The biggest change here is the OMAP change, these are larger than I'd
 have liked but make the driver actually usable - during the merge window
 OMAP removed support for non-DT OMAP4 boards but in doing so removed the
 method of accessing DMA channels used by the ASoC drivers rendering them
 unusuable.
 
 Otherwise nothing exciting, the symmetric rates change for WM8978 is a
 fix for the information we expose to userspace.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJR48wCAAoJELSic+t+oim9RoMP/3/yZZ0wd73a9jIr//Yu4zLc
 YHyLjbPj/xbfOqFHye83Lt5UcYvDgfuIEgiEHmN5rzdIZpWjdBBQZZu9eW/3/nG6
 wPkF09HBjpJs9WH0XGKFTrXvANWPWdgCxc97OfGXkcF/9GMsXkYjUMZ6Tk3UkJ9e
 10sXZwJqaWtco6r0Nh4NCAlajhcD6bBBXaWtg7Fh4dl7Z9TXXY+mbE6mazSYlCY0
 yMnuyPWHq8WPn4+uh5F3ECOTY11NsGi99dxIRmJwAxHQP6ptYvjJt9bjrBp0o0kp
 F7jKZxFuzF5tmlrCMSubo7sZ2/IbCnZ6Sq4jgIbDQubd30BnmPhWVh0EJJYNEOAE
 3wyvaLpdNDwUhPrZYtWIb3muMtH0WDNIeyYi/GscMP0uiuLzA+PVEzsVIhKK5WLb
 frp4ayJbhBaPTIj3wpCxPASsjc1uT+3smNjTIj0VcfBYqOnncIcVOhYAXn+xUHdl
 B54OgZ8PRSgXGy+fDRUNIjHs7zXsJN6w0+E7L2Ry+NxPte2ovzK6dH3KMiFIFFOF
 al8ZSFUAnvqJc43YlPcCS5u96WrlxrqWBjAtZj13hYZb25CcxRH0jKYG0k3RlPx/
 uE8+ddKVd0VLpEy7iaje6Zti6cYYOK4ay6h5Z0WyNq6y6OsB52VW0hU1Qj+BnQ15
 m+dj6J+0HjY2CLYz7ZMy
 =Juij
 -----END PGP SIGNATURE-----

Merge tag 'asoc-v3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v3.11

The biggest change here is the OMAP change, these are larger than I'd
have liked but make the driver actually usable - during the merge window
OMAP removed support for non-DT OMAP4 boards but in doing so removed the
method of accessing DMA channels used by the ASoC drivers rendering them
unusuable.

Otherwise nothing exciting, the symmetric rates change for WM8978 is a
fix for the information we expose to userspace.
2013-07-15 14:29:07 +02:00
Thomas Renninger
8b5301c5ff platform / thinkpad: Remove deprecated hotkey_report_mode parameter
It is somewhat strange that the default value to support the
depracated interface is set (1).

Anyway this has existed for years.  The previous patch already
removed the functionality to still export events through /proc.
Now this param is useless and should vanish too.

Signed-off-by: Thomas Renninger <trenn@suse.de>
Acked-by: Matthew Garrett <matthew.garrett@nebula.com>
Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-07-15 13:57:00 +02:00
Thomas Renninger
1696d9dc57 ACPI: Remove the old /proc/acpi/event interface
It is quite some time that this one has been deprecated.
Get rid of it.

Should some really important user be overseen, it may be reverted and
the userspace program worked on first, but it is time to do something
to get rid of this old stuff...

Signed-off-by: Thomas Renninger <trenn@suse.de>
Acked-by: Matthew Garrett <matthew.garrett@nebula.com>
Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-07-15 13:56:36 +02:00
Mark Brown
70f092a585 Merge remote-tracking branch 'spi/fix/xilinx' into spi-linus 2013-07-15 11:46:16 +01:00
Mark Brown
52bc441ae7 Merge remote-tracking branch 'spi/fix/setup' into spi-linus 2013-07-15 11:46:15 +01:00
Mark Brown
069e1572d7 Merge remote-tracking branch 'spi/fix/s3c64xx' into spi-linus 2013-07-15 11:46:14 +01:00
Michal Simek
7b3b7432ae spi/xilinx: Simplify irq allocation
Use devm_request_irq() for irq allocation which
simplify driver code.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:53 +01:00
Michal Simek
be3acdff94 spi/xilinx: Use of_property_read_u32 for reading value from node
It simplifies driver probing.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:53 +01:00
Michal Simek
ad3fdbcaf9 spi/xilinx: Clean ioremap calling
devm_ioremap_resource() automatically checks that
struct resource is initialized.
Also group platform_get_resource() and devm_ioremap_resource()
together.
And remove mem resource from struct xilinx_spi.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:53 +01:00
Michal Simek
5586c09e19 spi/xilinx: Remove CONFIG_OF from the driver
dev.of_node is in struct device all the time.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:53 +01:00
Mark Brown
7cb2abd05f spi/xilinx: Refer to platform device as pdev in probe() and remove()
This is a more traditional name and makes things a bit clearer when
referring to actual struct devices as we do frequently during probe().

Signed-off-by: Mark Brown <broonie@linaro.org>
Acked-by: Michal Simek <michal.simek@xilinx.com>
2013-07-15 11:45:52 +01:00
Mark Brown
d81c0bbbf8 spi/xilinx: Remove remains of of_platform device registration
In the past there used to be a separate platform device type for device
tree systems so the probe and removal functions were split into generic
and bus sections. Since this is no longer the case simplify the code (and
remove some unprototyped exports) by factoring everything into the bus
probe() and remove().

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:52 +01:00
Mark Brown
c40537d008 spi/xilinx: Convert to devm_ioremap_resource()
Saves code and reduces the possibility of error.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:52 +01:00
Andy Shevchenko
cd4c424463 spi: tle62x0: dump small buffers using %*ph
We have nice specifier in kernel for that.

It changes separator from ',' (comma) to space, though it's not a big deal
since it's just a debug message.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:45:24 +01:00
Wei Yongjun
86562d04fc spi: tegra114: remove redundant dev_err call in tegra_spi_probe()
There is a error message within devm_ioremap_resource
already, so remove the dev_err call to avoid redundant
error message.

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:44:21 +01:00
Qipan Li
94b1f0dfa6 spi: sirf: add missed spi mode_bits that SiRFSoC hardware supports
Missing this will cause some user cases fail when they want to change spi
transfer mode.

Signed-off-by: Qipan Li <Qipan.Li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:43:54 +01:00
Girish K S
9f4b323803 spi: s3c64xx: add missing check for polling mode
Due to changes in mainline prior to submission the spi device detection
in polling mode breaks. This revealed the missing check for polling
during dma prepare. This patch adds the missing check.

Signed-off-by: Girish K S <ks.giri@samsung.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:43:14 +01:00
Mika Westerberg
1de7061253 spi/pxa2xx: enable DMA on newer Intel LPSS silicon
There is an additional bit in the Intel LPSS SPI private registers that
needs to be set in order to be able to use DMA with the SPI controller.
Enable this as well.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:42:23 +01:00
Mark Brown
2d0c6148e3 spi/omap-100k: Convert to module_platform_driver()
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:31 +01:00
Mark Brown
13cd19e855 spi/omap-100k: Prepare and unprepare clocks
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:31 +01:00
Mark Brown
022a9412ec spi/omap-100k: Convert to devm_clk_get()
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:30 +01:00
Mark Brown
da60b85506 spi/omap-100k: Convert to use core message queue implementation
Saves some code duplication and gets us the benefits of any improvements
in the core code.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:30 +01:00
Mark Brown
e8153ab3d7 spi/omap-100k: Factor message transfer function out of work queue
In preparation for removing the custom workqueue.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:30 +01:00
Mark Brown
69ea672a13 spi/omap-100k: Use core functionality to check validity of transfers
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:30 +01:00
Mark Brown
407d600f1f spi/omap-100k: Remove empty reset function
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:39:29 +01:00
Fabio Estevam
8498bce934 spi: spi-mxs: Check the return value from stmp_reset_block()
stmp_reset_block() may fail, so let's check its return value and propagate it in
the case of error.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:38:42 +01:00
Fabio Estevam
9c4a39afaa spi: spi-mxs: Check the return value from clk_prepare_enable()
clk_prepare_enable() may fail, so let's check its return value and propagate it
in the case of error.

While at it, rename 'out_free_dma' to 'out_disable_clk' so that it can properly
describe its purpose.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:38:42 +01:00
Fabio Estevam
e11933f626 spi: spi-mxs: Fix the error path sequence
On mxs_spi_probe() the dma channels are requested prior to enabling the SSP
clock, so in the error path we should disable the SSP clock first and
release the DMA channels later.

Same logic applies in mxs_spi_remove().

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:38:41 +01:00
Fabio Estevam
83174626cc spi: spi-imx: Check the return value from clk_prepare_enable()
clk_prepare_enable() may fail, so let's check its return value and propagate it
in the case of error.

While at it, fix the order of clk_disable_unprepare calls: clk_ipg should be
disabled first, followed by clk_per.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:56 +01:00
Fabio Estevam
130b82c047 spi: spi-imx: Use devm functions
Using devm functions can make the code smaller and cleaner.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:56 +01:00
H Hartley Sweeten
f7ef1da9e2 spi: spi-ep93xx: move the clock divider calcs into ep93xx_spi_chip_setup()
The divider values stored in the per chip data are only used to set the
registers in the hardware to generate the desired SPI clock. Since these
are calculated per transfer based on the t->speed_hz there is no reason
keep them in the per chip data.

Move the ep93xx_spi_calc_divisors() call into ep93xx_spi_chip_setup()
and return the dividers thru pointers. Remove the divider values from
the per chip data structure.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:14 +01:00
H Hartley Sweeten
22c1b69ea8 spi: spi-ep93xx: don't bother calculating the divisors in ep93xx_spi_setup()
The divisors needed to generate the SPI clock are calculated per
transfer based on the t->speed_hz. There is no reason to calculate
them in ep93xx_spi_setup().

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:14 +01:00
H Hartley Sweeten
e6eb8d9bb7 spi: spi-ep93xx: use devm_clk_get()
Use devm_clk_get() so that the clk_put() happens automatically when
the last reference to this driver is dropped.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:14 +01:00
H Hartley Sweeten
d9b65dfd44 spi: spi-ep93xx: remove 'dss' from per chip private data
This value is only needed to set the bits per word for each transfer
of a message. There is no reason to set the value in ep93xx_spi_enable()
because ep93xx_spi_process_transfer() sets it again for each transfer.

Just pass the t->bits_per_word directly to ep93xx_spi_chip_setup() in
ep93xx_spi_process_transfer() and remove 'dss' from the per chip private
data.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:14 +01:00
H Hartley Sweeten
b2d185edba spi: spi-ep93xx: remove dev_err() for kzalloc() failure
The kzalloc() failure will have already output a message.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:14 +01:00
H Hartley Sweeten
48a7776e98 spi: spi-ep93xx: get platform resources early in (*probe)
Get the platform resources early in the (*probe) to minimize the number
of goto's in the error path.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:13 +01:00
H Hartley Sweeten
701c3587ee spi: spi-ep93xx: remove bits_per_word() helper
Check t->bits_per_word directly and remove the inline helper function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:13 +01:00
H Hartley Sweeten
8d7586bda0 spi: spi-ep93xx: use read,write instead of __raw_* variants
The memory resource used by this driver is ioremap()'d and the normal
read,write calls can be used instead of the __raw_* variants.

Also, remove the inline tag on the helper functions and let the compiler
decide if they are inlined.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:13 +01:00
H Hartley Sweeten
4870c2170d spi: spi-ep93xx: always handle transfer specific settings
__spi_async(), which starts every SPI message transfer, initializes
the bits_per_word and max speed for every transfer in the message.
Since the conditional test in ep93xx_spi_process_transfer() will
always succeed just remove it and always call ep93xx_spi_chip_setup()
to configure the hardware for each transfer in the message.

Remove the redundant ep93xx_spi_chp_setup() in ep93xx_spi_process_transfer()
which just initializes the hardware to the "default" based on the SPI
device.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-15 11:37:13 +01:00