GitHub/LineageOS/G12/android_kernel_amlogic_linux-4.9.git
14 years agostaging: brcm80211: remove redundant CHIPREV macro
Arend van Spriel [Thu, 2 Dec 2010 14:44:52 +0000 (15:44 +0100)]
staging: brcm80211: remove redundant CHIPREV macro

The CHIPREV macro simply expands to the macro argument so it is
redundant and as such removed.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove redundant CHIPID macro
Arend van Spriel [Thu, 2 Dec 2010 14:44:51 +0000 (15:44 +0100)]
staging: brcm80211: remove redundant CHIPID macro

The CHIPID macro simply expands to the macro argument so it is
redundant and as such removed.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove redundant CHIPTYPE macro
Arend van Spriel [Thu, 2 Dec 2010 14:44:50 +0000 (15:44 +0100)]
staging: brcm80211: remove redundant CHIPTYPE macro

The CHIPTYPE macro simply expands to the macro argument so it is
redundant and as such removed.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: absorb linux_osl.h into osl.h
Brett Rudley [Wed, 1 Dec 2010 23:36:39 +0000 (15:36 -0800)]
staging: brcm80211: absorb linux_osl.h into osl.h

Move code from linux_osl.h into osl.h and delete linux_osl.h, which
created a bunch of checkpatch errors...
I fixed most but volatile warnings will have to be dealt with later.

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: Remove unused code from osl.h
Brett Rudley [Wed, 1 Dec 2010 23:36:38 +0000 (15:36 -0800)]
staging: brcm80211: Remove unused code from osl.h

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove vmbus_on_event_dpc()
Greg Kroah-Hartman [Thu, 2 Dec 2010 20:12:46 +0000 (12:12 -0800)]
Staging: hv: remove vmbus_on_event_dpc()

Just call VmbusOnEvents() as that's all the function did, so we can
remove it.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: make some vmbus_drv functions static
Greg Kroah-Hartman [Thu, 2 Dec 2010 20:11:25 +0000 (12:11 -0800)]
Staging: hv: make some vmbus_drv functions static

Now that vmbus_drv.c is merged with vmbus.c, some of the newly global
functions can now be marked static.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: merge VmbusInitialize into vmbus_bus_init
Greg Kroah-Hartman [Thu, 2 Dec 2010 20:08:08 +0000 (12:08 -0800)]
Staging: hv: merge VmbusInitialize into vmbus_bus_init

No need to have two functions for this.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove gDriver variable
Greg Kroah-Hartman [Thu, 2 Dec 2010 20:04:59 +0000 (12:04 -0800)]
Staging: hv: remove gDriver variable

It's only set and never used anymore, so remove it.

Gotta love static variables with a "global" hungarian notatation on the
name...

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: call VmbusInitialize directly from vmbus_bus_init()
Greg Kroah-Hartman [Thu, 2 Dec 2010 20:04:00 +0000 (12:04 -0800)]
Staging: hv: call VmbusInitialize directly from vmbus_bus_init()

No need to pass a function pointer to a function in the same file.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove vmbus.c
Greg Kroah-Hartman [Thu, 2 Dec 2010 19:59:22 +0000 (11:59 -0800)]
Staging: hv: remove vmbus.c

Merge the functions into vmbus_drv.c as there's no need to have them
separate anymore.  It will also make unwinding some of the function and
pointer mess easier, as well as making functions static in the future.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: rename the vmbus to "hyperv"
Greg Kroah-Hartman [Thu, 2 Dec 2010 19:28:28 +0000 (11:28 -0800)]
Staging: hv: rename the vmbus to "hyperv"

This changes the name of the bus in sysfs from "vmbus" to "hyperv" which
is the name it should show (vmbus is way to generic).

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove struct vmbus_driver
Greg Kroah-Hartman [Thu, 2 Dec 2010 17:42:18 +0000 (09:42 -0800)]
Staging: hv: remove struct vmbus_driver

It's only a wrapper for the struct hv_driver structure, so just use that
instead, as there are no other fields left in it at the moment.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnChildDeviceAdd vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 17:16:04 +0000 (09:16 -0800)]
Staging: hv: remove OnChildDeviceAdd vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove GetChannelOffers vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:50:58 +0000 (08:50 -0800)]
Staging: hv: remove GetChannelOffers vmbus_driver callback

