Commit graph

277,199 commits

Author SHA1 Message Date
Jeremy Fitzhardinge
2994488fe5 x86, ticketlock: Convert __ticket_spin_lock to use xadd()
Convert the two variants of __ticket_spin_lock() to use xadd(), which
has the effect of making them identical, so remove the duplicate function.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:46:07 -07:00
Jeremy Fitzhardinge
c576a3ea90 x86, ticketlock: Convert spin loop to C
The inner loop of __ticket_spin_lock isn't doing anything very special,
so reimplement it in C.

For the 8 bit ticket lock variant, we use a register union to get direct
access to the lower and upper bytes in the tickets, but unfortunately gcc
won't generate a direct comparison between the two halves of the register,
so the generated asm isn't quite as pretty as the hand-coded version.
However benchmarking shows that this is actually a small improvement in
runtime performance on some benchmarks, and never a slowdown.

We also need to make sure there's a barrier at the end of the lock loop
to make sure that the compiler doesn't move any instructions from within
the locked region into the region where we don't yet own the lock.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:45:43 -07:00
Jeremy Fitzhardinge
84eb950db1 x86, ticketlock: Clean up types and accessors
A few cleanups to the way spinlocks are defined and accessed:
 - define __ticket_t which is the size of a spinlock ticket (ie, enough
   bits to hold all the cpus)
 - Define struct arch_spinlock as a union containing plain slock and
   the head and tail tickets
 - Use head and tail to implement some of the spinlock predicates.
 - Make all ticket variables unsigned.
 - Use TICKET_SHIFT to form constants

Most of this will be used in later patches.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:45:19 -07:00
Jeremy Fitzhardinge
8b8bc2f731 x86: Use xadd helper more widely
This covers the trivial cases from open-coded xadd to the xadd macros.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:44:12 -07:00
Jeremy Fitzhardinge
433b352061 x86: Add xadd helper macro
Add a common xadd implementation.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:42:20 -07:00
Jeremy Fitzhardinge
e9826380d8 x86, cmpxchg: Unify cmpxchg into cmpxchg.h
Everything that's actually common between 32 and 64-bit is moved into
cmpxchg.h.

xchg/cmpxchg will fail with a link error if they're passed an
unsupported size (which includes 64-bit args on 32-bit systems).

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:42:10 -07:00
Jeremy Fitzhardinge
00a41546e8 x86, cmpxchg: Move 64-bit set64_bit() to match 32-bit
Reduce arbitrary differences between 32 and 64 bits.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:41:40 -07:00
Jeremy Fitzhardinge
416185bd5a x86, cmpxchg: Move 32-bit __cmpxchg_wrong_size to match 64 bit.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:41:17 -07:00
Jeremy Fitzhardinge
4009338d62 x86, cmpxchg: <linux/alternative.h> has LOCK_PREFIX
Not <linux/bitops.h>.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Link: http://lkml.kernel.org/r/4E5BCC40.3030501@goop.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-08-29 13:40:25 -07:00
Linus Torvalds
0f43dd546d Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (42 commits)
  netpoll: fix incorrect access to skb data in __netpoll_rx
  cassini: init before use in cas_interruptN.
  can: ti_hecc: Fix uninitialized spinlock in probe
  can: ti_hecc: Fix unintialized variable
  net: sh_eth: fix the compile error
  net/phy: fix DP83865 phy interrupt handler
  sendmmsg/sendmsg: fix unsafe user pointer access
  ibmveth: Fix leak when recycling skb and hypervisor returns error
  arp: fix rcu lockdep splat in arp_process()
  bridge: fix a possible use after free
  bridge: Pseudo-header required for the checksum of ICMPv6
  mcast: Fix source address selection for multicast listener report
  MAINTAINERS: Update GIT trees for network development
  ath9k: Fix PS wrappers in ath9k_set_coverage_class
  carl9170: Fix mismatch in carl9170_op_set_key mutex lock-unlock
  wl12xx: add max_sched_scan_ssids value to the hw description
  wl12xx: Fix validation of pm_runtime_get_sync return value
  wl12xx: Remove obsolete testmode NVS push command
  bcma: add uevent to the bus, to autoload drivers
  ath9k_hw: Fix STA (AR9485) bringup issue due to incorrect MAC address
  ...
2011-08-29 13:38:29 -07:00
Linus Torvalds
2cd6c7f7f1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
  sparc32,sun4d: Change IPI IRQ level to prevent collision between IPI and timer interrupt
  sparc: Remove another reference to nfsservctl
