History log of /linux-master/drivers/staging/gdm724x/gdm_mux.h
Revision Date Author Comments
# 5979afa2 20-Feb-2020 Gustavo A. R. Silva <gustavo@embeddedor.com>

staging: Replace zero-length array with flexible-array member

The current codebase makes use of the zero-length array language
extension to the C90 standard, but the preferred mechanism to declare
variable-length types such as these ones is a flexible array member[1][2],
introduced in C99:

struct foo {
int stuff;
struct boo array[];
};

By making use of the mechanism above, we will get a compiler warning
in case the flexible array does not occur last in the structure, which
will help us prevent some kind of undefined behavior bugs from being
inadvertently introduced[3] to the codebase from now on.

Also, notice that, dynamic memory allocations won't be affected by
this change:

"Flexible array members have incomplete type, and so the sizeof operator
may not be applied. As a quirk of the original implementation of
zero-length arrays, sizeof evaluates to zero."[1]

This issue was found with the help of Coccinelle.

[1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
[2] https://github.com/KSPP/linux/issues/21
[3] commit 76497732932f ("cxgb3/l2t: Fix undefined behaviour")

Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Link: https://lore.kernel.org/r/20200220132908.GA30501@embeddedor
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# ad9bd58c 25-Apr-2018 Greg Kroah-Hartman <gregkh@linuxfoundation.org>

staging: gdm724x: remove redundant license information

Now that the SPDX tag is in all gdm724x files, that identifies the
license in a specific and legally-defined manner. So the extra GPL text
wording can be removed as it is no longer needed at all.

This is done on a quest to remove the 700+ different ways that files in
the kernel describe the GPL license text. And there's unneeded stuff
like the address (sometimes incorrect) for the FSF which is never
needed.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 1146ee4a 25-Apr-2018 Greg Kroah-Hartman <gregkh@linuxfoundation.org>

staging: gdm724x: add SPDX identifiers to all files.

It's good to have SPDX identifiers in all files to make it easier to
audit the kernel tree for correct licenses.

Fix up the all of the staging gdm724x files to have a proper SPDX
identifier, based on the license text in the file itself. The SPDX
identifier is a legally binding shorthand, which can be used instead of
the full boiler plate text.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Kate Stewart <kstewart@linuxfoundation.org>
Cc: Philippe Ombredanne <pombredanne@nexb.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 601e59fa 12-Sep-2016 sayli karnik <karniksayli1995@gmail.com>

staging: gdm724x: Add spaces around the '*' operator

This patch fixes the checkpatch.pl warning:
Spaces required around the '*' operator.

Signed-off-by: sayli karnik <karniksayli1995@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 48131a6b 07-Oct-2014 Ebru Akagunduz <ebru.akagunduz@gmail.com>

staging: gdm724x: Fix incorrect type in assignment

This patch fixes following sparse warnings:
drivers/staging/gdm724x/gdm_mux.c:389:32: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:389:32: expected unsigned int [unsigned] start_flag
drivers/staging/gdm724x/gdm_mux.c:389:32: got restricted __le32 [usertype] <noident
drivers/staging/gdm724x/gdm_mux.c:390:29: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:390:29: expected unsigned int [unsigned] seq_num
drivers/staging/gdm724x/gdm_mux.c:390:29: got restricted __le32 [usertype] <noident>
drivers/staging/gdm724x/gdm_mux.c:391:34: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:391:34: expected unsigned int [unsigned] payload_size
drivers/staging/gdm724x/gdm_mux.c:391:34: got restricted __le32 [usertype] <noident>
drivers/staging/gdm724x/gdm_mux.c:392:33: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:392:33: expected unsigned short [unsigned] packet_type
drivers/staging/gdm724x/gdm_mux.c:392:33: got restricted __le16 [usertype] <noident>

Sparse found above warnings, so this patch changes variable types of
structs. Because expected and got variable types are different.

Signed-off-by: Ebru Akagunduz <ebru.akagunduz@gmail.com>
Reviewed-by: Octavian Purdila <octavian.purdila@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# bf0373f1 15-Aug-2013 Won Kang <wkang77@gmail.com>

staging: gdm7240: a TTY rewrite according to the latest TTY APIs

Fixed mis-use of mutex for gdm_table. gdm_table is refered to only
inside tty_install and port destrcut, and usb callbacks use internal
reference which was saved during urb submission

Signed-off-by: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# aee9440d 24-Jul-2013 Greg Kroah-Hartman <gregkh@linuxfoundation.org>

staging: gdm724x: fix up line lengths in the .h files

This fixes up the coding style line lengths in the .h files for this
driver.

Cc: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 61e12104 24-Jul-2013 Won Kang <wkang77@gmail.com>

staging: gdm7240: adding LTE USB driver

GCT Semiconductor GDM7240 is 4G LTE chip.
This driver supports GCT reference platform as a USB device.

Signed-off-by: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>