lkml.org 
[lkml]   [2008]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 04/10] nozomi driver update
    Date
    From: Frank Seidel <fseidel@suse.de>

    Minor cleanups and removal of in-file changelog:

    - Correction of misspellings and wrong encoded Name
    - changed 'unsigned' to 'unsigned int' for better readability
    - use of generic devicefile access macro
    - fixed/added explanatory comment to ntty_put_char

    Signed-off-by: Frank Seidel <fseidel@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ---
    drivers/char/nozomi.c | 122 ++++++++++++++----------------------------------
    1 files changed, 36 insertions(+), 86 deletions(-)

    diff --git a/drivers/char/nozomi.c b/drivers/char/nozomi.c
    index 6076e66..86ded7e 100644
    --- a/drivers/char/nozomi.c
    +++ b/drivers/char/nozomi.c
    @@ -2,7 +2,7 @@
    * nozomi.c -- HSDPA driver Broadband Wireless Data Card - Globe Trotter
    *
    * Written by: Ulf Jakobsson,
    - * Jan �erfeldt,
    + * Jan Åkerfeldt,
    * Stefan Thomasson,
    *
    * Maintained by: Paul Hardwick (p.hardwick@option.com)
    @@ -38,60 +38,6 @@
    * --------------------------------------------------------------------------
    */

    -/*
    - * CHANGELOG
    - * Version 2.1d
    - * 11-November-2007 Jiri Slaby, Frank Seidel
    - * - Big rework of multicard support by Jiri
    - * - Major cleanups (semaphore to mutex, endianess, no major reservation)
    - * - Optimizations
    - *
    - * Version 2.1c
    - * 30-October-2007 Frank Seidel
    - * - Completed multicard support
    - * - Minor cleanups
    - *
    - * Version 2.1b
    - * 07-August-2007 Frank Seidel
    - * - Minor cleanups
    - * - theoretical multicard support
    - *
    - * Version 2.1
    - * 03-July-2006 Paul Hardwick
    - *
    - * - Stability Improvements. Incorporated spinlock wraps patch.
    - * - Updated for newer 2.6.14+ kernels (tty_buffer_request_room)
    - * - using __devexit macro for tty
    - *
    - *
    - * Version 2.0
    - * 08-feb-2006 15:34:10:Ulf
    - *
    - * -Fixed issue when not waking up line disipine layer, could probably result
    - * in better uplink performance for 2.4.
    - *
    - * -Fixed issue with big endian during initalization, now proper toggle flags
    - * are handled between preloader and maincode.
    - *
    - * -Fixed flow control issue.
    - *
    - * -Added support for setting DTR.
    - *
    - * -For 2.4 kernels, removing temporary buffer that's not needed.
    - *
    - * -Reading CTS only for modem port (only port that supports it).
    - *
    - * -Return 0 in write_room instead of netative value, it's not handled in
    - * upper layer.
    - *
    - * --------------------------------------------------------------------------
    - * Version 1.0
    - *
    - * First version of driver, only tested with card of type F32_2.
    - * Works fine with 2.4 and 2.6 kernels.
    - * Driver also support big endian architecture.
    - */
    -
    /* Enable this to have a lot of debug printouts */
    #define DEBUG

    @@ -143,8 +89,9 @@ do { \
    /* Do we need this settable at runtime? */
    static int debug = NOZOMI_DEBUG_LEVEL;

    -#define D(lvl, args...) do {if (lvl & debug) NFO(KERN_DEBUG, ##args); } \
    - while (0)
    +#define D(lvl, args...) do \
    + {if (lvl & debug) NFO(KERN_DEBUG, ##args); } \
    + while (0)
    #define D_(lvl, args...) D(lvl, ##args)

    /* These printouts are always printed */
    @@ -273,13 +220,13 @@ enum port_type {
    /* Big endian */

    struct toggles {
    - unsigned enabled:5; /*
    + unsigned int enabled:5; /*
    * Toggle fields are valid if enabled is 0,
    * else A-channels must always be used.
    */
    - unsigned diag_dl:1;
    - unsigned mdm_dl:1;
    - unsigned mdm_ul:1;
    + unsigned int diag_dl:1;
    + unsigned int mdm_dl:1;
    + unsigned int mdm_ul:1;
    } __attribute__ ((packed));

    /* Configuration table to read at startup of card */
    @@ -320,19 +267,19 @@ struct config_table {
    /* This stores all control downlink flags */
    struct ctrl_dl {
    u8 port;
    - unsigned reserved:4;
    - unsigned CTS:1;
    - unsigned RI:1;
    - unsigned DCD:1;
    - unsigned DSR:1;
    + unsigned int reserved:4;
    + unsigned int CTS:1;
    + unsigned int RI:1;
    + unsigned int DCD:1;
    + unsigned int DSR:1;
    } __attribute__ ((packed));

    /* This stores all control uplink flags */
    struct ctrl_ul {
    u8 port;
    - unsigned reserved:6;
    - unsigned RTS:1;
    - unsigned DTR:1;
    + unsigned int reserved:6;
    + unsigned int RTS:1;
    + unsigned int DTR:1;
    } __attribute__ ((packed));

    #else
    @@ -340,10 +287,10 @@ struct ctrl_ul {

    /* This represents the toggle information */
    struct toggles {
    - unsigned mdm_ul:1;
    - unsigned mdm_dl:1;
    - unsigned diag_dl:1;
    - unsigned enabled:5; /*
    + unsigned int mdm_ul:1;
    + unsigned int mdm_dl:1;
    + unsigned int diag_dl:1;
    + unsigned int enabled:5; /*
    * Toggle fields are valid if enabled is 0,
    * else A-channels must always be used.
    */
    @@ -379,19 +326,19 @@ struct config_table {

    /* This stores all control downlink flags */
    struct ctrl_dl {
    - unsigned DSR:1;
    - unsigned DCD:1;
    - unsigned RI:1;
    - unsigned CTS:1;
    - unsigned reserverd:4;
    + unsigned int DSR:1;
    + unsigned int DCD:1;
    + unsigned int RI:1;
    + unsigned int CTS:1;
    + unsigned int reserverd:4;
    u8 port;
    } __attribute__ ((packed));

    /* This stores all control uplink flags */
    struct ctrl_ul {
    - unsigned DTR:1;
    - unsigned RTS:1;
    - unsigned reserved:6;
    + unsigned int DTR:1;
    + unsigned int RTS:1;
    + unsigned int reserved:6;
    u8 port;
    } __attribute__ ((packed));
    #endif
    @@ -694,7 +641,7 @@ static void dump_table(const struct nozomi *dc)
    dc->config_table.ul_ctrl_len);
    }
    #else
    -static __inline__ void dump_table(const struct nozomi *dc) { }
    +static inline void dump_table(const struct nozomi *dc) { }
    #endif

    /*
    @@ -1102,7 +1049,7 @@ static int send_flow_control(struct nozomi *dc)
    }

    /*
    - * Handle donlink data, ports that are handled are modem and diagnostics
    + * Handle downlink data, ports that are handled are modem and diagnostics
    * Return 1 - ok
    * Return 0 - toggle fields are out of sync
    */
    @@ -1363,7 +1310,7 @@ static ssize_t card_type_show(struct device *dev, struct device_attribute *attr,

    return sprintf(buf, "%d\n", dc->card_type);
    }
    -static DEVICE_ATTR(card_type, 0444, card_type_show, NULL);
    +static DEVICE_ATTR(card_type, S_IRUGO, card_type_show, NULL);

    static ssize_t open_ttys_show(struct device *dev, struct device_attribute *attr,
    char *buf)
    @@ -1372,7 +1319,7 @@ static ssize_t open_ttys_show(struct device *dev, struct device_attribute *attr,

    return sprintf(buf, "%u\n", dc->open_ttys);
    }
    -static DEVICE_ATTR(open_ttys, 0444, open_ttys_show, NULL);
    +static DEVICE_ATTR(open_ttys, S_IRUGO, open_ttys_show, NULL);

    static void make_sysfs_files(struct nozomi *dc)
    {
    @@ -1882,7 +1829,10 @@ static void ntty_throttle(struct tty_struct *tty)
    /* just to discard single character writes */
    static void ntty_put_char(struct tty_struct *tty, unsigned char c)
    {
    - /* FIXME !!! */
    + /*
    + * card does not react correct when we write single chars
    + * to the card, so we discard them
    + */
    DBG2("PUT CHAR Function: %c", c);
    }

    --
    1.5.3.8
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2008-02-03 01:01    [W:0.053 / U:0.296 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site