It's only ever set to one function, so just call that function instead.
Actually, that wrapper function only ever called vmbus_request_offers()
so just call that function instead, no need for a do-nothing
intermediate step here.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnEventDpc vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:47:11 +0000 (08:47 -0800)]
Staging: hv: remove OnEventDpc vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnMsgDpc vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:44:48 +0000 (08:44 -0800)]
Staging: hv: remove OnMsgDpc vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnIsr vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:41:05 +0000 (08:41 -0800)]
Staging: hv: remove OnIsr vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnChildDeviceRemove vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:34:45 +0000 (08:34 -0800)]
Staging: hv: remove OnChildDeviceRemove vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnChildDeviceDestroy vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:25:17 +0000 (08:25 -0800)]
Staging: hv: remove OnChildDeviceDestroy vmbus_driver callback

No one ever calls it so get rid of it, it's pointless.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: hv: remove OnChildDeviceCreate vmbus_driver callback
Greg Kroah-Hartman [Thu, 2 Dec 2010 16:22:41 +0000 (08:22 -0800)]
Staging: hv: remove OnChildDeviceCreate vmbus_driver callback

It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: replaced typedef struct wl_info_t by struct wl_info.
Roland Vossen [Wed, 1 Dec 2010 20:37:34 +0000 (21:37 +0100)]
staging: brcm80211: replaced typedef struct wl_info_t by struct wl_info.

Part of the code cleanup effort. CodingStyle doc advises to restrict the usage
of typedefs. Also moved several function declarations from .c to .h file
because this typedef replace operation induced checkpatch.pl warnings.

Signed-off-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211 needs lots of delay.h
Randy Dunlap [Wed, 1 Dec 2010 19:16:35 +0000 (11:16 -0800)]
staging: brcm80211 needs lots of delay.h

Fix lots of errors like:

drivers/staging/brcm80211/phy/wlc_phy_n.c:17613: error: implicit declaration of function 'mdelay'
drivers/staging/brcm80211/util/nicpci.c:246: error: implicit declaration of function 'udelay'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Brett Rudley <brudley@broadcom.com>
Cc: Henry Ptasinski <henryp@broadcom.com>
Cc: Dowan Kim <dowan@broadcom.com>
Cc: Roland Vossen <rvossen@broadcom.com>
Cc: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: bcmp => memcmp
Brett Rudley [Wed, 1 Dec 2010 04:32:51 +0000 (20:32 -0800)]
staging: brcm80211: bcmp => memcmp

s/bcmp/memcmp/

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: bzero => memset
Brett Rudley [Wed, 1 Dec 2010 04:09:49 +0000 (20:09 -0800)]
staging: brcm80211: bzero => memset

s/bzero/memset/g

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove OSL_SYSUPTIME_SUPPORT
Brett Rudley [Wed, 1 Dec 2010 01:35:09 +0000 (17:35 -0800)]
staging: brcm80211: remove OSL_SYSUPTIME_SUPPORT

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: Remove bogus gcc version checking
Brett Rudley [Tue, 30 Nov 2010 23:22:15 +0000 (15:22 -0800)]
staging: brcm80211: Remove bogus gcc version checking

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: Remove unused PKTFREESETCB
Brett Rudley [Tue, 30 Nov 2010 23:22:14 +0000 (15:22 -0800)]
staging: brcm80211: Remove unused PKTFREESETCB

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: Remove OSL_DMADDRWIDTH
Brett Rudley [Tue, 30 Nov 2010 23:22:13 +0000 (15:22 -0800)]
staging: brcm80211: Remove OSL_DMADDRWIDTH

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: rtl8192u: check return code kmalloc.
David Chosrova [Wed, 1 Dec 2010 12:42:16 +0000 (13:42 +0100)]
Staging: rtl8192u: check return code kmalloc.

This patch checks the return code of  kmalloc when trying to allocate
memory for priv->rx_urb in rtl8192_usb_initendpoints(), return -ENOMEM
when failed.

Signed-off-by: David Chosrova <david.chosrova@libertysurf.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: iio: dds: ad9832: Fix kconfig description
Michael Hennerich [Wed, 1 Dec 2010 16:34:39 +0000 (17:34 +0100)]
staging: iio: dds: ad9832: Fix kconfig description

The AD9832 driver doesn't support the AD9833 and AD9834

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: rtl8192u: remove dead code to disable dot11d
David Chosrova [Mon, 29 Nov 2010 20:50:48 +0000 (21:50 +0100)]
Staging: rtl8192u: remove dead code to disable dot11d

This patch removes all the ENABLE_DOT11D ifdefs.
It is always defined for driver. DOT11D has to do with regulatory domains.

What prompted this patch was a warning message in Sparse.

drivers/staging/rtl8192u/r8192U_core.c:247:1: warning: "eqMacAddr"
redefined in file included from drivers/staging/rtl8192u/:81:81:
drivers/staging/rtl8192u/dot11d.h:35:1: warning: this is the location
of the previous definition

