Skip to content

Commit

Permalink
Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/ker…
Browse files Browse the repository at this point in the history
…nel/git/wsa/linux

Pull second i2c update from Wolfram Sang:
 "As promised, here is my 2nd pull request for I2C, containing:

   - removal of the attach_adapter callback, converting its last user

   - removal of any __deprecated usage within I2C

   - one email address update

   - some SPDX conversion"

* 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  i2c: don't use any __deprecated handling anymore
  i2c: use SPDX identifier for Renesas drivers
  i2c: ocores: update my email address
  i2c: remove deprecated attach_adapter callback
  macintosh: therm_windtunnel: drop using attach_adapter
  • Loading branch information
torvalds committed Aug 24, 2018
2 parents d002924 + 00efcdc commit 019cddc
Show file tree
Hide file tree
Showing 13 changed files with 34 additions and 54 deletions.
2 changes: 1 addition & 1 deletion Documentation/i2c/busses/i2c-ocores
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Supported adapters:
* OpenCores.org I2C controller by Richard Herveille (see datasheet link)
https://opencores.org/project/i2c/overview

Author: Peter Korsgaard <[email protected]>
Author: Peter Korsgaard <[email protected]>

Description
-----------
Expand Down
2 changes: 1 addition & 1 deletion MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -10787,7 +10787,7 @@ F: arch/*/boot/dts/
F: include/dt-bindings/

OPENCORES I2C BUS DRIVER
M: Peter Korsgaard <[email protected]>
M: Peter Korsgaard <[email protected]>
L: [email protected]
S: Maintained
F: Documentation/i2c/busses/i2c-ocores
Expand Down
1 change: 0 additions & 1 deletion drivers/i2c/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,3 @@ obj-$(CONFIG_I2C_STUB) += i2c-stub.o
obj-$(CONFIG_I2C_SLAVE_EEPROM) += i2c-slave-eeprom.o

ccflags-$(CONFIG_I2C_DEBUG_CORE) := -DDEBUG
CFLAGS_i2c-core-base.o := -Wno-deprecated-declarations
5 changes: 1 addition & 4 deletions drivers/i2c/busses/i2c-emev2.c
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
// SPDX-License-Identifier: GPL-2.0
/*
* I2C driver for the Renesas EMEV2 SoC
*
* Copyright (C) 2015 Wolfram Sang <[email protected]>
* Copyright 2013 Codethink Ltd.
* Copyright 2010-2015 Renesas Electronics Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*/

