Skip to content

Commit

Permalink
net: wwan: t7xx: use union to group port type specific data
Browse files Browse the repository at this point in the history
Use union inside t7xx_port to group port type specific data members.

Signed-off-by: M Chetan Kumar <m.chetan.kumar@linux.intel.com>
Reviewed-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
M Chetan Kumar authored and David S. Miller committed Nov 2, 2022
1 parent b0e0125 commit fece7a8
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 9 deletions.
6 changes: 5 additions & 1 deletion drivers/net/wwan/t7xx/t7xx_port.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,6 @@ struct t7xx_port_conf {
struct t7xx_port {
/* Members not initialized in definition */
const struct t7xx_port_conf *port_conf;
struct wwan_port *wwan_port;
struct t7xx_pci_dev *t7xx_dev;
struct device *dev;
u16 seq_nums[2]; /* TX/RX sequence numbers */
Expand All @@ -122,6 +121,11 @@ struct t7xx_port {
int rx_length_th;
bool chan_enable;
struct task_struct *thread;
union {
struct {
struct wwan_port *wwan_port;
} wwan;
};
};

struct sk_buff *t7xx_port_alloc_skb(int payload);
Expand Down
16 changes: 8 additions & 8 deletions drivers/net/wwan/t7xx/t7xx_port_wwan.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,12 +109,12 @@ static int t7xx_port_wwan_init(struct t7xx_port *port)

static void t7xx_port_wwan_uninit(struct t7xx_port *port)
{
if (!port->wwan_port)
if (!port->wwan.wwan_port)
return;

port->rx_length_th = 0;
wwan_remove_port(port->wwan_port);
port->wwan_port = NULL;
wwan_remove_port(port->wwan.wwan_port);
port->wwan.wwan_port = NULL;
}

static int t7xx_port_wwan_recv_skb(struct t7xx_port *port, struct sk_buff *skb)
Expand All @@ -129,7 +129,7 @@ static int t7xx_port_wwan_recv_skb(struct t7xx_port *port, struct sk_buff *skb)
return 0;
}

wwan_port_rx(port->wwan_port, skb);
wwan_port_rx(port->wwan.wwan_port, skb);
return 0;
}

Expand Down Expand Up @@ -158,10 +158,10 @@ static void t7xx_port_wwan_md_state_notify(struct t7xx_port *port, unsigned int
if (state != MD_STATE_READY)
return;

if (!port->wwan_port) {
port->wwan_port = wwan_create_port(port->dev, port_conf->port_type,
&wwan_ops, port);
if (IS_ERR(port->wwan_port))
if (!port->wwan.wwan_port) {
port->wwan.wwan_port = wwan_create_port(port->dev, port_conf->port_type,
&wwan_ops, port);
if (IS_ERR(port->wwan.wwan_port))
dev_err(port->dev, "Unable to create WWWAN port %s", port_conf->name);
}
}
Expand Down

0 comments on commit fece7a8

Please sign in to comment.