Now there are no ifdefs around dot11d.h it made no sense to have this
second definition, so I removed that macro as well. ( Thanks Dan ;-) ).

Acked-by. Dan Carpenter <error27@gmail.com>
Signed-off-by: David Chosrova <dada2372@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill struct wb_usb
Pekka Enberg [Sun, 28 Nov 2010 21:00:08 +0000 (23:00 +0200)]
Staging: w35und: Kill struct wb_usb

This patch kills struct wb_usb which now only contains a pointer to  struct
usb_device.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Remove unused fields from struct wb_usb
Pekka Enberg [Sun, 28 Nov 2010 21:00:07 +0000 (23:00 +0200)]
Staging: w35und: Remove unused fields from struct wb_usb

This patch removes two unused fields from struct wb_usb:

  - DetectCount which is always zero

  - IsUsb20 which is a write-only struct member

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill wblinux_f.h header
Pekka Enberg [Sun, 28 Nov 2010 21:00:06 +0000 (23:00 +0200)]
Staging: w35und: Kill wblinux_f.h header

The wblinux_f.h header file doesn't contain anything that's actually used. Kill
it.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Merge mlmetxrx.c to mds.c
Pekka Enberg [Sun, 28 Nov 2010 21:00:05 +0000 (23:00 +0200)]
Staging: w35und: Merge mlmetxrx.c to mds.c

This patch merges mlmetxrx.c to mds.c because it's small and the functions are
only used in mto.c.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill _IBSS_BEACON_SEQ_STICK_
Pekka Enberg [Sun, 28 Nov 2010 21:00:04 +0000 (23:00 +0200)]
Staging: w35und: Kill _IBSS_BEACON_SEQ_STICK_

This patch kills the _IBSS_BEACON_SEQ_STICK_ ifdefs because the macro is never
defined.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill write-only ->TxToggle
Pekka Enberg [Sun, 28 Nov 2010 21:00:03 +0000 (23:00 +0200)]
Staging: w35und: Kill write-only ->TxToggle

This patch removes ->TxToggle from struct wb35_mds because it's a write only struct member.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill Vendor2 ifdef from hal_init_hardware
Pekka Enberg [Sun, 28 Nov 2010 21:00:02 +0000 (23:00 +0200)]
Staging: w35und: Kill Vendor2 ifdef from hal_init_hardware

The Vendor2 macro is never defined so remove the ifdef'd block from
hal_init_hardware().

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Remove empty sysdef.h header
Pekka Enberg [Sun, 28 Nov 2010 21:00:01 +0000 (23:00 +0200)]
Staging: w35und: Remove empty sysdef.h header

The sysdef.h header is empty now so kill it.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Use pr_debug() for debugging
Pekka Enberg [Sun, 28 Nov 2010 21:00:00 +0000 (23:00 +0200)]
Staging: w35und: Use pr_debug() for debugging

Use pr_debug() for debugging printk's and kill the FULL_DEBUG macro. It would
be even better to use dev_dbg() but unfortunately looking up struct device in
the current code structure makes things very ugly.

Please note that I dropped the DataDmp() calls from
RFSynthesizer_SwitchingChannel() because that function doesn't exist.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill unused code in mac_structures.h
Pekka Enberg [Sun, 28 Nov 2010 20:59:59 +0000 (22:59 +0200)]
Staging: w35und: Kill unused code in mac_structures.h

This patch kills tons of unused macros and struct definitions from
mac_structures.h.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill WPA2 definitions
Pekka Enberg [Sun, 28 Nov 2010 20:59:58 +0000 (22:59 +0200)]
Staging: w35und: Kill WPA2 definitions

The _WPA2_ macro is always defined but the data structures that are wrapped by
it are never used. Kill them.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Kill _USE_FALLBACK_RATE_ macro
Pekka Enberg [Sun, 28 Nov 2010 20:59:57 +0000 (22:59 +0200)]
Staging: w35und: Kill _USE_FALLBACK_RATE_ macro

The _USE_FALLBACK_RATE_ macro parametrizes DEFAULT_RATE_RETRY_LIMIT. It's only
used in Mxx_initial() in reg.c where _USE_FALLBACK_RATE_ is always defined
because the reg.c file includes sysdef.h at the top. It's therefore safe to
remove the _USE_FALLBACK_RATE_ macro.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: w35und: Remove unused defines from sysdef.h
Pekka Enberg [Sun, 28 Nov 2010 20:59:56 +0000 (22:59 +0200)]
Staging: w35und: Remove unused defines from sysdef.h

