It depends on tristate I2C and it's trivial to make modular.  The
current Kconfig allows I2C=m, I2C_ACORN=y, which doesn't work at
all; alternatives are dependency on I2C=y and making I2C_ACORN
itself a tristate.  The latter is the right thing to do...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
          will be called i2c-versatile.
 
 config I2C_ACORN
-       bool "Acorn IOC/IOMD I2C bus support"
+       tristate "Acorn IOC/IOMD I2C bus support"
        depends on ARCH_ACORN
        default y
        select I2C_ALGOBIT
 
        return i2c_bit_add_bus(&ioc_ops);
 }
 
-__initcall(i2c_ioc_init);
+module_init(i2c_ioc_init);