/* IO accessing functions which shouldn't be inlined because they're too big  */
void memcpy_toio(volatile void __iomem *dst, const void *src, int count)
/* IO accessing functions which shouldn't be inlined because they're too big  */
void memcpy_toio(volatile void __iomem *dst, const void *src, int count)
{
	if (((unsigned long)dst & 3) != ((unsigned long)src & 3))
		goto bytecopy;
	while ((unsigned long)dst & 3) {
		writeb(*(char *)src, dst++);
		src++;
		count--;
	}
	while (count > 3) {
		__raw_writel(*(u32 *)src, dst);
		src += 4;
		dst += 4;
		count -= 4;
	}
 bytecopy:
	while (count--) {
		writeb(*(char *)src, dst++);
		src++;
	}
}