This patch removes all the defines in sysdef.h that are not used at all.

Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: ft1000: Fix goto error logic.
Marek Belisko [Wed, 24 Nov 2010 09:42:39 +0000 (10:42 +0100)]
staging: ft1000: Fix goto error logic.

Fix goto error logic which could lead to kernel panics
because kthread_stop() is called in not correct error
conditions. Seen it sometimes when dsp_reload() fails
then I got kernel panic.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: ft1000: Remove functions which create devices in kernel space.
Marek Belisko [Tue, 23 Nov 2010 12:29:28 +0000 (13:29 +0100)]
staging: ft1000: Remove functions which create devices in kernel space.

Remove exec_mknod() and rm_mknod() helpers which was used for
device nodes creating/removing in kernel space.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: keucr: fix keucr init other coding style
Al Cho [Fri, 26 Nov 2010 11:07:27 +0000 (19:07 +0800)]
staging: keucr: fix keucr init other coding style

fix keucr init.c other coding style but not from checkpatch.pl.
replace ternary conditional "?:" with if/else.

Signed-off-by: Al Cho <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: keucr: fix keucr init coding style
Al Cho [Fri, 26 Nov 2010 11:06:39 +0000 (19:06 +0800)]
staging: keucr: fix keucr init coding style

fix keucr init.c init.h coding style.
only fix coding style check by checkpatch.pl.

Signed-off-by: Al Cho <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: msm: tvenc: fix error handling
Vasiliy Kulikov [Fri, 26 Nov 2010 17:06:53 +0000 (20:06 +0300)]
staging: msm: tvenc: fix error handling

Driver init() function should return error code.
Also fix tvenc_clk leak.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: fix intel_sst/intelmid sound build
Randy Dunlap [Wed, 24 Nov 2010 19:46:09 +0000 (11:46 -0800)]
staging: fix intel_sst/intelmid sound build

SND_INTELMID selects 3 SND_* kconfig symbols, but that is useless
if the SOUND & SND symbols in their hierarchy are not enabled,
so make this symbol depend on SOUND & SND.

ERROR: "snd_pcm_period_elapsed" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_card_create" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_hw_constraint_integer" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_device_new" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_set_ops" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_jack_new" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_lib_free_pages" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_lib_ioctl" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_lib_malloc_pages" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_ctl_new1" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_lib_preallocate_pages_for_all" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_card_free" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_card_register" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_jack_report" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_pcm_new" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!
ERROR: "snd_ctl_add" [drivers/staging/intel_sst/snd-intelmid.ko] undefined!

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: Remove BUSTYPE macro
Brett Rudley [Tue, 23 Nov 2010 23:30:02 +0000 (15:30 -0800)]
staging: brcm80211: Remove BUSTYPE macro

BUSTYPE isn't used in this configuration.

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove unused dhd_ops_virt variable definition
Arend van Spriel [Tue, 23 Nov 2010 21:20:31 +0000 (22:20 +0100)]
staging: brcm80211: remove unused dhd_ops_virt variable definition

The variable dhd_ops_virt was used before although its use was rather
limited as can be found in previous commit:

| commit 4fd68ae1a558043a2cc4ea2faf7235e71c3241aa
| Author: Julia Lawall <julia@diku.dk>
| Date:   Tue Oct 26 12:25:33 2010 +0200
|
|    drivers/staging/brcm80211/brcmfmac/dhd_linux.c: delete double assignment
|

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Reviewed-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove some more packet related macros
Arend van Spriel [Tue, 23 Nov 2010 21:20:30 +0000 (22:20 +0100)]
staging: brcm80211: remove some more packet related macros

macros PKTHEADROOM and PKTTAILROOM have been replaced by native
skbuff functions and macros PKTALLOCED and PKTUNALLOC have been
removed.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Reviewed-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: removed packet macros for accessing sk_buff fields
Arend van Spriel [Tue, 23 Nov 2010 13:06:24 +0000 (14:06 +0100)]
staging: brcm80211: removed packet macros for accessing sk_buff fields

With the packet storage type changed from void pointer to struct sk_buff
pointer there is no need for macros for accessing these fields through
casting. These can now be accessed directly.

Reviewed-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: change packet buffer type to native struct sk_buff
Arend van Spriel [Tue, 23 Nov 2010 13:06:23 +0000 (14:06 +0100)]
staging: brcm80211: change packet buffer type to native struct sk_buff

The packet queues now store struct sk_buff pointer and subsequently
all driver code handling packets now use struct sk_buff as package
storage type. Next step will be getting rid of packet macros.

