Messages in this thread | | | Date | Tue, 16 Sep 2014 20:59:03 +0530 | From | Vinod Koul <> | Subject | Re: [PATCH] x86_64: Add memcpy32_toio to write to PCI MMIO |
| |
On Tue, Sep 09, 2014 at 10:01:18AM +0200, Clemens Ladisch wrote: > Subhransu S. Prusty wrote: > > This is needed because the hardware > > Which hardware? Every x86-64 CPU ever built by AMD, Intel, and VIA? Baytrail and few other SoCs > > > does not support 64-bit moveq insructions while writing to PCI MMIO. > > > +#ifndef CONFIG_X86_64 > > +#define MEMCPY_TOIO memcpy_toio > > +#else > > +#define MEMCPY_TOIO memcpy32_toio > > +#endif > > This does not change any code that uses memcpy_toio(). So the devices cant do 64bit memcpy_toio so we are forced to use 32bit copies only. This given us such an option > > > + for (i = 0; i < count/sizeof(u32); i++) > > + writel(*src_32++, dst_32++); > > This breaks when count is not a multiple of four. Ah yes, we can fix that
-- ~Vinod
| |