Thread (1 message) 1 message, 1 author, 2013-01-21

Re: [PATCH 2/2] CDC_NCM: adding support FLAG_NOARP for Infineon modem platform

From: Sergei Shtylyov <hidden>
Date: 2013-01-21 11:33:00

Hello.

On 21-01-2013 6:20, Wei Shuai wrote:
The main problem is that these devices don't support ethernet.  They
support IP (v4 and _maybe_ v6) with an ethernet header.  Many of them
will do ARP (and IPv6 ND) as well to complete the picture, but some of
them don't and that's what these drivers try to deal with.

Note that most of the devices will run a DHCP server, so there is some
sort of IP broadcast support.  Whether that qualifies as proper ethernet
broadcast support is another question...

These devices are attempting to bridge an IP-only point-to-point
interface and an ethernet over USB interface, with the intention to make
the point-to-point interface look like ethernet to applications and
users. This is of course always going to be imperfect.  But I believe
that we should aim to help the firmware achive this goal when writing
drivers instead of working against it.  Setting IFF_NOARP and not
IFF_POINTTOPOINT is one way to do that. ---- by  Bjorn Mork [off-list ref]
    Why are you replying with this long story to my simple patch comments? :-)
2013/1/21, Sergei Shtylyov [off-list ref]:
quoted
Hello.
quoted
On 20-01-2013 10:12, Wei Shuai wrote:
quoted
quoted
Infineon(now Intel) HSPA Modem platform NCM cannot support ARP. we can
define a new common structure wwan_noarp_info.
quoted
     Wrap your lines at 76-80 columns maximum please.
quoted
quoted
Then more similiar NO ARP devices can be handled easily
    s/NO/no/.
quoted
quoted
Signed-off-by: Wei Shuai <redacted>
---
   drivers/net/usb/cdc_ncm.c |   21 +++++++++++++++++++++
   1 files changed, 21 insertions(+), 0 deletions(-)
quoted
quoted
diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
index 71b6e92..2d699b6 100644
--- a/drivers/net/usb/cdc_ncm.c
+++ b/drivers/net/usb/cdc_ncm.c
@@ -1155,6 +1155,20 @@ static const struct driver_info wwan_info = {
   	.tx_fixup = cdc_ncm_tx_fixup,
   };

+/* Same as wwan_info, but with IFF_NOARP  */
quoted
     FLAG_NOARP, you mean?
quoted
quoted
+static const struct driver_info wwan_noarp_info = {
+	.description = "Mobile Broadband Network Device (NO ARP)",
+	.flags = FLAG_POINTTOPOINT | FLAG_NO_SETINT | FLAG_MULTI_PACKET
+			| FLAG_WWAN | FLAG_NOARP,
WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help