Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1547969

[PATCH v5 0/7] i2c: designware: add I2C SLAVE support

From Luis Oliveira <Luis.Oliveira@synopsys.com>
Newsgroups linux.kernel
Subject [PATCH v5 0/7] i2c: designware: add I2C SLAVE support
Date 2016-12-28 15:50 +0100
Message-ID <sTnIe-11F-7@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


The purpose of this patch is to enable Linux to be a I2C slave by enabling the
slave functionality in the designware I2C controller. The patch refactors the
original i2c-designware-core and extracts all master functions to a
i2c-designware-master source file as suggested by Andy Shevchenko. It also 
creates a i2c-designware-slave source file and keeps the common functions in the
i2c-designware-src source file. For that changes also had to be made in the 
Makefile and Kconfig.
The driver instantiates in slave or master mode by checking the reg address that
must be defined in the DT and evaluating if is a I2C_OWN_SLAVE_ADDRESS". 
ACPI is not supported in this driver.
The functionality was tested using the hardware independent software backend 
slave-eeprom driver.

Luis Oliveira (7):
  i2c: designware: Cleaning and comment style fixes.
  i2c: designware: refactoring of the i2c-designware
  i2c: designware: MASTER mode as separated driver
  i2c: designware: introducing I2C_SLAVE definitions
  i2c: designware: add SLAVE mode functions
  i2c: designware: enable SLAVE in platform module
  i2c: designware: style changes in existing code

 drivers/i2c/busses/Kconfig                         |   3 +-
 drivers/i2c/busses/Makefile                        |   1 +
 drivers/i2c/busses/i2c-designware-common.c         | 261 ++++++++++++
 drivers/i2c/busses/i2c-designware-core.h           | 164 ++++++++
 ...c-designware-core.c => i2c-designware-master.c} | 444 +++------------------
 drivers/i2c/busses/i2c-designware-platdrv.c        | 144 +++++--
 drivers/i2c/busses/i2c-designware-slave.c          | 434 ++++++++++++++++++++
 7 files changed, 1029 insertions(+), 422 deletions(-)
 create mode 100644 drivers/i2c/busses/i2c-designware-common.c
 rename drivers/i2c/busses/{i2c-designware-core.c => i2c-designware-master.c} (62%)
 create mode 100644 drivers/i2c/busses/i2c-designware-slave.c

-- 
2.11.0

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v5 0/7] i2c: designware: add I2C SLAVE support Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
  [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
    Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 16:50 +0100
      Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 17:00 +0100
        Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 17:40 +0100
          Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 17:50 +0100
            Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Carlos Palminha <CARLOS.PALMINHA@synopsys.com> - 2016-12-28 18:00 +0100
            Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 18:20 +0100
              Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 19:20 +0100
  [PATCH v5 2/7] i2c: designware: refactoring of the i2c-designware Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
    Re: [PATCH v5 2/7] i2c: designware: refactoring of the  i2c-designware Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 16:20 +0100
      Re: [PATCH v5 2/7] i2c: designware: refactoring of the i2c-designware Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 16:40 +0100
  [PATCH v5 5/7] i2c: designware: add SLAVE mode functions Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
    Re: [PATCH v5 5/7] i2c: designware: add SLAVE mode functions Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 16:40 +0100
      Re: [PATCH v5 5/7] i2c: designware: add SLAVE mode functions Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 17:10 +0100
  [PATCH v5 4/7] i2c: designware: introducing I2C_SLAVE definitions Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
    Re: [PATCH v5 4/7] i2c: designware: introducing I2C_SLAVE  definitions Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-12-28 16:20 +0100
  [PATCH v5 1/7] i2c: designware: Cleaning and comment style fixes. Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100
  [PATCH v5 3/7] i2c: designware: MASTER mode as separated driver Luis Oliveira <Luis.Oliveira@synopsys.com> - 2016-12-28 15:50 +0100

csiph-web