Reviewed-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: remove unneccessary packets funtion prototype
Arend van Spriel [Tue, 23 Nov 2010 13:06:22 +0000 (14:06 +0100)]
staging: brcm80211: remove unneccessary packets funtion prototype

The prototype for function pktsegcnt in bmcutils.h is not defined
nor used anywhere in the driver so it can be removed.

Reviewed-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: add include file for using semaphore related definitions
Arend van Spriel [Tue, 23 Nov 2010 07:04:29 +0000 (08:04 +0100)]
staging: brcm80211: add include file for using semaphore related definitions

Source wl_iw.c uses semaphore definitions and as such should include
<linux/semaphore.h>.

Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agostaging: brcm80211: OSL shrink: Remove OSL_PCI_READ/WRITE_CONFIG
Brett Rudley [Tue, 23 Nov 2010 00:58:52 +0000 (16:58 -0800)]
staging: brcm80211: OSL shrink: Remove OSL_PCI_READ/WRITE_CONFIG

Replace OSL layer PCI READ/WRITE macros with native calls.

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoMerge branch 'work' into staging-next
Greg Kroah-Hartman [Mon, 29 Nov 2010 19:21:25 +0000 (11:21 -0800)]
Merge branch 'work' into staging-next

14 years agoStaging: sep: do not select the driver by default
Greg Kroah-Hartman [Mon, 29 Nov 2010 19:18:08 +0000 (11:18 -0800)]
Staging: sep: do not select the driver by default

The Kconfig file should not have 'y' as the default, especially
as the driver will crash a machine if it is loaded and the hardware
is not present.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Mark Allyn <mark.a.allyn@intel.com>
Cc: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: do not select the driver by default
Greg Kroah-Hartman [Mon, 29 Nov 2010 19:18:08 +0000 (11:18 -0800)]
Staging: sep: do not select the driver by default

The Kconfig file should not have 'y' as the default, especially
as the driver will crash a machine if it is loaded and the hardware
is not present.

Cc: Mark Allyn <mark.a.allyn@intel.com>
Cc: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: Fix crash if a device is not found
Alan Cox [Wed, 24 Nov 2010 19:39:20 +0000 (19:39 +0000)]
Staging: sep: Fix crash if a device is not found

The existing code works mostly by luck. The PCI probe is done by the
register and completes before the register returns thus allowing the other
init code to run in time. Without a SEP or if unlucky this doesn't occur
and you get an OOPS which for some reason causes grumpiness.

As the season of good b^Hcheer is supposed to be approaching we should
probably fix it.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: clean up a couple of spots missed in pass one
Alan Cox [Wed, 24 Nov 2010 19:39:07 +0000 (19:39 +0000)]
Staging: sep: clean up a couple of spots missed in pass one

Another copy_user case and some formatting of dbg

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: cant is an angular inclination
Alan Cox [Wed, 24 Nov 2010 19:38:54 +0000 (19:38 +0000)]
Staging: sep: cant is an angular inclination

So use can't instead.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: Make SEP consistent
Alan Cox [Wed, 24 Nov 2010 19:38:39 +0000 (19:38 +0000)]
Staging: sep: Make SEP consistent

SEP is initials so make it consistent in the driver, ditto DMA and DCB
Consistent capitalisation of comment leads

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: Use kzalloc when needed
Alan Cox [Wed, 24 Nov 2010 19:38:21 +0000 (19:38 +0000)]
Staging: sep: Use kzalloc when needed

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: clean up some of the obvious sillies
Alan Cox [Wed, 24 Nov 2010 19:38:02 +0000 (19:38 +0000)]
Staging: sep: clean up some of the obvious sillies

Various assignments are done but not used
dev_dbg formatting is a bit weird and wraps when not needed
Take out some of the blank lines and reformat a bit to reduce view size
Remove some comments that are obvious
Fix else formatting
Remove some user triggerable dev_warns
Fix copy_from_user error return cases (-EFAULT not bytes copied)

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: Fix the kernel-doc in SEP
Alan Cox [Wed, 24 Nov 2010 19:34:52 +0000 (19:34 +0000)]
Staging: sep: Fix the kernel-doc in SEP

The long blurb goes at the end

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: clean up caller_id function
Alan Cox [Wed, 24 Nov 2010 19:34:25 +0000 (19:34 +0000)]
Staging: sep: clean up caller_id function

This is called on a kmalloc/memset object. Remove everything that isn't a
set to zero

Oh look 8)

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: netlink - what netlink
Alan Cox [Wed, 24 Nov 2010 19:34:08 +0000 (19:34 +0000)]
Staging: sep: netlink - what netlink

