Commit Graph

96 Commits

Author SHA1 Message Date
Ilia Mirkin
23c3298687 staging: bcm: Remove NULL check before kfree
This patch was generated by the following semantic patch:
// <smpl>
@@ expression E; @@
- if (E != NULL) { kfree(E); }
+ kfree(E);

@@ expression E; @@
- if (E != NULL) { kfree(E); E = NULL; }
+ kfree(E);
+ E = NULL;
// </smpl>

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-14 11:57:30 -07:00
Alexander Beregalov
f4a0e6b135 staging: bcm: optimize kmalloc to kzalloc
Use kzalloc rather than kmalloc followed by memset with 0.
Found by coccinelle.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-09 15:54:31 -08:00
Vinay Sawal
00b6fb2e31 Staging: bcm: Bcmnet: fixed checkpatch script reported issues
Fixed all issues reported by checkpatch script on this file.

Signed-off-by: Vinay Sawal <vinaysawal@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-09 15:54:30 -08:00
Justin P. Mattock
a0fe6029bc drivers:staging:bcm:CmHost.c Remove one to many n's in a word.
The Patch below removes one to many "n's" in a word..

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
CC: Greg Kroah-Hartman <gregkh@suse.de>
CC: Stephen Hemminger <shemminger@vyatta.com>
CC: devel@driverdev.osuosl.org
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-28 19:00:29 -08:00
Javier Martinez Canillas
78acd58746 Staging: bcm: Bcmchar: Fix some checkpatch errors
Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-18 13:21:56 -08:00
Javier Martinez Canillas
7227ba0647 Staging: bcm: Bcmchar: Fix style issues on bcm_char_read()
Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-18 13:21:56 -08:00
Javier Martinez Canillas
a7d3976edc Staging: bcm: Bcmchar: Fix style issues on bcm_char_release()
Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-18 13:21:55 -08:00
Javier Martinez Canillas
1e1233234e Staging: bcm: Bcmchar: Fix style issues on bcm_char_open()
Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-18 13:21:55 -08:00
Javier Martinez Canillas
00719fab9f Staging: bcm: Check correct user provided length and fix error code returned
bcm driver copies a buffer length provided by userpace without checking it.

RxCntrlMsgBitMask is of type unsigned long so only makes sense to copy
sizeof(unsigned long) bytes.

Also, copy_from_user() returns the number of bytes that could not be copied.
The driver is returning that value as error code instead of -EFAULT.

This patch solves both issues.

Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
Cc: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-04 13:01:02 -08:00
Andres Salomon
e6f597a142 staging: fix build failure in bcm driver
While building latest Linus git, I hit the following:

    CC [M]  drivers/staging/bcm/Qos.o
  drivers/staging/bcm/Qos.c: In function ‘PruneQueue’:
  drivers/staging/bcm/Qos.c:367: error: ‘struct netdev_queue’ has no member named ‘tx_dropped’
  drivers/staging/bcm/Qos.c: In function ‘flush_all_queues’:
  drivers/staging/bcm/Qos.c:416: error: ‘struct netdev_queue’ has no member named ‘tx_dropped’
  make[5]: *** [drivers/staging/bcm/Qos.o] Error 1
  make[4]: *** [drivers/staging/bcm] Error 2
  make[3]: *** [drivers/staging] Error 2

As well as:

    CC [M]  drivers/staging/bcm/Transmit.o
  drivers/staging/bcm/Transmit.c: In function ‘SetupNextSend’:
  drivers/staging/bcm/Transmit.c:163: error: ‘struct netdev_queue’ has no member named ‘tx_bytes’
  drivers/staging/bcm/Transmit.c:164: error: ‘struct netdev_queue’ has no member named ‘tx_packets’
  make[2]: *** [drivers/staging/bcm/Transmit.o] Error 1

tx_dropped/tx_bytes_tx_packets were removed in commit 1ac9ad13.  This patch
converts bcm to use net_device_stats instead of netdev_queue.

Acked-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Andres Salomon <dilinger@queued.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-17 17:39:39 -08:00
Linus Torvalds
949f6711b8 Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
* 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (510 commits)
  staging: speakup: fix failure handling
  staging: usbip: remove double giveback of URB
  Staging: batman-adv: Remove batman-adv from staging
  Staging: hv: Use only one txf buffer per channel and kmalloc/GFP_KERNEL on initialize
  staging: hv: remove unneeded osd_schedule_callback
  staging: hv: convert channel_mgmt.c to not call osd_schedule_callback
  staging: hv: convert vmbus_on_msg_dpc to not call osd_schedule_callback
  staging: brcm80211: Fix WL_<type> logging macros
  Staging: IIO: DDS: AD9833 / AD9834 driver
  Staging: IIO: dds.h convenience macros
  Staging: IIO: Direct digital synthesis abi documentation
  staging: brcm80211: Convert ETHER_TYPE_802_1X to ETH_P_PAE
  staging: brcm80211: Remove unused ETHER_TYPE_<foo> #defines
  staging: brcm80211: Remove ETHER_HDR_LEN, use ETH_HLEN
  staging: brcm80211: Convert ETHER_ADDR_LEN to ETH_ALEN
  staging: brcm80211: Convert ETHER_IS<FOO> to is_<foo>_ether_addr
  staging: brcm80211: Remove unused ether_<foo> #defines and struct
  staging: brcm80211: Convert ETHER_IS_MULTI to is_multicast_ether_addr
  staging: brcm80211: Remove unused #defines ETHER_<foo>_LOCALADDR
  Staging: comedi: Fix checkpatch.pl issues in file s526.c
  ...

