Thread (12 messages) 12 messages, 4 authors, 2016-09-01

[PATCH v4] Axi-usb: Add support for 64-bit addressing.

From: Shubhrajyoti Datta <hidden>
Date: 2016-06-03 15:16:12
Also in: linux-devicetree, lkml

On Tue, May 31, 2016 at 10:45 AM, Nava kishore Manne
[off-list ref] wrote:
Hi Shubhrajyoti,


        Thanks for the review...
quoted
quoted
 /**
+ * xudc_write64 - write 64bit value to device registers
+ * @ep: pointer to the usb device endpoint structure.
+ * @offset: register offset
+ * @val: data to be written
+ **/
+static void xudc_write64(struct xusb_ep *ep, u32 offset, u64 val) {
+       struct xusb_udc *udc = ep->udc;
+
+       udc->write_fn(udc->addr, offset, lower_32_bits(val));
+       udc->write_fn(udc->addr, offset+0x04, upper_32_bits(val));
can we move this to a single 64 bit write?
Initially I sent the patches with writeq() ,lo_hi_writeq()  later we decided to replace with write_fun().
The reason for this is lo_hi_writeq() always assumes a little-endian register, so it's broken if anyone builds this device with big-endian registers.
So replaced the 64bit calls with write_fun() as suggested by Arnd Bergmann. Hope it clears your query.
Please refer to the below thread

        http://lkml.iu.edu/hypermail/linux/kernel/1604.2/02046.html
missed that discurssion.

thanks

Regards,
Navakishore.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help