summaryrefslogtreecommitdiffstats
path: root/arch/arm/lib/io-pcio.S
blob: f57abfc107a7658657bc39d2dda60e2e755d38bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <linux/linkage.h>
#include <asm/hardware.h>

		.equ	pcio_high, PCIO_BASE & 0xff000000
		.equ	pcio_low,  PCIO_BASE & 0x00ffffff

		.macro	ioaddr, rd,rn
		add	\rd, \rn, #pcio_high
		.if	pcio_low
		add	\rd, \rd, #pcio_low
		.endif
		.endm

ENTRY(insl)
		ioaddr	r0, r0
		b	__arch_readsl

ENTRY(outsl)
		ioaddr	r0, r0
		b	__arch_writesl

		/* Nobody could say these are optimal, but not to worry. */

ENTRY(outsw)
		ioaddr	r0, r0
		b	__arch_writesw

ENTRY(insw)
		ioaddr	r0, r0
		b	__arch_readsw

ENTRY(insb)
		ioaddr	r0, r0
		b	__arch_readsb

ENTRY(outsb)
		ioaddr	r0, r0
		b	__arch_writesb