Kill unused stuff

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: handle the memrar stuff in the headers
Alan Cox [Wed, 24 Nov 2010 19:33:55 +0000 (19:33 +0000)]
Staging: sep: handle the memrar stuff in the headers

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: handle the rar definition stuff in the header
Alan Cox [Wed, 24 Nov 2010 19:33:43 +0000 (19:33 +0000)]
Staging: sep: handle the rar definition stuff in the header

SEP isn't the only driver that may need to handle both cases easily

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sep: minimal fix for wrong include
Alan Cox [Wed, 24 Nov 2010 19:33:26 +0000 (19:33 +0000)]
Staging: sep: minimal fix for wrong include

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sst: add ioctls for post processing algorithm interface
Vinod Koul [Mon, 22 Nov 2010 10:33:51 +0000 (10:33 +0000)]
Staging: sst: add ioctls for post processing algorithm interface

This patch adds two new ioctls to intel_sst_ctrl device.
This i/f can be used by application to send algorithm parameters

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
[This will need further discussion in the context of the final ALSA interface
 but is fine for staging, ie anyone who relies on it should expect changes
 Also fixed a missing kmalloc fail check]
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sst: Construct fw string name runtime
Vinod Koul [Mon, 22 Nov 2010 10:33:40 +0000 (10:33 +0000)]
Staging: sst: Construct fw string name runtime

The firmware name for each platform is appended by PCI id of device.
This patch makes use of pci id to construct the string rather than
hardcode the string.

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: sst: Add runtime PM support
Vinod Koul [Mon, 22 Nov 2010 10:33:28 +0000 (10:33 +0000)]
Staging: sst: Add runtime PM support

This adds runtime PM support for audio driver.
This also fixes LPA audio mode for moorestown platform

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Use kernel functions to identify broadcasts
Sven Eckelmann [Sun, 21 Nov 2010 23:56:07 +0000 (00:56 +0100)]
Staging: batman-adv: Use kernel functions to identify broadcasts

linux/etherdevice.h already provides functions to classify different
ethernet addresses. These inlineable functions should be used instead of
custom functions.

The check for multicast together with multicast can also be replaced
with a single test for multicast because for every ethernet address x
following is always true:

is_broadcast_ether_addr(x) => is_multicast_ether_addr(x)

or when looking more at the implementation:

(FF:FF:FF:FF:FF:FF == x) => [(01:00:00:00:00:00 & x) != 00:00:00:00:00:00]

Reported-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Use kernel version min macro
Sven Eckelmann [Sun, 21 Nov 2010 23:56:06 +0000 (00:56 +0100)]
Staging: batman-adv: Use kernel version min macro

The kernel headers already provide different versions of a min/max macro
which should be used by all modules according to
Documentation/CodingStyle.

Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: add gateway IPv6 support by filtering DHCPv6 messages
Marek Lindner [Sun, 21 Nov 2010 23:56:05 +0000 (00:56 +0100)]
Staging: batman-adv: add gateway IPv6 support by filtering DHCPv6 messages

Some additional checks will be needed in case of extension headers
like the fragmentation or hop-by-hop (for jumbo frames for example)
headers or ipsec stuff. But this patch should do for most people
for now, the rest can be added with a later one.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Acked-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: best gw DHCP filter 802.1Q support
Marek Lindner [Sun, 21 Nov 2010 23:56:04 +0000 (00:56 +0100)]
Staging: batman-adv: best gw DHCP filter 802.1Q support

The DHCP filter inspects packets to determine whether or not to send
them via ethernet unicast. This patch adds 802.1Q (vlan) support for
this check.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
[sven.eckelmann@gmx.de: Rework on top of current version]
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: send DHCP requests directly to the chosen gw
Marek Lindner [Sun, 21 Nov 2010 23:56:03 +0000 (00:56 +0100)]
Staging: batman-adv: send DHCP requests directly to the chosen gw

If the gateway client mode is active batman-adv will send the
broadcasted DHCP requests via unicast to the currently selected best
gateway. Therefore attached clients can profit from batman's knowledge
about the network topology.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
[sven.eckelmann@gmx.de: Rework on top of current version]
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: adding gateway functionality
Marek Lindner [Sun, 21 Nov 2010 23:56:02 +0000 (00:56 +0100)]
Staging: batman-adv: adding gateway functionality

Via the /sys filesystem you can change the gateway mode of a node using
gw_mode. Adjustments to it can be done using gw_bandwidth for server
mode and gw_sel_class for client mode.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
[sven.eckelmann@gmx.de: Rework on top of current version]
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Limit spin_locks to spin_lock_bh
Sven Eckelmann [Sun, 21 Nov 2010 23:56:01 +0000 (00:56 +0100)]
Staging: batman-adv: Limit spin_locks to spin_lock_bh

