Hello, Serge Semin wrote: > There are some generic drivers in the kernel, which make use of the > q-accessors or their derivatives. While at current asm/io.h the accessors > are defined, their implementation is only applicable either for 64bit > systems, or for systems with cpu_has_64bits flag set. Obviously there > are MIPS systems which are neither of these, but still need to have > those drivers supported. In this case the solution is to define some > generic versions of the q-accessors, but with a limitation to be > non-atomic. Such accessors are defined in the > io-64-nonatomic-{hi-lo,lo-hi}.h file. The drivers which utilize the > q-suffixed IO-methods are supposed to include the header file, so > in case if these accessors aren't defined for the platform, the generic > non-atomic versions are utilized. Currently the MIPS-specific asm/io.h > file provides the q-accessors for any MIPS system even for ones, which > in fact don't support them and raise BUG() in case if any of them is > called. Due to this the generic versions of the accessors are never > used while an attempt to call the IO-methods causes the kernel BUG(). > In order to fix this we need to define the q-accessors only for > the MIPS systems, which actually support them, and don't define them > otherwise, so to let the corresponding drivers to use the non-atomic > q-suffixed accessors. > > Signed-off-by: Serge Semin <fancer.lan...@gmail.com> > Suggested-by: Arnd Bergmann <a...@arndb.de> > Cc: Vadim V. Vlasov <vadim.vla...@t-platforms.ru>
Applied to mips-next. Thanks, Paul [ This message was auto-generated; if you believe anything is incorrect then please email paul.bur...@mips.com to report it. ]