It's bigger than I would like, most of it is due to the big ab/db8500 merge
that went through during the 3.10 merge window.
So we have:
- Some build fixes for the tps65912 and ab8500 drivers.
- A couple of build fixes for the the si476x driver with pre 4.3 gcc
compilers.
- A few runtime breakage fixes (probe failures or oopses) for the ab8500
and db8500 drivers.
- Some sparse or regular gcc warning fixes for the si476x, ab8500 and
cros_ec drivers.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iQIcBAABAgAGBQJRm/FnAAoJEIqAPN1PVmxKMwQP/RpmIcJ3Y8MoaPil35cNFdij
F7dbVlRFqusYtZeCSfeThDzzkGaDG0iMzbFNfxJopfab7jz6G+hu4P3gpzS3w4fN
R8g+gmci5xmW5FqgqogMEx5mpYuOhyHzgsG93t++GHcQX/ne+7fqMIVWBfC4x4EH
yxApTkXbd3Eih9KE1PoWRsUGSn4DoatjyhAJfXN7NmOO7juzJr6O8NsydD8x0fVv
Tgwysra14s1qtnnhpKKxEQY6XnMy/9OsI1y/Kig08R0bokH8o6wh02W6iRHc6ED7
Y4YeTnsEkzTBi36Djtixreyfnbc67muHH7e+c4zwMJDYilQHq3CoU9vxVOAFuLRL
W0ImpNjrhTGTpD24nGxD/YiBvrkQbIwa/4O6ZoRPXSNhuWsx7euuSetqYPYxS+oU
AmARUCeTGL9xy5FNJ0LUDKPDRn8SaiKvqE2AKhjVW8b9hZvlSbNITSawJeV01Wz2
SHMgdafDXio47uAczuwg/mCpcReBQ/0+9GDtofCRVd1ySMpWBjweoJ1WwU5Hs02o
JjJ3iCHF+xM1vr6rkrNrXYwv5Zuxl/WZP7KR1wlSYIT0EVjQw2SRBUjhg4QBfFBm
1jYW690xy8DriUmEmf1GGAHeQgDBG3k4kNzg63IG6QOsAnVv+5Fytth9smFrjCjs
5fCA2ED6gdWr7sWXPmbv
=RQz1
-----END PGP SIGNATURE-----
Merge tag 'mfd-fixes-3.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-fixes
Pull mfd fixes from Samuel Ortiz:
"This is the first batch of MFD fixes for 3.10.
It's bigger than I would like, most of it is due to the big ab/db8500
merge that went through during the 3.10 merge window.
So we have:
- Some build fixes for the tps65912 and ab8500 drivers.
- A couple of build fixes for the the si476x driver with pre 4.3 gcc
compilers.
- A few runtime breakage fixes (probe failures or oopses) for the
ab8500 and db8500 drivers.
- Some sparse or regular gcc warning fixes for the si476x, ab8500 and
cros_ec drivers."
* tag 'mfd-fixes-3.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-fixes:
mfd: ab8500-sysctrl: Let sysctrl driver work without pdata
mfd: db8500-prcmu: Update stored DSI PLL divider value
mfd: ab8500-sysctrl: Always enable pm_power_off handler
mfd: ab8500-core: Pass GPADC compatible string to MFD core
mfd: db8500-prcmu: Supply the pdata_size attribute for db8500-thermal
mfd: ab8500-core: Use the correct driver name when enabling gpio/pinctrl
mfd: ab8500: Pass AB8500 IRQ to debugfs code by resource
mfd: ab8500-gpadc: Suppress 'ignoring regulator_enable() return value' warning
mfd: ab8500-sysctrl: Set sysctrl_dev during probe
mfd: ab8500-sysctrl: Fix sparse warning
mfd: abx500-core: Fix sparse warning
mfd: ab8500: Debugfs code depends on gpadc
mfd: si476x: Use get_unaligned_be16() for unaligned be16 loads
mfd: cros_ec_spi: Use %z to format pointer differences
mfd: si476x: Do not use binary constants
mfd: tps65912: Select MFD_CORE
I liked, but my first version broke linux-next due to overzealous
header clean.
Thanks,
Rusty.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iQIcBAABAgAGBQJRnBctAAoJENkgDmzRrbjxymMP/ioTlABagJKNPvGPs4+j3rux
uqd/qYImRGvEd/JzqQ3o2LWLUgMv/wPWjhpsaPTwNIgQYWp+u+YGtGVe73EYOEMR
/Zy7MWsivva/p0MLmEKvWT8dgR88Nw0koxw+9zDUH0b5JIsH5vasG6hCQvumSNmW
RRkgSqD+hQvIevG0sxLj6WXXX0Yh6bXteKy+MRJL+TMT//W+idFb3Y2OLDP8RgXy
PPiJ5Qiw08sCIePXt9+rOgx6Qy2clQ70Y+1Vegr1pkTVreYxv/ERl4sOuy6pncGu
z2IsNiVPFJG0hhalKjsyhJ0k/OrqlgDMWaj+Jh1iV+Iti6+4xco4fbQuAcEiVLm+
aml6ogpARI4Nc5lQIoZCVNGVEbp+NzDUIQi3ao6P59dZFcgYPApVwI6osYDV+SOE
PjFf/HNYLogiO9rbOKCHxkvlUIr07eqB2RqVeSIdOkx/jrfFzGnJVFIge7LKO4ZM
cOKw7qZAQgdUY/tZL+3ty4eCkg0WNjK6F4ORqIp7Vi6X2bMHLFAvG6oYDAZhcBGr
ODZUt30fk1fYgoP1Kx3MFXJm6esOM3IdzpNmJY4hnV3Dx51w+5PNVYHE/RdXwqLh
FvrDv2V5ZIuWoTY0HpYkl7Wld9Q1ZH9G2v+P936IR+exOuZKiRXkUjPPdAHSgQxs
1YWWoR3Up5ObU7LH6hL9
=rYZI
-----END PGP SIGNATURE-----
Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
Pull virtio fixes from Rusty Russell:
"A build fix and a uapi exposure fix. The build fix is later than I
liked, but my first version broke linux-next due to overzealous header
clean."
* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
virtio_console: fix uapi header
Hoist memcpy_fromiovec/memcpy_toiovec into lib/
As a relatively new ABI, N64 only had getdents syscall while other modern
architectures have getdents64.
This was noticed when Python 3.3 shifted to the latter one for aarch64.
[ralf@linux-mips.org: The history of getdents64 is a little complicated.
Commit 1a1d77dd589de5a567fa95e36aa6999c704ceca4 [Merge with 2.4.0-test7.]
added N64 getdents(2) to arch/mips64/kernel/scall_64.S as syscall 5213,
then dropped again in 578720675c44e54e8aa7c68f6dce59ed37ce3d3b [Overhaul
of the 64-bit syscall interface. Now heritage free.] for 2.5.18 in 2002.]
Signed-off-by: Aron Xu <aron@debian.org>
Acked-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/5285/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
During DP AUX communication we might time out 1 jiffy too early, because
the calculated expiry jiffy value is one less than needed.
This is only one reason for false DP AUX timeouts. For a complete
solution we also need the following fix, which is now queued for
mainline: http://marc.info/?l=linux-kernel&m=136748515710837&w=2
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64133
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
At the moment wait_event_timeout/wait_event_interruptible_timeout may
time out 1 jiffy too early, as the calculated expiry time is 1 less than
needed. Besides timing out too early this also means that the
calculation of the remaining time will be incorrect and we will pass a
non-zero remaining time to user space in case of a time out. This is one
reason for the following bugzilla report:
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64270
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We need this to avoid premature timeouts whenever scheduling a timeout
based on the current jiffies value. For an explanation see [1].
The following patches will take the helper into use.
Once the more generic solution proposed in the thread at [1] is accepted
this patch can be reverted while keeping the follow-up patches.
[1] http://marc.info/?l=linux-kernel&m=136854294730957&w=2
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
- As suggested by Gleb, wrap calls to gfn_to_pfn() with srcu_read_lock/unlock().
Memory slots should be acccessed from a SRCU read section.
- kvm_mips_map_page() now returns an error code to it's callers, instead of
calling panic() if it cannot find a mapping for a particular gfn.
Signed-off-by: Sanjay Lal <sanjayl@kymasys.com>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
Currently the driver's assumed behavior for a modeset with an attached
FB is that the corresponding connector will be switched to DPMS ON mode
if it happened to be in DPMS OFF (or another power save mode). This
wasn't enforced though if only the FB changed, everything else (format,
connector etc.) remaining the same. In this case we only set the new FB
base and left the connector in the old power save mode.
Fix this by forcing a full modeset whenever there is an attached FB and
any affected connector is in a power save mode.
V_2: Run the test for encoders in power save mode outside the the
test for fb change: user space may have just disabled the encoders
but left everything else in place. Make sure the connector list is
not empty before running this test.
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Egbert Eich <eich@suse.de>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61642
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59834
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59339
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64178
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
[danvet: Apply Jani's s/connector_off/is_crtc_connector_off bikeshed.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
The event wouldn't be on any list at this point, so nothing to delete
it from.
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
free_irq() expects the same pointer that was passed to request_threaded_irq(),
otherwise the IRQ is not freed.
The issue was found using the following coccinelle script:
<smpl>
@r1@
type T;
T devid;
@@
request_threaded_irq(..., devid)
@r2@
type r1.T;
T devid;
position p;
@@
free_irq@p(..., devid)
@@
position p != r2.p;
@@
*free_irq@p(...)
</smpl>
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
local_irq_enable() may expand into very different code, so it rather should
stay in C. Also this keeps the assembler code size constant which keeps
the rollback code simple. So it's best to split r4k_wait into two parts,
one C and one assembler.
Finally add the local_irq_enable() to r4k_wait to ensure the WAIT
instruction in __r4k_wait() will work properly.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
If <linux/linkage.h> has not been included before <linux/printk.h>,
a build error like the below one will result:
CC arch/mips/kernel/idle.o
In file included from arch/mips/kernel/idle.c:17:0:
include/linux/printk.h:109:1: error: data definition has no type or storage class [-Werror]
include/linux/printk.h:109:1: error: type defaults to ‘int’ in declaration of ‘asmlinkage’ [-Werror=implicit-int]
include/linux/printk.h:110:1: error: ‘format’ attribute only applies to function types [-Werror=attributes]
include/linux/printk.h:110:1: error: expected ‘,’ or ‘;’ before ‘int’
include/linux/printk.h:114:1: error: data definition has no type or storage class [-Werror]
include/linux/printk.h:114:1: error: type defaults to ‘int’ in declaration of ‘asmlinkage’ [-Werror=implicit-int]
include/linux/printk.h:115:1: error: ‘format’ attribute only applies to function types [-Werror=attributes]
include/linux/printk.h:115:1: error: expected ‘,’ or ‘;’ before ‘int’
include/linux/printk.h:117:1: error: data definition has no type or storage class [-Werror]
include/linux/printk.h:117:1: error: type defaults to ‘int’ in declaration of ‘asmlinkage’ [-Werror=implicit-int]
include/linux/printk.h:118:1: error: ‘format’ attribute only applies to function types [-Werror=attributes]
include/linux/printk.h:118:1: error: ‘__cold__’ attribute ignored [-Werror=attributes]
include/linux/printk.h:118:1: error: expected ‘,’ or ‘;’ before ‘asmlinkage’
include/linux/printk.h:122:1: error: data definition has no type or storage class [-Werror]
include/linux/printk.h:122:1: error: type defaults to ‘int’ in declaration of ‘asmlinkage’ [-Werror=implicit-int]
include/linux/printk.h:123:1: error: ‘format’ attribute only applies to function types [-Werror=attributes]
include/linux/printk.h:123:1: error: ‘__cold__’ attribute ignored [-Werror=attributes]
include/linux/printk.h:123:1: error: expected ‘,’ or ‘;’ before ‘int’
In file included from include/linux/kernel.h:14:0,
from include/linux/sched.h:15,
from arch/mips/kernel/idle.c:18:
include/linux/dynamic_debug.h: In function ‘ddebug_dyndbg_module_param_cb’:
include/linux/dynamic_debug.h:124:3: error: implicit declaration of function ‘printk’ [-Werror=implicit-function-declaration]
Fixed by including <linux/linkage.h>.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Also, slightly changes the behavior to always put the vblank irq,
even if userspace did not request a vblank event. As far as I
can tell, the previous code would leak a vblank irq refcnt if
userspace requested a pageflip without event.
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
A check for a valid plat->sysctrl was introduced in:
2377e52 mfd: ab8500-sysctrl: Error check clean up
but the driver works just fine even without that initialization data,
and enforcing it breaks existing platforms for no reason.
This patch removes the check and let the driver go ahead with probe.
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Pull LED subsystem fix from Bryan Wu.
* 'leds-fixes-3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds:
leds: leds-gpio: reserve gpio before using it
Pull i2c bugfixes from Wolfram Sang:
"These should have been in rc2 but I missed it due to working on devm
longer than expected.
There is one ID addition, since we are touching the driver anyhow.
And the feature bit documentation is one outcome of a debug session
and will make it easier for users to work around problems. The rest
is typical driver bugfixes."
* 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
i2c: suppress lockdep warning on delete_device
i2c: mv64xxx: work around signals causing I2C transactions to be aborted
i2c: i801: Document feature bits in modinfo
i2c: designware: add Intel BayTrail ACPI ID
i2c: designware: always clear interrupts before enabling them
i2c: designware: fix RX FIFO overrun
Since commit c8801a8 (regulator: core: Mark all get and enable calls as
__must_check) we need to check the value returned by 'regulator_enable()'.
Do this check to get rid of the following build warning:
drivers/staging/imx-drm/imx-tve.c: In function 'imx_tve_probe':
drivers/staging/imx-drm/imx-tve.c:671:19: warning: ignoring return value of 'regulator_enable', declared with attribute warn_unused_result [-Wunused-result]
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Without this, I get the following problem when building kernel:
drivers/built-in.o: In function `imx_pd_connector_get_modes':
/linux-2.6/drivers/staging/imx-drm/parallel-display.c:78: undefined reference to `of_get_drm_display_mode'
make: *** [vmlinux] Error 1
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Philipp Zabel <p.zabel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
mxser_port->opmode_ioaddr is initialized only for MOXA_MUST_MU860_HWID
chips, but no precautions have been undertaken to prevent reading and
writing to undefined port number.
Signed-off-by: Matwey V. Kornilov <matwey@sai.msu.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This is the same controller as on Intel Lynxpoint but the
ACPI ID is different.
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is a race between klist_remove and klist_release. klist_remove
uses a local var waiter saved on stack. When klist_release calls
wake_up_process(waiter->process) to wake up the waiter, waiter might run
immediately and reuse the stack. Then, klist_release calls
list_del(&waiter->list) to change previous
wait data and cause prior waiter thread corrupt.
The patch fixes it against kernel 3.9.
Signed-off-by: wang, biao <biao.wang@intel.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tty_port_init() zeroes out the tty port, which means that we have to set the
ops pointer /after/, not before this call. Otherwise, tty_port_open will crash
when it tries to deref ops, which is now a NULL pointer.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
If NO_DMA=y:
drivers/built-in.o: In function `uio_dmem_genirq_release':
drivers/uio/uio_dmem_genirq.c:95: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `uio_dmem_genirq_open':
drivers/uio/uio_dmem_genirq.c:61: undefined reference to `dma_alloc_coherent'
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Hans J. Koch <hjk@hansjkoch.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
After cancelling all reads from the disable hook, we need to reset the
event_cb pointer as well or else we won't be able to set a new one up
when re-enabling the device.
Acked-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Linux' notion of cpuid is different from the Host's notion of CPUID. In the
call to bind the channel interrupts, we should use the host's notion of
CPU Ids. Fix this bug.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Cc: Stable <stable@vger.kernel.org> (V3.9)
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The patch 9f81abdac362: "mei: implement mei_cl_connect function"
from Jan 8, 2013, leads to the following static checker warning:
"drivers/misc/mei/main.c:522 mei_ioctl_connect_client()
warn: check 'dev->me_clients[]' for negative offsets (-2)"
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Pull s390 update from Martin Schwidefsky:
"An additional sysfs attribute for channel paths and a couple of bux
fixes"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
s390/pgtable: fix ipte notify bit
s390/xpram: mark xpram as non-rotational
s390/smp: fix cpu re-scan vs. cpu state
s390/cio: add channel ID sysfs attribute
s390/ftrace: fix mcount adjustment
s390: fix gmap_ipte_notifier vs. software dirty pages
s390: disable pfmf for clear page instruction
s390/disassembler: prevent endless loop in print_fn_code()
s390: remove non existent reference to GENERIC_KERNEL_THREAD
Make it obvious to see what attribute is using bogus permissions.
Signed-off-by: Dave Young <dyoung@redhat.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Modules want to call this function, so it needs to be exported.
Reported-by: Daniel Mack <zonque@gmail.com>
Cc: Kay Sievers <kay@vrfy.org>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Before f7b861b7a6 ("arm: Use generic idle loop") ARM would kill the
CPU within the rcu idle section. Now that the rcu_idle_enter()/exit()
pair have been pushed lower down in the idle loop this is no longer true
and so using RCU_NONIDLE here is no longer necessary and also harmful
because RCU is not actually idle at this point.
Cc: Russell King <linux@arm.linux.org.uk>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Pull radeon sun/hainan support from Dave Airlie:
"Since I know its outside the merge window, but since this is new hw I
thought I'd try and provoke the new hw exception, it just fills in the
blanks in the driver for the new AMD sun and hainan chipsets."
* 'drm-radeon-sun-hainan' of git://people.freedesktop.org/~airlied/linux:
drm/radeon: add Hainan pci ids
drm/radeon: add golden register settings for Hainan (v2)
drm/radeon: sun/hainan chips do not have UVD (v2)
drm/radeon: track which asics have UVD
drm/radeon: radeon-asic updates for Hainan
drm/radeon: fill in ucode loading support for Hainan
drm/radeon: don't touch DCE or VGA regs on Hainan (v3)
drm/radeon: fill in GPU init for Hainan (v2)
drm/radeon: add chip family for Hainan