#include <linux/clk.h>
Expand Down
5 changes: 1 addition & 4 deletions drivers/i2c/busses/i2c-highlander.c
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Renesas Solutions Highlander FPGA I2C/SMBus support.
*
Expand All @@ -6,10 +7,6 @@
* Copyright (C) 2008 Paul Mundt
* Copyright (C) 2008 Renesas Solutions Corp.
* Copyright (C) 2008 Atom Create Engineering Co., Ltd.
*
* This file is subject to the terms and conditions of the GNU General
* Public License version 2. See the file "COPYING" in the main directory
* of this archive for more details.
*/
#include <linux/module.h>
#include <linux/interrupt.h>
Expand Down
4 changes: 2 additions & 2 deletions drivers/i2c/busses/i2c-ocores.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* i2c-ocores.c: I2C bus driver for OpenCores I2C controller
* (https://opencores.org/project/i2c/overview)
*
* Peter Korsgaard <[email protected]>
* Peter Korsgaard <[email protected]>
*
* Support for the GRLIB port of the controller by
* Andreas Larsson <[email protected]>
Expand Down Expand Up @@ -576,7 +576,7 @@ static struct platform_driver ocores_i2c_driver = {

module_platform_driver(ocores_i2c_driver);

MODULE_AUTHOR("Peter Korsgaard <[email protected]>");
MODULE_AUTHOR("Peter Korsgaard <[email protected]>");
MODULE_DESCRIPTION("OpenCores I2C bus driver");
MODULE_LICENSE("GPL");
MODULE_ALIAS("platform:ocores-i2c");
10 changes: 1 addition & 9 deletions drivers/i2c/busses/i2c-rcar.c
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Driver for the Renesas R-Car I2C unit
*
Expand All @@ -9,15 +10,6 @@
*
* This file is based on the drivers/i2c/busses/i2c-sh7760.c
* (c) 2005-2008 MSC Vertriebsges.m.b.H, Manuel Lauss <[email protected]>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <linux/bitops.h>
#include <linux/clk.h>
Expand Down
5 changes: 1 addition & 4 deletions drivers/i2c/busses/i2c-riic.c
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Renesas RIIC driver
*
* Copyright (C) 2013 Wolfram Sang <[email protected]>
* Copyright (C) 2013 Renesas Solutions Corp.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*/

/*
Expand Down
10 changes: 1 addition & 9 deletions drivers/i2c/busses/i2c-sh_mobile.c
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// SPDX-License-Identifier: GPL-2.0
/*
* SuperH Mobile I2C Controller
*
Expand All @@ -7,15 +8,6 @@
*
* Portions of the code based on out-of-tree driver i2c-sh7343.c
* Copyright (c) 2006 Carlos Munoz <[email protected]>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/

#include <linux/clk.h>
Expand Down
11 changes: 1 addition & 10 deletions drivers/i2c/i2c-core-base.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@

/*
* core_lock protects i2c_adapter_idr, and guarantees that device detection,
* deletion of detected devices, and attach_adapter calls are serialized
* deletion of detected devices are serialized
*/
static DEFINE_MUTEX(core_lock);
static DEFINE_IDR(i2c_adapter_idr);
Expand Down Expand Up @@ -1124,15 +1124,6 @@ static int i2c_do_add_adapter(struct i2c_driver *driver,
/* Detect supported devices on that bus, and instantiate them */
i2c_detect(adap, driver);

/* Let legacy drivers scan this bus for matching devices */
if (driver->attach_adapter) {
dev_warn(&adap->dev, "%s: attach_adapter method is deprecated\n",
driver->driver.name);
dev_warn(&adap->dev,
"Please use another way to instantiate your i2c_client\n");
/* We ignore the return code; if it fails, too bad */
driver->attach_adapter(adap);
}
return 0;
}

Expand Down
25 changes: 23 additions & 2 deletions drivers/macintosh/therm_windtunnel.c
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand All @@ -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
Expand Down
6 changes: 0 additions & 6 deletions include/linux/i2c.h
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,6 @@ enum i2c_alert_protocol {
/**
* struct i2c_driver - represent an I2C device driver
* @class: What kind of i2c device we instantiate (for detect)
* @attach_adapter: Callback for bus addition (deprecated)
* @probe: Callback for device binding - soon to be deprecated
* @probe_new: New callback for device binding
* @remove: Callback for device unbinding
Expand Down Expand Up @@ -268,11 +267,6 @@ enum i2c_alert_protocol {
struct i2c_driver {
unsigned int class;

/* Notifies the driver that a new bus has appeared. You should avoid
* using this, it will be removed in a near future.
*/
int (*attach_adapter)(struct i2c_adapter *) __deprecated;

/* Standard driver model interfaces */
int (*probe)(struct i2c_client *, const struct i2c_device_id *);
int (*remove)(struct i2c_client *);
Expand Down
2 changes: 1 addition & 1 deletion include/linux/platform_data/i2c-ocores.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*
* i2c-ocores.h - definitions for the i2c-ocores interface
*
* Peter Korsgaard <[email protected]>
* Peter Korsgaard <[email protected]>
*
* This file is licensed under the terms of the GNU General Public License
* version 2. This program is licensed "as is" without any warranty of any
Expand Down

0 comments on commit 019cddc

Please sign in to comment.