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
next prev parent 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.