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

Shubhrajyoti Datta shubhrajyoti.datta at gmail.com
Fri Jun 3 08:16:08 PDT 2016


On Tue, May 31, 2016 at 10:45 AM, Nava kishore Manne
<nava.manne at xilinx.com> wrote:
> Hi Shubhrajyoti,
>
>
>         Thanks for the review...
>
>> >  /**
>> > + * 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.
>



More information about the linux-arm-kernel mailing list