1 | --- a/drivers/usb/host/isp116x.h |
2 | +++ b/drivers/usb/host/isp116x.h |
3 | @@ -364,22 +364,64 @@ struct isp116x_ep { |
4 | #define IRQ_TEST() do{}while(0) |
5 | #endif |
6 | |
7 | +#ifdef CONFIG_405EP |
8 | +static inline void isp116x_writew(u16 val, void __iomem *addr) |
9 | +{ |
10 | + writew(cpu_to_le16(val), addr); |
11 | +} |
12 | + |
13 | +static inline u16 isp116x_readw(void __iomem *addr) |
14 | +{ |
15 | + return le16_to_cpu(readw(addr)); |
16 | +} |
17 | + |
18 | +static inline void isp116x_raw_writew(u16 val, void __iomem *addr) |
19 | +{ |
20 | + writew(cpu_to_le16(val), addr); |
21 | +} |
22 | + |
23 | +static inline u16 isp116x_raw_readw(void __iomem *addr) |
24 | +{ |
25 | + return le16_to_cpu(readw(addr)); |
26 | +} |
27 | +#else |
28 | +static inline void isp116x_writew(u16 val, void __iomem *addr) |
29 | +{ |
30 | + writew(val, addr); |
31 | +} |
32 | + |
33 | +static inline u16 isp116x_readw(void __iomem *addr) |
34 | +{ |
35 | + return readw(addr); |
36 | +} |
37 | + |
38 | +static inline void isp116x_raw_writew(u16 val, void __iomem *addr) |
39 | +{ |
40 | + __raw_writew(val, addr); |
41 | +} |
42 | + |
43 | +static inline u16 isp116x_raw_readw(void __iomem *addr) |
44 | +{ |
45 | + return __raw_readw(addr); |
46 | +} |
47 | +#endif |
48 | + |
49 | static inline void isp116x_write_addr(struct isp116x *isp116x, unsigned reg) |
50 | { |
51 | IRQ_TEST(); |
52 | - writew(reg & 0xff, isp116x->addr_reg); |
53 | + isp116x_writew(reg & 0xff, isp116x->addr_reg); |
54 | isp116x_delay(isp116x, 300); |
55 | } |
56 | |
57 | static inline void isp116x_write_data16(struct isp116x *isp116x, u16 val) |
58 | { |
59 | - writew(val, isp116x->data_reg); |
60 | + isp116x_writew(val, isp116x->data_reg); |
61 | isp116x_delay(isp116x, 150); |
62 | } |
63 | |
64 | static inline void isp116x_raw_write_data16(struct isp116x *isp116x, u16 val) |
65 | { |
66 | - __raw_writew(val, isp116x->data_reg); |
67 | + isp116x_raw_writew(val, isp116x->data_reg); |
68 | isp116x_delay(isp116x, 150); |
69 | } |
70 | |
71 | @@ -387,7 +429,7 @@ static inline u16 isp116x_read_data16(st |
72 | { |
73 | u16 val; |
74 | |
75 | - val = readw(isp116x->data_reg); |
76 | + val = isp116x_readw(isp116x->data_reg); |
77 | isp116x_delay(isp116x, 150); |
78 | return val; |
79 | } |
80 | @@ -396,16 +438,16 @@ static inline u16 isp116x_raw_read_data1 |
81 | { |
82 | u16 val; |
83 | |
84 | - val = __raw_readw(isp116x->data_reg); |
85 | + val = isp116x_raw_readw(isp116x->data_reg); |
86 | isp116x_delay(isp116x, 150); |
87 | return val; |
88 | } |
89 | |
90 | static inline void isp116x_write_data32(struct isp116x *isp116x, u32 val) |
91 | { |
92 | - writew(val & 0xffff, isp116x->data_reg); |
93 | + isp116x_writew(val & 0xffff, isp116x->data_reg); |
94 | isp116x_delay(isp116x, 150); |
95 | - writew(val >> 16, isp116x->data_reg); |
96 | + isp116x_writew(val >> 16, isp116x->data_reg); |
97 | isp116x_delay(isp116x, 150); |
98 | } |
99 | |
100 | @@ -413,9 +455,9 @@ static inline u32 isp116x_read_data32(st |
101 | { |
102 | u32 val; |
103 | |
104 | - val = (u32) readw(isp116x->data_reg); |
105 | + val = (u32) isp116x_readw(isp116x->data_reg); |
106 | isp116x_delay(isp116x, 150); |
107 | - val |= ((u32) readw(isp116x->data_reg)) << 16; |
108 | + val |= ((u32) isp116x_readw(isp116x->data_reg)) << 16; |
109 | isp116x_delay(isp116x, 150); |
110 | return val; |
111 | } |
112 | |