spin_lock_irqsave disables the IRQs and stores them inside the flags
provided by the caller. This is needed to protect a bottom half handler
or a user context critical section from being interrupted by an
interrupt handler which also tries to acquire the spinlock and locks
forever.

The linux device drivers will receive the packets inside an interrupt
handler and the network infrastructure will process them inside bottom
half. Thus batman-adv will only run in user context and bottom half
handlers. We can conclude that batman-adv doesn't share its own
spinlocks with real interrupt handlers.

This makes it possible to exchange the quite complex spin_lock_irqsave
with spin_lock_bh which only stops bottom halves from running on the
current cpu, but allows interrupt handlers to take over to keep the
interrupt latency low.

Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Rewrite hash using hlist_*
Sven Eckelmann [Sun, 21 Nov 2010 23:56:00 +0000 (00:56 +0100)]
Staging: batman-adv: Rewrite hash using hlist_*

The hash implementation is a complete implementation of a hash using
buckets as hash entries and overflow buckets attached to them.

The kernel already provides datastructures hlist_head and hlist_node
which can be used to implement an hash using lists as hash buckets. So
it is better to implement heavily used functionality on top of those
instead of providing a full hash implementation.

The rewrite changes the behavior of some functions slightly:
 * hash_add add elements to the front instead of the tail
 * hash_iterate doesn't provide pointer to access bucket->data directly,
   but it can be accessed using hlist_entry

Reported-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Make hash_iterate inlineable
Sven Eckelmann [Sun, 21 Nov 2010 23:55:59 +0000 (00:55 +0100)]
Staging: batman-adv: Make hash_iterate inlineable

hash_iterate is next to the function pointers the most called function
related to hashes which benefits from inlining as it is uses in loops.

Reported-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Move hash callback related function to header
Sven Eckelmann [Sun, 21 Nov 2010 23:55:58 +0000 (00:55 +0100)]
Staging: batman-adv: Move hash callback related function to header

To enable inlining of the function pointers hashdata_choose_cb,
hashdata_choose_cb and hashdata_free_cb, also the hash functions which
uses them must be inlined by the called function.

This should increase the performance, but also increases the size of the
generated machine code slightly.

Reported-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Remove hashdata_choose_cb from hash
Sven Eckelmann [Sun, 21 Nov 2010 23:55:57 +0000 (00:55 +0100)]
Staging: batman-adv: Remove hashdata_choose_cb from hash

Function pointers cannot be inlined by a compiler and thus always has
the overhead of an call. hashdata_choose_cb's are one of the most often
called function pointers and its overhead must kept relative low.

As first step, every function which uses this function pointer takes it
as parameter instead of storing it inside the hash abstraction
structure.

This not generate any performance gain right now. The called functions
must also be able to be inlined by the calling functions to enable
inlining of the function pointer.

Reported-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Remove hashdata_compare_cb from hash
Sven Eckelmann [Sun, 21 Nov 2010 23:55:56 +0000 (00:55 +0100)]
Staging: batman-adv: Remove hashdata_compare_cb from hash

Function pointers cannot be inlined by a compiler and thus always has
the overhead of an call. hashdata_compare_cb's are one of the most often
called function pointers and its overhead must kept relative low.

As first step, every function which uses this function pointer takes it
as parameter instead of storing it inside the hash abstraction
structure.

This not generate any performance gain right now. The called functions
must also be able to be inlined by the calling functions to enable
inlining of the function pointer.

Reported-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Make hop_penalty configurable via sysfs
Linus Lüssing [Sun, 21 Nov 2010 23:55:55 +0000 (00:55 +0100)]
Staging: batman-adv: Make hop_penalty configurable via sysfs

When having a mixed topology of both very mobile and rather static
nodes, you are usually best advised to set the originator interval on
all nodes to a level best suited for the most mobile node.

However, if most of the nodes are rather static, this can create a lot
of undesired overhead as a trade-off then. If setting the interval too
low on the static nodes, a mobile node might be chosen as a router for
too long, not switching away from it fast enough because of its
mobility and the low frequency of ogms of static nodes.

Exposing the hop_penalty is especially useful for the stated scenario: A
static node can keep the default originator interval, a mobile node can
select a quicker one resulting in faster route updates towards this
mobile node. Additionally, such a mobile node could select a higher hop
penalty (or even set it to 255 to disable acting as a router for other
nodes) to make it less desirable, letting other nodes avoid selecting
this mobile node as a router.

Signed-off-by: Linus Lüssing <linus.luessing@ascom.ch>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Ommit storing struct device in sysfs functions
Linus Lüssing [Sun, 21 Nov 2010 23:55:54 +0000 (00:55 +0100)]
Staging: batman-adv: Ommit storing struct device in sysfs functions