2011-08-29 13:37:42 -07:00
Linus Torvalds
380dc20088 Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x
* 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x:
  ARM: mach-shmobile: sh7372 CMT3 and CMT4 clock support
  ARM: mach-shmobile: sh7372 MSIOF clock support
  ARM: mach-shmobile: clock-sh7372: fixup USB-DMAC1 settings
  ARM: mach-shmobile: clock-sh73a0: tidyup CKSCR main clock selecter
  ARM: mach-shmobile: Remove 3DG/SGX from sh7372 INTCS
  ARM: mach-shmobile: mackerel: Add USB-DMA ID
  mmc: sdhi, mmcif: zboot: Correct clock disable logic
  ARM: mach-shmobile: ag5evm: SDHI requires waiting for idle
  ARM: static should be at beginning of declaration
  ARM: mach-shmobile: Use CMT2 for timer on sh7372
  ARM: mach-shmobile: sh7372: Add USB-DMAC support
2011-08-29 13:37:17 -07:00
Linus Torvalds
c42a2634d8 Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x
* 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x:
  sh: fix the compile error in setup-sh7757.c
  serial: sh-sci: report CTS as active for get_mctrl
  sh: Add unaligned memory access for PC relative intructions
  sh: Fix unaligned memory access for branches without delay slots
  sh: Fix up fallout from cpuidle changes.
  serial: sh-sci: console Runtime PM support
  sh: Fix conflicting definitions of ptrace_triggered
  serial: sh-sci: fix DMA build by including dma-mapping.h
  serial: sh-sci: Fix up default regtype probing.
  sh: intc: enable both edges GPIO interrupts on sh7372
  shwdt: fix usage of mod_timer
  clocksource: sh_cmt: wait for CMCNT on init V2
2011-08-29 13:34:48 -07:00
Randy Dunlap
4f16061ede net: fix Makefile typos & build errors
Fix many (randconfig) PPP build errors by fixing typos in
drivers/net/Makefile.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-29 13:20:23 -07:00
Michael Witten
bcd3cfc121 DocBook/drm: Clean up a todo-note
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:37 +00:00
Michael Witten
7f0925aca5 DocBook/drm: device aware' -> device-aware'
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:35 +00:00
Michael Witten
a5294e01f2 DocBook/drm: (device|driver) specific' -> (device|driver)-specific'
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:33 +00:00
Michael Witten
5a462d58c8 DocBook/drm: Clean up the paragraph on framebuffer objects
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:32 +00:00
Michael Witten
964d32dcbe DocBook/drm: Use `; otherwise,'
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:30 +00:00
Michael Witten
e355b2014d DocBook/drm: Better flow with `, and then'
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:28 +00:00
Michael Witten
b8c6e0fe46 DocBook/drm: Refer to the domain-setting function as a device-specific ioctl
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:26 +00:00
Michael Witten
2d43f5d667 DocBook/drm: Improve flow of GPU/CPU coherence sentence
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:24 +00:00
Michael Witten
0c2d91a80a DocBook/drm: Use an <itemizelist> for fundamental GEM operations
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:22 +00:00
Michael Witten
f877bd4ad5 DocBook/drm: Insert a comma
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:20 +00:00
Michael Witten
51b9500de2 DocBook/drm: Use a <variablelist> for vblank ioctls
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:18 +00:00
Michael Witten
65ffef508f DocBook/drm: Use an itemizedlist for what an encoder needs to provide
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:16 +00:00
Michael Witten
4dc0152d57 DocBook/drm: Insert the' for readability, and change set' to `setting'
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:14 +00:00
Michael Witten
896ee65fb6 DocBook/drm: Remove extraneous commas
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:12 +00:00
Michael Witten
8a9ba910ac DocBook/drm: Use a colon
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:09 +00:00
Michael Witten
327d6fb962 DocBook/drm: Clarify `final initialization' via better formatting
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:07 +00:00
Michael Witten
3bf7df6156 DocBook/drm: Remove redundancy
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:05 +00:00
Michael Witten
1dbd39c3ea DocBook/drm: Insert `it' for smooth reading
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:03 +00:00
Michael Witten
9029bd7a42 DocBook/drm: The word `so-called'; I do not think it connotes what you think it connotes
From Webster's Revised Unabridged Dictionary (1913) [web1913]:

    So-called \So"-called`\, a.
       So named; called by such a name (but perhaps called thus with
       doubtful propriety).

  From WordNet (r) 2.0 [wn]:

    so-called
         adj : doubtful or suspect; "these so-called experts are no help"
               [syn: {alleged(a)}, {supposed}]

My strong conviction is that widespread use of 'so gennant'
or 'sogennant' in German has led to the creeping misuse of
'so-called' in English (especially through technical writings).

In English, it would be better to use:

  what is called