Fix up trivial conflict in drivers/video/udlfb.c
2011-01-10 16:04:53 -08:00
Greg Kroah-Hartman
36facadd9e Merge branch 'usb-next' into musb-merge
* usb-next: (132 commits)
  USB: uas: Use GFP_NOIO instead of GFP_KERNEL in I/O submission path
  USB: uas: Ensure we only bind to a UAS interface
  USB: uas: Rename sense pipe and sense urb to status pipe and status urb
  USB: uas: Use kzalloc instead of kmalloc
  USB: uas: Fix up the Sense IU
  usb: musb: core: kill unneeded #include's
  DA8xx: assign name to MUSB IRQ resource
  usb: gadget: g_ncm added
  usb: gadget: f_ncm.c added
  usb: gadget: u_ether: prepare for NCM
  usb: pch_udc: Fix setup transfers with data out
  usb: pch_udc: Fix compile error, warnings and checkpatch warnings
  usb: add ab8500 usb transceiver driver
  USB: gadget: Implement runtime PM for MSM bus glue driver
  USB: gadget: Implement runtime PM for ci13xxx gadget
  USB: gadget: Add USB controller driver for MSM SoC
  USB: gadget: Introduce ci13xxx_udc_driver struct
  USB: gadget: Initialize ci13xxx gadget device's coherent DMA mask
  USB: gadget: Fix "scheduling while atomic" bugs in ci13xxx_udc
  USB: gadget: Separate out PCI bus code from ci13xxx_udc
  ...
2010-12-16 10:05:06 -08:00
Dan Carpenter
37db526463 Staging: Beceem: more checkpatch.pl changes to InterfaceInit.c
The only checkpatch.pl issues remaining still remaining are line length
complaints.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:45 -08:00
Dan Carpenter
07a7f68800 Staging: Beceem: improve debug printk statements
These are just small changes.  Some grammar and wording changes.  I added
new lines to the end of all the print statements.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:45 -08:00
Dan Carpenter
6b74705e15 Staging: Beceem: use after free in bcm_exit()
We can't call class_destroy() until after the driver has been deregistered.
It leads to a NULL deref on module unload.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:45 -08:00
Dan Carpenter
cd0b0ebfbe Staging: Beceem: remove old kernel compatibility code
This drops compatability for everything from 2.4 to 2.6.35.  Now it only
works on the latest kernel.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:45 -08:00
Dan Carpenter
c2a0b162db Staging: Beceem: white space changes to InterfaceInit.c
This patch only changes:
1) spaces, tabs, and newline characters.
2) comment styles.

The compiled object file is the same before and after except for line
number changes.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:44 -08:00
Dan Carpenter
2a314742d3 Staging: Beceem: use lower case "int" instead of "INT"
This patch changes:
	INT => int
	ULONG => unsigned long
	VOID => void

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:44 -08:00
Dan Carpenter
85c0b1760a Staging: Beceem: add USB id for BCSM250 Mobile WiMAX
Signed-off-by: Dan Carpenter <error27@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-06 16:09:43 -08:00
Alan Stern
2f15744c1d USB: fix leftover references to udev->autosuspend_delay
This patch (as1436) takes care of leftover references to
udev->autosuspend_delay that didn't get removed during the earlier
conversion to the runtime-PM autosuspend API.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-17 13:24:47 -08:00
Dan Carpenter
2e31613901 Staging: bcm: signedness bug in InitCardAndDownloadFirmware()
status is used to store negative error codes throughout.  The only place
where this is a runtime bug is if create_worker_threads() fails.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 12:31:50 -08:00
Dan Carpenter
f05321cca5 Staging: bcm: signedness bug in StoreSFParam()
wrm() returns negative error codes so "ret" needs to be signed here.
There was place where wrm() returned positive EACCES instead of
negative -EACCES so I fixed that as well.  Also a few checkpatch.pl
issues.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 12:31:50 -08:00
Joe Perches
859171ca92 drivers/staging: Remove unnecessary semicolons
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 12:06:47 -08:00
Greg Kroah-Hartman
491acf0032 Staging: Merge 2.6.37-rc2 into staging-next
This was necessary in order  to resolve some conflicts that happened
between -rc1 and -rc2 with the following files:
	drivers/staging/bcm/Bcmchar.c
	drivers/staging/intel_sst/intel_sst_app_interface.c

All should be resolved now.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 10:44:50 -08:00
Jesper Juhl
3701befc44 Staging, bcm: Remove unnecessary casts of void ptr returning alloc function return values
Here's a patch against a copy of linux-next that I just cloned.

