aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/cio/io_sch.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/cio/io_sch.h')
-rw-r--r--drivers/s390/cio/io_sch.h32
1 files changed, 0 insertions, 32 deletions
diff --git a/drivers/s390/cio/io_sch.h b/drivers/s390/cio/io_sch.h
index 20e7a1b127ce..36870d9f108a 100644
--- a/drivers/s390/cio/io_sch.h
+++ b/drivers/s390/cio/io_sch.h
@@ -139,23 +139,6 @@ struct ccw_device_private {
139 void *cmb_wait; /* deferred cmb enable/disable */ 139 void *cmb_wait; /* deferred cmb enable/disable */
140}; 140};
141 141
142static inline int ssch(struct subchannel_id schid, union orb *addr)
143{
144 register struct subchannel_id reg1 asm("1") = schid;
145 int ccode = -EIO;
146
147 asm volatile(
148 " ssch 0(%2)\n"
149 "0: ipm %0\n"
150 " srl %0,28\n"
151 "1:\n"
152 EX_TABLE(0b, 1b)
153 : "+d" (ccode)
154 : "d" (reg1), "a" (addr), "m" (*addr)
155 : "cc", "memory");
156 return ccode;
157}
158
159static inline int rsch(struct subchannel_id schid) 142static inline int rsch(struct subchannel_id schid)
160{ 143{
161 register struct subchannel_id reg1 asm("1") = schid; 144 register struct subchannel_id reg1 asm("1") = schid;
@@ -171,21 +154,6 @@ static inline int rsch(struct subchannel_id schid)
171 return ccode; 154 return ccode;
172} 155}
173 156
174static inline int csch(struct subchannel_id schid)
175{
176 register struct subchannel_id reg1 asm("1") = schid;
177 int ccode;
178
179 asm volatile(
180 " csch\n"
181 " ipm %0\n"
182 " srl %0,28"
183 : "=d" (ccode)
184 : "d" (reg1)
185 : "cc");
186 return ccode;
187}
188
189static inline int hsch(struct subchannel_id schid) 157static inline int hsch(struct subchannel_id schid)
190{ 158{
191 register struct subchannel_id reg1 asm("1") = schid; 159 register struct subchannel_id reg1 asm("1") = schid;