We actually do not need an extra struct device variable, therefore
replacing them with defines that directly get the bat_priv or
net_device. This further reduces the code size in bat_sysfs.c and
especially shortens some macros.

Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Wrapper functions for sysfs storing
Linus Lüssing [Sun, 21 Nov 2010 23:55:53 +0000 (00:55 +0100)]
Staging: batman-adv: Wrapper functions for sysfs storing

Sysfs configuration options that just took a boolean value
(enable(d)/disable(d)/0/1) and integer setting basically all had the same
structure.

To avoid even more copy and pasting in the future and to make introducing
new configuration parameters for batman-adv simpler, more generic
wrapper functions are being introduced with this commit. They can deal with
boolean and unsigned integer parameters, storing them in the specified
atomic_t variables.

Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: Unify sysfs file names with their bat_priv atomics
Linus Lüssing [Sun, 21 Nov 2010 23:55:52 +0000 (00:55 +0100)]
Staging: batman-adv: Unify sysfs file names with their bat_priv atomics

Both sysfs entries and variable names shall be as descriptive as
possible while not exceeding a certain length. This patch renames
bat_priv atomics to be equally descriptive with their according sysfs
entries.

Unifying sysfs and bat_priv atomic names also makes it easier to find
each others pendant.

The reduced ("type"-)information which was previously indicated with a
_enabled for booleans got substituted by a comment in bat_priv.

This patch has also been done in regards for the future BAT_ATTR_*
macros (they only need one name argument instead of a file and variable
name).

Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: softif bridge loop avoidance
Marek Lindner [Sun, 21 Nov 2010 23:55:51 +0000 (00:55 +0100)]
Staging: batman-adv: softif bridge loop avoidance

By connecting multiple batman-adv mesh nodes to the same ethernet
segment a loop can be created when the soft-interface is bridged
into that ethernet segment. A simple visualization of the loop
involving the most common case - a LAN as ethernet segment:

node1  <-- LAN  -->  node2
   |                   |
 wifi  <-- mesh -->  wifi

Packets from the LAN (e.g. ARP broadcasts) will circle forever from
node1 or node2 over the mesh back into the LAN.

This patch adds the functionality to detect other batman-adv nodes
connected to the LAN and select a 'gateway' to talk to the
non-batman-adv devices on this LAN. All traffic from and to the mesh
will be handled by this gateway to avoid the loop. OGMs received via
the soft-interface are interpreted as 'port announcements' to locate
potential batman-adv nodes. The patch can also deal with vlans on
top of batX and offers a list of LAN neighbors via debugfs.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
[sven.eckelmann@gmx.de: Rework on top of current version]
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: reassemble fragmented skb if mtu allows it
Andreas Langer [Sun, 21 Nov 2010 23:55:50 +0000 (00:55 +0100)]
Staging: batman-adv: reassemble fragmented skb if mtu allows it

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: fragment forwarded packets
Andreas Langer [Sun, 21 Nov 2010 23:55:49 +0000 (00:55 +0100)]
Staging: batman-adv: fragment forwarded packets

If a packet is too big to be forwarded over an interface it will be
fragmented on-the-fly (if fragmentation is enabled).

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: remove redundant is_my_mac() check in route_unicast_packet
Andreas Langer [Sun, 21 Nov 2010 23:55:48 +0000 (00:55 +0100)]
Staging: batman-adv: remove redundant is_my_mac() check in route_unicast_packet

Callers should check the if the received packet is for us before it
calls route_unicast_packet.

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: move skb reassembly of fragmented packets into dedicated function
Andreas Langer [Sun, 21 Nov 2010 23:55:47 +0000 (00:55 +0100)]
Staging: batman-adv: move skb reassembly of fragmented packets into dedicated function

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: add frag_ prefix to all fragmentation related functions
Andreas Langer [Sun, 21 Nov 2010 23:55:46 +0000 (00:55 +0100)]
Staging: batman-adv: add frag_ prefix to all fragmentation related functions

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 years agoStaging: batman-adv: restructure fragmentation to handle batman unicast packets
Andreas Langer [Sun, 21 Nov 2010 23:55:45 +0000 (00:55 +0100)]
Staging: batman-adv: restructure fragmentation to handle batman unicast packets

The unicast_frag_send_skb() function expected 'raw' packets (without any
batman-adv header) to fragment them. This needs to be changed, so that
this function is able to fragment packets that already traveled inside
the mesh but need to be fragmented now.

Signed-off-by: Andreas Langer <an.langer@gmx.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>