linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] usb: gadget: ncm: correct endianess conversion
@ 2012-10-30  9:44 Dmytro Milinevskyy
  2012-10-31 13:35 ` Felipe Balbi
  0 siblings, 1 reply; 22+ messages in thread
From: Dmytro Milinevskyy @ 2012-10-30  9:44 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb, linux-kernel

Convert USB descriptor's fields to CPU byte order before using locally in USB NCM gadget driver.
Tested on MIPS32 big-endian device.

Signed-off-by: Dmytro Milinevskyy <milinevskyy@gmail.com>
---
  drivers/usb/gadget/f_ncm.c | 12 ++++++------
  1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index b651b52..0b9e2ad 100644
--- a/drivers/usb/gadget/f_ncm.c
+++ b/drivers/usb/gadget/f_ncm.c
@@ -102,7 +102,7 @@ static inline unsigned ncm_bitrate(struct usb_gadget *g)
  				 USB_CDC_NCM_NTB32_SUPPORTED)
  
  static struct usb_cdc_ncm_ntb_parameters ntb_parameters = {
-	.wLength = sizeof ntb_parameters,
+	.wLength = cpu_to_le16(sizeof(ntb_parameters)),
  	.bmNtbFormatsSupported = cpu_to_le16(FORMATS_SUPPORTED),
  	.dwNtbInMaxSize = cpu_to_le32(NTB_DEFAULT_IN_SIZE),
  	.wNdpInDivisor = cpu_to_le16(4),
@@ -869,15 +869,15 @@ static struct sk_buff *ncm_wrap_ntb(struct gether *port,
  	struct sk_buff	*skb2;
  	int		ncb_len = 0;
  	__le16		*tmp;
-	int		div = ntb_parameters.wNdpInDivisor;
-	int		rem = ntb_parameters.wNdpInPayloadRemainder;
-	int		pad;
-	int		ndp_align = ntb_parameters.wNdpInAlignment;
-	int		ndp_pad;
+	int		div, rem, pad, ndp_align, ndp_pad;
  	unsigned	max_size = ncm->port.fixed_in_len;
  	struct ndp_parser_opts *opts = ncm->parser_opts;
  	unsigned	crc_len = ncm->is_crc ? sizeof(uint32_t) : 0;
  
+	div = le16_to_cpu(ntb_parameters.wNdpInDivisor);
+	rem = le16_to_cpu(ntb_parameters.wNdpInPayloadRemainder);
+	ndp_align = le16_to_cpu(ntb_parameters.wNdpInAlignment);
+
  	ncb_len += opts->nth_size;
  	ndp_pad = ALIGN(ncb_len, ndp_align) - ncb_len;
  	ncb_len += ndp_pad;
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 22+ messages in thread
* [PATCH] usb: gadget: ncm: correct endianess conversion
@ 2012-11-01 15:16 Dmytro Milinevskyy
  2012-11-02 11:46 ` Sergei Shtylyov
  2012-11-04 14:30 ` Dmytro Milinevskyy
  0 siblings, 2 replies; 22+ messages in thread
From: Dmytro Milinevskyy @ 2012-11-01 15:16 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb, linux-kernel

Convert USB descriptor's fields to CPU byte order before using locally 
in USB NCM gadget driver.
Tested on MIPS32 big-endian device.

Signed-off-by: Dmytro Milinevskyy <milinevskyy@gmail.com>
---
  drivers/usb/gadget/f_ncm.c | 12 ++++++++----
  1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index b651b52..a7cdd47 100644
--- a/drivers/usb/gadget/f_ncm.c
+++ b/drivers/usb/gadget/f_ncm.c
@@ -102,7 +102,7 @@ static inline unsigned ncm_bitrate(struct usb_gadget *g)
  				 USB_CDC_NCM_NTB32_SUPPORTED)
   static struct usb_cdc_ncm_ntb_parameters ntb_parameters = {
-	.wLength = sizeof ntb_parameters,
+	.wLength = cpu_to_le16(sizeof(ntb_parameters)),
  	.bmNtbFormatsSupported = cpu_to_le16(FORMATS_SUPPORTED),
  	.dwNtbInMaxSize = cpu_to_le32(NTB_DEFAULT_IN_SIZE),
  	.wNdpInDivisor = cpu_to_le16(4),
@@ -869,15 +869,19 @@ static struct sk_buff *ncm_wrap_ntb(struct gether 
*port,
  	struct sk_buff	*skb2;
  	int		ncb_len = 0;
  	__le16		*tmp;
-	int		div = ntb_parameters.wNdpInDivisor;
-	int		rem = ntb_parameters.wNdpInPayloadRemainder;
+	int		div;
+	int		rem;
  	int		pad;
-	int		ndp_align = ntb_parameters.wNdpInAlignment;
+	int		ndp_align;
  	int		ndp_pad;
  	unsigned	max_size = ncm->port.fixed_in_len;
  	struct ndp_parser_opts *opts = ncm->parser_opts;
  	unsigned	crc_len = ncm->is_crc ? sizeof(uint32_t) : 0;
  +	div = le16_to_cpu(ntb_parameters.wNdpInDivisor);
+	rem = le16_to_cpu(ntb_parameters.wNdpInPayloadRemainder);
+	ndp_align = le16_to_cpu(ntb_parameters.wNdpInAlignment);
+
  	ncb_len += opts->nth_size;
  	ndp_pad = ALIGN(ncb_len, ndp_align) - ncb_len;
  	ncb_len += ndp_pad;
-- 
1.8.0



^ permalink raw reply related	[flat|nested] 22+ messages in thread
* [PATCH] usb: gadget: ncm: correct endianess conversion
@ 2012-10-08 20:59 Dmytro Milinevskyy
  2012-10-24 13:58 ` Sebastian Andrzej Siewior
  0 siblings, 1 reply; 22+ messages in thread
