s390/pci: simplify __pciwb_mio() inline asm
authorNiklas Schnelle <schnelle@linux.ibm.com>
Wed, 5 Jan 2022 15:10:54 +0000 (16:10 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Fri, 7 Jan 2022 10:48:17 +0000 (11:48 +0100)
The PCI Write Barrier instruction ignores the registers encoded in it.
There is thus no need to explicitly set the register to zero or to
associate it with a variable at all. In the resulting binary this removes
an unnecessary lghi and it makes the code simpler.

Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/pci/pci_insn.c

index 28d863aaafea53159c4b039b3e1ac9334f2a84e1..4dd58b196cea763cf5d55ae40a752d9a93ec7029 100644 (file)
@@ -365,10 +365,7 @@ EXPORT_SYMBOL_GPL(zpci_write_block);
 
 static inline void __pciwb_mio(void)
 {
-       unsigned long unused = 0;
-
-       asm volatile (".insn    rre,0xb9d50000,%[op],%[op]\n"
-                     : [op] "+d" (unused));
+       asm volatile (".insn    rre,0xb9d50000,0,0\n");
 }
 
 void zpci_barrier(void)