All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mugunthan V N <mugunthanvnm@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 5/6] drivers: usb: gadget: ether: prepare driver for driver model migration
Date: Thu, 12 May 2016 11:02:46 +0530	[thread overview]
Message-ID: <5734157E.2040902@ti.com> (raw)
In-Reply-To: <5731D2EB.4010103@denx.de>

On Tuesday 10 May 2016 05:54 PM, Marek Vasut wrote:
> On 05/10/2016 01:44 PM, Mugunthan V N wrote:
>> prepare driver for driver model migration
>>
>> Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
>> ---
>>  drivers/usb/gadget/ether.c | 72 ++++++++++++++++++++++++++++++++--------------
>>  1 file changed, 51 insertions(+), 21 deletions(-)
>>
>> diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c
>> index 47071c3..2f70ebf 100644
>> --- a/drivers/usb/gadget/ether.c
>> +++ b/drivers/usb/gadget/ether.c
>> @@ -2334,9 +2334,8 @@ int dm_usb_init(struct eth_dev *e_dev)
>>  }
>>  #endif
>>  
>> -static int usb_eth_init(struct eth_device *netdev, bd_t *bd)
>> +static int _usb_eth_init(struct ether_priv *priv)
>>  {
>> -	struct ether_priv *priv = (struct ether_priv *)netdev->priv;
>>  	struct eth_dev *dev = &priv->ethdev;
>>  	struct usb_gadget *gadget;
>>  	unsigned long ts;
>> @@ -2415,11 +2414,10 @@ fail:
>>  	return -1;
>>  }
>>  
>> -static int usb_eth_send(struct eth_device *netdev, void *packet, int length)
>> +static int _usb_eth_send(struct ether_priv *priv, void *packet, int length)
>>  {
>>  	int			retval;
>>  	void			*rndis_pkt = NULL;
>> -	struct ether_priv	*priv = (struct ether_priv *)netdev->priv;
>>  	struct eth_dev		*dev = &priv->ethdev;
>>  	struct usb_request	*req = dev->tx_req;
>>  	unsigned long ts;
>> @@ -2485,30 +2483,15 @@ drop:
>>  	return -ENOMEM;
>>  }
>>  
>> -static int usb_eth_recv(struct eth_device *netdev)
>> +static int _usb_eth_recv(struct ether_priv *priv)
>>  {
>> -	struct ether_priv *priv = (struct ether_priv *)netdev->priv;
>> -	struct eth_dev *dev = &priv->ethdev;
>> -
>>  	usb_gadget_handle_interrupts(0);
>>  
>> -	if (packet_received) {
>> -		debug("%s: packet received\n", __func__);
>> -		if (dev->rx_req) {
>> -			net_process_received_packet(net_rx_packets[0],
>> -						    dev->rx_req->length);
>> -			packet_received = 0;
>> -
>> -			rx_submit(dev, dev->rx_req, 0);
>> -		} else
>> -			error("dev->rx_req invalid");
>> -	}
>>  	return 0;
>>  }
>>  
>> -void usb_eth_halt(struct eth_device *netdev)
>> +void _usb_eth_halt(struct ether_priv *priv)
>>  {
>> -	struct ether_priv *priv = (struct ether_priv *)netdev->priv;
>>  	struct eth_dev *dev = &priv->ethdev;
>>  
>>  	/* If the gadget not registered, simple return */
>> @@ -2544,6 +2527,53 @@ void usb_eth_halt(struct eth_device *netdev)
>>  #endif
>>  }
>>  
>> +static int usb_eth_init(struct eth_device *netdev, bd_t *bd)
>> +{
>> +	struct ether_priv *priv = (struct ether_priv *)netdev->priv;
>> +
>> +	return _usb_eth_init(priv);
>> +}
>> +
>> +static int usb_eth_send(struct eth_device *netdev, void *packet, int length)
>> +{
>> +	struct ether_priv	*priv = (struct ether_priv *)netdev->priv;
>> +
>> +	return _usb_eth_send(priv, packet, length);
>> +}
>> +
>> +static int usb_eth_recv(struct eth_device *netdev)
>> +{
>> +	struct ether_priv *priv = (struct ether_priv *)netdev->priv;
>> +	struct eth_dev *dev = &priv->ethdev;
>> +	int ret;
>> +
>> +	ret = _usb_eth_recv(priv);
>> +	if (ret) {
>> +		error("error packet receive\n");
>> +		return ret;
>> +	}
>> +
>> +	if (packet_received) {
> 
> if (!packet_received)
>  return 0;
> ... the rest ...

Will fix in next version.

Regards
Mugunthan V N

  reply	other threads:[~2016-05-12  5:32 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-10 11:44 [U-Boot] [PATCH v2 0/6] DM conversion of usb ether gadget Mugunthan V N
2016-05-10 11:44 ` [U-Boot] [PATCH v2 1/6] drivers: usb: gadget: ether: adopt to usb driver model Mugunthan V N
2016-05-19  3:59   ` Simon Glass
2016-05-10 11:44 ` [U-Boot] [PATCH v2 2/6] drivers: usb: gadget: ether: access network_started using local variable Mugunthan V N
2016-05-19  3:59   ` Simon Glass
2016-05-10 11:44 ` [U-Boot] [PATCH v2 3/6] drivers: usb: gadget: ether: consolidate global devices to single struct Mugunthan V N
2016-05-19  4:00   ` Simon Glass
2016-05-10 11:44 ` [U-Boot] [PATCH v2 4/6] drivers: usb: gadget: ether: use net device priv to pass usb ether priv Mugunthan V N
2016-05-19  4:00   ` Simon Glass
2016-05-10 11:44 ` [U-Boot] [PATCH v2 5/6] drivers: usb: gadget: ether: prepare driver for driver model migration Mugunthan V N
2016-05-10 12:24   ` Marek Vasut
2016-05-12  5:32     ` Mugunthan V N [this message]
2016-05-10 11:44 ` [U-Boot] [PATCH v2 6/6] drivers: usb: gadget: ether/rndis: convert driver to adopt device driver model Mugunthan V N
2016-05-10 12:27   ` Marek Vasut
2016-05-12  5:43     ` Mugunthan V N
2016-05-12 11:34       ` Marek Vasut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5734157E.2040902@ti.com \
    --to=mugunthanvnm@ti.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.