From: Dmytro Milinevskyy @ 2012-10-08 20:59 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb, linux-kernel
  Cc: Dmytro Milinevskyy

Convert USB descriptor's fields to CPU byte order before using locally in USB NCM gadget driver.
Tested on MIPS32 big-endian device.

Signed-off-by: Dmytro Milinevskyy <milinevskyy@gmail.com>
---
 drivers/usb/gadget/f_ncm.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index b651b52..fce45ab 100644
--- a/drivers/usb/gadget/f_ncm.c
+++ b/drivers/usb/gadget/f_ncm.c
@@ -869,11 +869,11 @@ static struct sk_buff *ncm_wrap_ntb(struct gether *port,
 	struct sk_buff	*skb2;
 	int		ncb_len = 0;
 	__le16		*tmp;
-	int		div = ntb_parameters.wNdpInDivisor;
-	int		rem = ntb_parameters.wNdpInPayloadRemainder;
-	int		pad;
-	int		ndp_align = ntb_parameters.wNdpInAlignment;
-	int		ndp_pad;
+	int	div = le16_to_cpu(ntb_parameters.wNdpInDivisor);
+	int	rem = le16_to_cpu(ntb_parameters.wNdpInPayloadRemainder);
+	int	pad;
+	int	ndp_align = le16_to_cpu(ntb_parameters.wNdpInAlignment);
+	int	ndp_pad;
 	unsigned	max_size = ncm->port.fixed_in_len;
 	struct ndp_parser_opts *opts = ncm->parser_opts;
 	unsigned	crc_len = ncm->is_crc ? sizeof(uint32_t) : 0;
-- 
1.7.12.2


^ permalink raw reply related	[flat|nested] 22+ messages in thread
* [PATCH] usb: gadget: ncm: correct endianess conversion
@ 2012-10-04 22:58 Dmytro Milinevskyy
  2012-10-08  6:53 ` Felipe Balbi
  0 siblings, 1 reply; 22+ messages in thread
From: Dmytro Milinevskyy @ 2012-10-04 22:58 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb, linux-kernel
  Cc: Dmytro Milinevskyy


Signed-off-by: Dmytro Milinevskyy <milinevskyy@gmail.com>
---
 drivers/usb/gadget/f_ncm.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index b651b52..fce45ab 100644
--- a/drivers/usb/gadget/f_ncm.c
+++ b/drivers/usb/gadget/f_ncm.c
@@ -869,11 +869,11 @@ static struct sk_buff *ncm_wrap_ntb(struct gether *port,
 	struct sk_buff	*skb2;
 	int		ncb_len = 0;
 	__le16		*tmp;
-	int		div = ntb_parameters.wNdpInDivisor;
-	int		rem = ntb_parameters.wNdpInPayloadRemainder;
-	int		pad;
-	int		ndp_align = ntb_parameters.wNdpInAlignment;
-	int		ndp_pad;
+	int	div = le16_to_cpu(ntb_parameters.wNdpInDivisor);
+	int	rem = le16_to_cpu(ntb_parameters.wNdpInPayloadRemainder);
+	int	pad;
+	int	ndp_align = le16_to_cpu(ntb_parameters.wNdpInAlignment);
+	int	ndp_pad;
 	unsigned	max_size = ncm->port.fixed_in_len;
 	struct ndp_parser_opts *opts = ncm->parser_opts;
 	unsigned	crc_len = ncm->is_crc ? sizeof(uint32_t) : 0;
-- 
1.7.12


^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2012-11-10 18:30 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-30  9:44 [PATCH] usb: gadget: ncm: correct endianess conversion Dmytro Milinevskyy
2012-10-31 13:35 ` Felipe Balbi
2012-11-01 15:26   ` Dmytro Milinevskyy
  -- strict thread matches above, loose matches on Subject: below --
2012-11-01 15:16 Dmytro Milinevskyy
2012-11-02 11:46 ` Sergei Shtylyov
2012-11-04 14:30   ` Dmytro Milinevskyy
2012-11-04 14:30 ` Dmytro Milinevskyy
2012-11-06 11:27   ` Felipe Balbi
2012-11-07 13:14     ` Dmytro Milinevskyy
2012-11-08 14:06       ` Felipe Balbi
2012-11-08 19:07         ` Dmytro Milinevskyy
2012-11-08 19:30           ` Felipe Balbi
2012-11-09  9:31             ` Dmytro Milinevskyy
2012-11-09 11:53               ` Felipe Balbi
2012-11-10 18:29                 ` Dmytro Milinevskyy
2012-10-08 20:59 Dmytro Milinevskyy
2012-10-24 13:58 ` Sebastian Andrzej Siewior
2012-10-28 17:30   ` Dmytro Milinevskyy
2012-10-28 17:48     ` Sebastian Andrzej Siewior
2012-10-31 13:33       ` Felipe Balbi
2012-10-04 22:58 Dmytro Milinevskyy
2012-10-08  6:53 ` Felipe Balbi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).