Don't pointlessly cast pointers returned by allocation functions that
return void pointers which are implicitly converted.
For drivers/staging/bcm/

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-10 16:28:31 -08:00
Alejandro R. Sedeño
16618c20e1 Staging: beceem: Move ZTE TU25's USB id to the beceem module
Signed-off-by: Alejandro R. Sedeño <asedeno@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-10 16:28:30 -08:00
Alejandro R. Sedeño
b706113f14 Staging: beceem: Use 32-bit integers for hardware register values
Switching to UINT because that's what the rest of this codebase uses.

Signed-off-by: Alejandro R. Sedeño <asedeno@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-10 16:28:30 -08:00
Dan Carpenter
eccbf04a90 Staging: bcm: use get_user() to access user pointers
This fixes some places that dereference user pointers directly instead
of using get_user().

Please especially check my changes to IOCTL_BCM_GET_CURRENT_STATUS.  The
original code modified the struct which "arg" was pointing to.  I think
this was a bug in the original code and that we only wanted to write to
the OutputBuffer. Also with the original code you could read as much
memory as you wanted so I had to put a cap on OutputLength.  The only
value of OutputLength that makes sense is sizeof(LINK_STATE) so now if
OutputLength is not sizeof(LINK_STATE) it returns -EINVAL.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 13:32:36 -08:00
Stephen Hemminger
2932af344a beceem: update TODO list
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 14:18:16 -04:00
Stephen Hemminger
349fa79498 beceem: dump control packet information
Add control packet information is useful for debugging.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 14:10:41 -04:00
Stephen Hemminger
4ea4f7a0d3 beceem: change startup messages
Change the regsister/unregister routines to generate better
messages, and control arrival of new frames when USB device is
unplugged.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 14:06:24 -04:00
Stephen Hemminger
9c5d77009d beceem: don't overrun user buffer on read
Serious bug in original code, if app reads 10 bytes but 20 byte msg
received memory would get overwritten.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 13:59:01 -04:00
Stephen Hemminger
5cf084f44a beceem: eliminate unused bcm_jiffies
Unused, unneeded, and bogus.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 13:57:35 -04:00
Stephen Hemminger
78afa9990f beceem: fix definition of VLAN header type
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 13:54:21 -04:00
Stephen Hemminger
cacd92222d beceem: statistics and transmit queue changes
Use standard network statistics variables and routines.
Transmit counters are per queue, and skb mapping is already in
skb and does not need to be recomputed. Move SearchVcId to only
place it is used.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 13:53:30 -04:00
Stephen Hemminger
b5ebd85b2b beceem: do classification even if device is offline
Since classification and queue control are separate, allow
classification even if device is down now; this avoids races
on startup/shutdown.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:37:52 -04:00
Stephen Hemminger
429a5908fe beceem: off by one on queue index
The driver allocates 18 queues (0..16) are for traffic, and 17
is a bit bucket.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:37:48 -04:00
Stephen Hemminger
9dd47ee7dd beceem: make local functions static
Use namespace tool from kernel scripts to identify dead code and
functions that should be static.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:37:05 -04:00
Stephen Hemminger
4540055492 beceem: remove unused code to dump header
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:26:08 -04:00
Stephen Hemminger
ac1b1ae7f8 beceem: transmit code cleanup
Eliminate global variable in transmit path
The Leader can be on the stack, and get rid of unnecessary timeval.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:20:09 -04:00
Stephen Hemminger
1da9badcf0 beceem: allow multicast/broadcast
Even though wimax isn't really a broadcast medium, pretend it is.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:19:02 -04:00
Stephen Hemminger
9ec4475bf1 beceem: debug message format changes
Add more debug messages and make them similar to other drivers

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:18:36 -04:00
Stephen Hemminger
e4d46254da beceem: use get_seconds for elapsed time
get_seconds is lower overhead and fine if all driver wants to do
is keep track of seconds.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:14:26 -04:00
Stephen Hemminger
2d08748ae5 beceem: module initialization
Get rid of boot messages and put in correct place.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:14:01 -04:00
Stephen Hemminger
4fd64dd0c1 beceem: add network device message level control
Provide standard interface to control verbosity of debug messages

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:12:31 -04:00
Stephen Hemminger
e39e3be66e beceem: change format of debug message
Statistic point is now u32 (like it has to be).

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:06:44 -04:00
Stephen Hemminger
3349d95b3f beceem: clean up adapter structure
Remove dead fields, change fields that only have true/false to boolean;
and rearrange to save space.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 12:06:39 -04:00
Stephen Hemminger
9e0a3169a3 beceem: create class on module installation
First step to supporting multiple devices, create device class
when module is initialized.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 10:24:16 -04:00
Stephen Hemminger
46c3790eb5 beceem: convert to kernel coding style
Change indentation etc, to conform to acceptable kernel style

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 10:16:29 -04:00
Stephen Hemminger
5afb5145a1 beceem: remove useless debug function entry messages
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
2010-11-01 10:07:20 -04:00