or a better translation of 'so gennant':

  so named

Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 20:00:01 +00:00
Michael Witten
54f2cb8fc9 DocBook/drm: Use a singular subject for grammatical cleanliness
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:59 +00:00
Michael Witten
482b2ad8e4 DocBook/drm: basic -> core
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:56 +00:00
Michael Witten
049cc903e7 DocBook/drm: Streamline wording of GEM initialization
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:54 +00:00
Michael Witten
ae63d793a4 DocBook/drm: Insert `()' after function name
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:52 +00:00
Michael Witten
1c86de2216 DocBook/drm: Remove parentheses and unnecessary repetition
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:50 +00:00
Michael Witten
005d7f4a01 DocBook/drm: Insert missing comma
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:48 +00:00
Michael Witten
eb2b8d4273 DocBook/drm: , -> :
Signed-off-by: Michael Witten <mfwitten@gmail.com>
2011-08-29 19:59:45 +00:00
John W. Linville
78b8e51dd9 wl12xx/sdio_test.c: fix build breakage from WL127X_FW_NAME change
Commit c302b2c959 ("wl12xx: Use a single
fw for both STA and AP roles") changed the name of the firmware name
definition, breaking the build of wl12xx/sdio_test.c.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:49:46 -04:00
David Brown
56e2d8a688 ARM: msm: Add devicetree support for msm8660-surf
Adds support for booting via device tree with a simple serial console.

Change-Id: I7f175b8db21928cd13e0fb49f3eed74966a2696f
Signed-off-by: David Brown <davidb@codeaurora.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2011-08-29 12:47:36 -07:00
David Brown
cfdad2aba7 msm_serial: Add devicetree support
Add devicetree support to the msm_serial driver.  Clocks are still
queried by direct name from the driver until device tree clock support
is implemented.

Change-Id: Ia6b2ddfcf1e5dc3bd25dd502662f971202e6d56f
Signed-off-by: David Brown <davidb@codeaurora.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2011-08-29 12:47:36 -07:00
David Brown
886a451bd2 msm_serial: Use relative resources for iomem
Device tree iomem resources are only accessible by index, and not by
name.  The msm_serial devices always have either 1 or 2 iomem
resources, that are always in the same order.  Convert the
platform_get_resource_byname into just platform_get_resource to
facilitate device tree conversion.

Change-Id: I4fd0f1037e07f2725a2a25c7b07dea2ca9397db7
Signed-off-by: David Brown <davidb@codeaurora.org>
2011-08-29 12:47:35 -07:00
Larry Finger
9a53bf54b8 b43: Fix swatch warning
Swatch reports the following warning for main.c:

  CHECK   drivers/net/wireless/b43/main.c
drivers/net/wireless/b43/main.c +4115 b43_wireless_core_stop(7) warn: variable dereferenced before check 'dev'

After analysis, this is not a bug, but a false warning. Nonetheless,
a cleanup is in order to prevent some future janitor proposing
the wrong fix, as I did in my original patch.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:03 -04:00
Larry Finger
1ba45b9e3a ath9k: Fix a smatch warnings
Smatch shows the following warnings:

  CHECK   drivers/net/wireless/ath/ath9k/htc_drv_main.c
drivers/net/wireless/ath/ath9k/htc_drv_main.c +1315 ath9k_htc_configure_filter(27) warn: inconsistent returns mutex:&priv->mutex: locked (1303) unlocked (1315)

  CHECK   drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c +3321 ar9300_eeprom_restore_internal(20) warn: returning -1 instead of -ENOMEM is sloppy

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:03 -04:00
Rajkumar Manoharan
cf3af74824 ath9k: Add debugfs support for mac/baseband samples
This patch keep track of number of samples that includes
DMA debugs registers, PCU observe, CR, channel noise,
cycle conters, noisefloor history buffer and last N number
of tx and rx descriptor status. These samples are grouped
in table manner which dumping in debgufs.

Debugfs file location:
    <debugfs_mnt>/ieee80211/phy#/ath9k/samples

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:03 -04:00
Felix Fietkau
059ee09b99 ath9k: fix regression in sending aggregated packets
The recent commit "ath9k: Send legacy rated frames as unaggregated"
introduced a check to ensure that packets with non-MCS rates set in
the rate series will not be aggregated. However, it failed to check
if the rate series is valid before testing the flags, thus breaking
aggregation for normal MCS-only packets if the last series is unset.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:02 -04:00
Rajkumar Manoharan
a7be039d34 ath9k: Fix eifs/usec timeout for AR9287 v1.3+
For AR9287 v1.3+ chips, MAC runs at 117MHz. But the initvals
IFS parameters are loaded based on 44/88MHz clockrate. So
eifs/usec from ini should not be used for AR9287 v1.3+.
The mentioned values are tested on 2 chain HT40 mode.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:02 -04:00
Rajkumar Manoharan
e3f2acc76d ath9k_hw: Set default slottime as 9us
Initialize 9us slot time as that is what is used mostly
(for non-ERP cases) and also to be in sync with initvals.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-08-29 15:33:02 -04:00