Commit 3e7bed52 authored by Wolfram Sang's avatar Wolfram Sang
Browse files

macintosh: therm_windtunnel: drop using attach_adapter



As we now have deferred probing, we can use a custom mechanism and
finally get rid of the legacy interface from the i2c core.

Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
Acked-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 33e17876
Loading
Loading
Loading
Loading
+23 −2
Original line number Diff line number Diff line
@@ -432,7 +432,6 @@ static struct i2c_driver g4fan_driver = {
	.driver = {
		.name	= "therm_windtunnel",
	},
	.attach_adapter = do_attach,
	.probe		= do_probe,
	.remove		= do_remove,
	.id_table	= therm_windtunnel_id,
@@ -445,7 +444,29 @@ static struct i2c_driver g4fan_driver = {

static int therm_of_probe(struct platform_device *dev)
{
	return i2c_add_driver( &g4fan_driver );
	struct i2c_adapter *adap;
	int ret, i = 0;

	adap = i2c_get_adapter(0);
	if (!adap)
		return -EPROBE_DEFER;

	ret = i2c_add_driver(&g4fan_driver);
	if (ret) {
		i2c_put_adapter(adap);
		return ret;
	}

	/* We assume Macs have consecutive I2C bus numbers starting at 0 */
	while (adap) {
		do_attach(adap);
		if (x.running)
			return 0;
		i2c_put_adapter(adap);
		adap = i2c_get_adapter(++i);
	}

	return -ENODEV;
}

static int