This patch set adds initial master mode and slave mode support for the Aspeed
24xx and 25xx I2C controllers, as well as device binding documentation for the
new driver.
These changes have been tested on the ast2500 evaluation board from Aspeed.
Work still to be done:
- The driver supports I2C
Added initial master and slave support for Aspeed I2C controller.
Supports fourteen busses present in ast24xx and ast25xx BMC SoCs by
Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some
Added device tree binding documentation for Aspeed I2C controller and
busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
---
.../devicetree/bindings/i2c/i2c-aspeed.txt | 63 ++
1 file changed, 63 insertions(+)
creat
Added device tree binding documentation for Aspeed I2C controller and
busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
.../devicetree/bindings/i2c/i2c-aspeed.txt | 63 ++
1 file changed, 63 insertions(+)
create mode 100644 Documen
Added initial master and slave support for Aspeed I2C controller.
Supports fourteen busses present in ast24xx and ast25xx BMC SoCs by
Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/i2c/busses/Kconfig | 10 +
drivers/i2c/busses/Makefile | 1 +
d
Gentle ping
On Fri, Sep 9, 2016 at 6:55 PM, Brendan Higgins
<brendanhigg...@google.com> wrote:
> Added initial master and slave support for Aspeed I2C controller.
> Supports fourteen busses present in ast24xx and ast25xx BMC SoCs by
> Aspeed.
>
> Signed-off-by: Brendan
it. It seems like this is not completely
trivial so maybe this should be specified in the device tree? If that
is the case, should I do this as another reg entry or go back to the
way I was doing it before?
On Mon, Sep 19, 2016 at 4:26 PM, Brendan Higgins
<brendanhigg...@google.com> wrote:
>
To be clear, these bus numbers are defined as part of the hardware
specification. I am not sure if that was clear before.
On Tue, Sep 20, 2016 at 11:08 AM, Brendan Higgins
<brendanhigg...@google.com> wrote:
> (sorry if you get a duplicate, I forgot to send plain text)
>
> Fir
Added initial master and slave support for Aspeed I2C controller.
Supports fourteen busses present in ast24xx and ast25xx BMC SoCs by
Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
C
Added device tree binding documentation for Aspeed I2C controller and
busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
---
.../devicetree/bindings/i2c/i2c-aspeed.
Addressed in v3.
Thanks!
On Mon, Sep 19, 2016 at 2:35 PM, Rob Herring <r...@kernel.org> wrote:
> On Fri, Sep 09, 2016 at 06:55:51PM -0700, Brendan Higgins wrote:
>> Added device tree binding documentation for Aspeed I2C controller and
>> busses.
>>
>> Signed-off
I never got an acknowledgement to this email:
http://www.spinics.net/lists/devicetree/msg143944.html
The "bus" number is something that is defined as part of the hardware
specification for this device.
It seems we will not be able to do away with the "bus" number parameter.
Joel suggested going
> Nit: Make this aspeed-i2c-domain to make this consistent with the
> other Aspeed drivers in the kernel tree.
>
> Could this irq code be embedded in the i2c driver? We took a similar
> approach for the Aspeed GPIO driver, which has a similar IRQ structure
> of one hardware IRQ that tells the
> Regarding the other comment about the "fast mode", my main worry here
> is that somebody might come up with a 2Mhz capable device, we'll hit
> your 1Mhz test, enable fast mode, and shoot it with 3.4Mhz which it
> might not be happy at all about...
>
> I think the cut-off for switching to the
I think I addressed this on the other email with the actual driver.
Anyway, I thought that this is pretty much the dummy irqchip code is
for; I have seen some other drivers do the same thing. It is true that
this is a really basic "interrupt controller;" it cannot mask on its
own, etc;
>> + ASPEED_I2CD_M_HIGH_SPEED_EN |
>> + ASPEED_I2CD_M_SDA_DRIVE_1T_EN |
>
> s/ASPEED_I2CD_M_SDA_DRIVE_1T_EN/ASPEED_I2CD_M_SCL_DRIVE_1T_EN/
>
> (and in the definition too)
Will fix.
>
>> +
>> + bus = <0>;
>> + clocks = <_apb>;
>> + clock-frequency = <10>;
>
> For busses it's more traditional to make this "bus-frequency" but
> that's a nit and Linux/fdt has not respected that tradition terribly
> well. If you respin, it might be work changing.
The main reason I took this approach is just because I thought it was
cleaner from the perspective of the busses which are totally
independent (except for the fact that they share a single hardware
interrupt).
I did not make any measurements, so I doubt that I have anything to
add that you don't
Added device tree binding documentation for Aspeed I2C Interrupt
Controller.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled "aspeed_i2c_controller" out into a interrupt controller since that is
what it actually does.
---
.../interrupt-c
Sorry for the delay, I went on a long vacation prior to receiving feedback and
got back in the middle of a hardware bring up that consumed all of my attention
for an extended period of time. I will try to plan upstream submissions around
my other responsibilities better in the future.
Addressed
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
Changes
The Aspeed 24XX/25XX chips share a single hardware interrupt across 14
separate I2C busses. This adds a dummy irqchip which maps the single
hardware interrupt to software interrupts for each of the busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
-
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
- None
Changes for v5:
- None
Changes for
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
- None
Changes for v5:
- None
Changes for
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
Changes
Added device tree binding documentation for Aspeed I2C Interrupt
Controller.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled "aspeed_i2c_controller" out into a interrupt controller since that is
what it actually does.
Changes
Addressed comments from:
- Ben in: http://www.spinics.net/lists/devicetree/msg170491.html
and: http://www.spinics.net/lists/devicetree/msg171232.html
- Rob: http://www.spinics.net/lists/devicetree/msg171593.html
- Joel in: http://www.spinics.net/lists/devicetree/msg171204.html
Changes
The Aspeed 24XX/25XX chips share a single hardware interrupt across 14
separate I2C busses. This adds a dummy irqchip which maps the single
hardware interrupt to software interrupts for each of the busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
-
On Mon, Jul 31, 2017 at 2:27 AM, Joel Stanley <j...@jms.id.au> wrote:
> On Sat, Jul 29, 2017 at 10:30 AM, Brendan Higgins
> <brendanhigg...@google.com> wrote:
>> Before I skipped null checks when the master is in the STOP state; this
>> fixes that.
>>
>> S
On Tue, Aug 15, 2017 at 10:21 AM, Andrew Jeffery wrote:
> In addition to the base, low and high clock configuration, the AC timing
> register #1 on the AST2400 houses fields controlling:
>
> 1. tBUF: Minimum delay between Stop and Start conditions
> 2. tHDSTA: Hold time for the
On Mon, Aug 14, 2017 at 7:03 PM, Patrick Williams <patr...@stwcx.xyz> wrote:
> On Mon, Aug 07, 2017 at 08:52:57PM -0700, Brendan Higgins wrote:
>> Currently, OpenBMC handles all IPMI message routing and handling in userland;
>> the existing drivers simply provide a file inter
On Wed, Aug 9, 2017 at 7:26 PM, Corey Minyard <tcminy...@gmail.com> wrote:
> On 08/09/2017 08:04 PM, Brendan Higgins wrote:
>>>
>>> Perhaps that is some level of abuse, but it's pretty common. I'm not
>>> against it.
>>>
>>> There is st
On Wed, Aug 9, 2017 at 7:31 PM, Jeremy Kerr wrote:
> Hi Brendan,
>
>> The driver was handling interaction with userspace on its own. This
>> patch changes it to use the functionality of the ipmi_bmc framework
>> instead.
>>
>> Note that this removes the ability for the BMC to set
On Sat, Aug 12, 2017 at 4:30 AM, Wolfram Sang wrote:
>
>> That being said, I could implement this as a custom clock subclass, which
>> would probably be cleaner that what I have done.
>
> Shall I wait for that one or do you want this patch to be included?
> I don't mind, your
On Thu, Aug 10, 2017 at 6:58 AM, Corey Minyard <miny...@acm.org> wrote:
> On 08/07/2017 10:52 PM, Brendan Higgins wrote:
>>
>> From: Benjamin Fair <benjaminf...@google.com>
>>
>> This patch introduces a framework for writing IPMI drivers which run on
>>
24xx BMCs have larger clock divider granularity which can cause problems
when trying to set them as 25xx clock dividers; this adds clock setting
code specific to 24xx.
This also fixes a potential issue where clock dividers were rounded down
instead of up.
Signed-off-by: Brendan Higgins
Joel, Ben, our g5 device tree has I2C bus compatibility strings for the 24xx;
this will need to be changed because the clock is no longer programmed the same
way for the 24xx and the 25xx. I have a patch that fixes this; I will send it to
the OpenBMC list once this patch gets accepted.
Tested on
Sorry, went on vacation and then forgot about our conversion.
>> the struct i2c_bus_recovery_info. Is i2c_generic_scl_recovery supposed
>> to be part of the user interface, or is it just intended to help put the
>> main recovery function together?
>
> Sorry, I don't understand the question. What
On Tue, Jun 27, 2017 at 2:00 AM, Wolfram Sang wrote:
>
>> > If SCL is stuck low, how do you want to send a STOP?
>> >
>>
>> Fair point. I should probably drop that in the future and just do a
>> reset, and even then, doing a
>> reset is probably just wishful thinking. If a
>> +struct aspeed_i2c_bus {
>> + struct i2c_adapter adap;
>> + struct device *dev;
>> + void __iomem*base;
>> + /* Synchronizes I/O mem access to base. */
>> + spinlock_t lock;
>
> I am not entirely
ible values. Is my
understanding correct?
>
> -Original Message-
> From: Benjamin Herrenschmidt [mailto:b...@kernel.crashing.org]
> Sent: Tuesday, April 25, 2017 5:35 PM
> To: Ryan Chen <ryan_c...@aspeedtech.com>; Brendan Higgins
> <brendanhigg...@google.com>
> Cc:
Adding Ryan to thread.
>> +static int __aspeed_i2c_init_clk(struct aspeed_i2c_bus *bus,
>> +struct platform_device *pdev)
>> +{
>
> Minor nit ... I'm really not fan of those underscores.
>
> We use __ functions in some cases in the kernel for low level
> helpers,
Adding Ryan.
On Mon, Apr 24, 2017 at 7:19 PM, Benjamin Herrenschmidt
<b...@kernel.crashing.org> wrote:
> On Mon, 2017-04-24 at 11:56 -0700, Brendan Higgins wrote:
>> > > +struct aspeed_i2c_bus {
>> > > + struct i2c_adapter adap;
>> > &g
Adding Ryan (sorry to everyone else for the spam).
Added device tree binding documentation for ipmi-bt-i2c (host) and
ipmi-bmc-bt-i2c (BMC) and documentation for the Block Transfer over I2C
(bt-i2c) protocol.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Documentation/bt-i2c.txt
This patchset introduces IPMI Block Transfer over I2C (BT-I2C), which has the
same semantics as IPMI Block Transfer except it done over I2C.
The documentation discusses the reason for this in greater detail, suffice it to
say SSIF cannot be correctly implemented on some naive I2C devices. There
Added device tree binding documentation for ipmi-bt-i2c (host) and
ipmi-bmc-bt-i2c (BMC) and documentation for the Block Transfer over I2C
(bt-i2c) protocol.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Fixed a typo
- Reworded a sentence to make it
This patchset introduces IPMI Block Transfer over I2C (BT-I2C), which has the
same semantics as IPMI Block Transfer except it done over I2C.
For the OpenBMC people, this is based on an RFC:
https://lists.ozlabs.org/pipermail/openbmc/2016-September/004505.html
The documentation discusses the
{
+ {"ipmi-bt-i2c", 0},
+ {},
+};
+MODULE_DEVICE_TABLE(i2c, ipmi_bt_i2c_i2c_id);
+
+static struct i2c_driver ipmi_bt_i2c_driver = {
+ .driver = {
+ .name = "ipmi-bt-i2c",
+ .acpi_match_table = ipmi_bt_i2c_acpi_id,
+
the same BMC side file system interface as "ipmi-bt-host".
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
---
drivers/char/Kconfig| 1 +
drivers/char/Makefile | 1 +
drivers/char/ipmi_bmc/Kconfig
From: Benjamin Fair <benjaminf...@google.com>
The ipmi_bmc folder contains drivers for a BMC to communicate using
IPMI. The ipmi folder is only for drivers on the host side using the
OpenIPMI framework.
Signed-off-by: Benjamin Fair <benjaminf...@google.com>
Signed-off-by: Bre
On Fri, Aug 4, 2017 at 4:18 PM, Brendan Higgins
<brendanhigg...@google.com> wrote:
> This patchset introduces IPMI Block Transfer over I2C (BT-I2C), which has the
> same semantics as IPMI Block Transfer except it done over I2C.
>
> The documentation discusses the reason for this
{
+ {"ipmi-bt-i2c", 0},
+ {},
+};
+MODULE_DEVICE_TABLE(i2c, ipmi_bt_i2c_i2c_id);
+
+static struct i2c_driver ipmi_bt_i2c_driver = {
+ .driver = {
+ .name = "ipmi-bt-i2c",
+ .acpi_match_table = ipmi_bt_i2c_acpi_id,
+ },
+ .id_table = ipmi_bt_i2c_i2c
the same BMC side file system interface as "ipmi-bt-host".
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/char/Kconfig| 1 +
drivers/char/Makefile | 1 +
drivers/char/ipmi_bmc/Kconfig | 22 ++
drivers/char/i
24xx BMCs have larger clock divider granularity which can cause problems
when trying to set them as 25xx clock dividers; this adds clock setting
code specific to 24xx.
This also fixes a potential issue where clock dividers were rounded down
instead of up.
Signed-off-by: Brendan Higgins
This fixes a minor issue pointed out by Robi and also adds
a couple improvements that he suggested outside of the mailing list.
Tested on the Aspeed 2500.
On Fri, Jul 28, 2017 at 2:00 PM, Rick Altherr wrote:
> Is clk_fractional_divider from include/linux/clk-provider.h appropriate here?
>
Alas, no. clk_fractional_divider is not flexible enough to specify the
divider the
way that it is represented in the Aspeed 24xx/25xx parts
On Sat, Aug 5, 2017 at 3:23 PM, Corey Minyard <miny...@acm.org> wrote:
> On 08/04/2017 08:18 PM, Brendan Higgins wrote:
>>
>> This patchset introduces IPMI Block Transfer over I2C (BT-I2C), which has
>> the
>> same semantics as IPMI Block Transfer except it don
;
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/char/ipmi_bmc/Kconfig| 6 +
drivers/char/ipmi_bmc/Makefile | 1 +
drivers/char/ipmi_bmc/ipmi_bmc_devintf.c | 241 +++
3 files changed, 248 insertions(+)
create mode 100644 dri
;
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/char/ipmi_bmc/ipmi_bmc_bt_i2c.c | 202 +---
1 file changed, 28 insertions(+), 174 deletions(-)
diff --git a/drivers/char/ipmi_bmc/ipmi_bmc_bt_i2c.c
b/drivers/char/ipmi_bmc/ipmi_bmc_bt_i2c.c
This introduces a framework for implementing the BMC side of the IPMI protocol,
roughly mirroring the host side OpenIPMI framework; it attempts to abstract away
hardware interfaces, such as Block Transfer interface hardware implementations
from IPMI command handlers.
It does this by implementing
nality is required, it can be added back in
with a later patch.
Signed-off-by: Benjamin Fair <benjaminf...@google.com>
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/char/ipmi_bmc/ipmi_bmc_bt_aspeed.c | 258 +
include/u
benjaminf...@google.com>
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/char/ipmi_bmc/Makefile | 1 +
drivers/char/ipmi_bmc/ipmi_bmc.c | 294 +++
include/linux/ipmi_bmc.h | 184
3 files chang
Before I skipped null checks when the master is in the STOP state; this
fixes that.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
drivers/i2c/busses/i2c-aspeed.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-aspeed.c b/d
On Wed, Aug 2, 2017 at 10:57 AM, Randy Dunlap <rdun...@infradead.org> wrote:
> From: Randy Dunlap <rdun...@infradead.org>
>
> The openbmc mailing list is moderated for non-subscribers.
>
> Signed-off-by: Randy Dunlap <rdun...@infradead.org>
> Cc: Brendan Higg
> Perhaps that is some level of abuse, but it's pretty common. I'm not
> against it.
>
> There is standard IPMI firmware NetFN (though no commands defined) that if
> you use
> the driver automatically goes into "Maintenance mode" and modified the
> timeouts
> and handling to some extent to help
On Wed, Aug 9, 2017 at 3:56 AM, Anton D. Kachalov wrote:
> Hello,
>
> I would like to mention one of the our related work for IPMI and I2C.
>
> We use OpenIPMI stack to connect to the computing nodes through the I2C
> using IPMB (BT is not supported by nodes):
>
>
On Mon, Aug 14, 2017 at 3:28 PM, Brendan Higgins
<brendanhigg...@google.com> wrote:
> On Mon, Aug 14, 2017 at 7:03 PM, Patrick Williams <patr...@stwcx.xyz> wrote:
>> On Mon, Aug 07, 2017 at 08:52:57PM -0700, Brendan Higgins wrote:
>>> Currently, OpenBMC ha
On Mon, Jun 19, 2017 at 7:21 AM, Wolfram Sang wrote:
>
> And any chance for a MAINTAINERS entry?
>
We already have one:
http://elixir.free-electrons.com/linux/v4.11.5/source/MAINTAINERS#L1090
However, if you would like me to own this driver, I could add an entry
for myself.
I thought all of the comments made sense and will be addressed in my
next revision,
except the following:
>> +static int aspeed_i2c_recover_bus(struct aspeed_i2c_bus *bus)
>> +{
>> + unsigned long time_left, flags;
>> + int ret = 0;
>> + u32 command;
>> +
>> +
Added myself as maintainer of the Aspeed I2C driver and the associated
I2C interrupt controller and added Joel Stanley and Benjamin
Herrenschmidt as reviewers.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v11:
- Added MAINTAINERS entry for Aspeed I2C
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
hanges for v2:
- Added single module_init (multiple was breaking some builds).
Changes
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
Acked-by: Rob Herring <r...@kernel.org>
---
hanges for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
Addressed comments from:
- Wolfram in: http://www.spinics.net/lists/devicetree/msg182142.html
and http://www.spinics.net/lists/devicetree/msg182144.html
Changes since previous update:
- MAINTAINERS: Added MAINTAINERS entry for Aspeed I2C driver and friends
- I2C driver: Added support
On Fri, Jun 23, 2017 at 11:43 AM, Wolfram Sang <w...@the-dreams.de> wrote:
> On Tue, Jun 20, 2017 at 02:15:15PM -0700, Brendan Higgins wrote:
>> Added initial master support for Aspeed I2C controller. Supports
>> fourteen busses present in AST24XX and AST25XX BMC SoCs by Asp
On Sun, Jun 25, 2017 at 11:18 PM, Joel Stanley <j...@jms.id.au> wrote:
> On Sat, Jun 24, 2017 at 4:13 AM, Wolfram Sang <w...@the-dreams.de> wrote:
>> On Tue, Jun 20, 2017 at 02:15:15PM -0700, Brendan Higgins wrote:
>>> Added initial master support for Aspeed I2C con
The Aspeed 24XX/25XX chips share a single hardware interrupt across 14
separate I2C busses. This adds a dummy irqchip which maps the single
hardware interrupt to software interrupts for each of the busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
-
Addressed comments from:
- Ben in: http://www.spinics.net/lists/devicetree/msg174576.html
and: https://www.spinics.net/lists/kernel/msg2496151.html
- Wolfram in: https://www.spinics.net/lists/kernel/msg2504011.html
- Cedric in: https://www.spinics.net/lists/kernel/msg2506531.html
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
- None
Changes for v5:
- None
Changes for
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
Changes
Added device tree binding documentation for Aspeed I2C Interrupt
Controller.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled "aspeed_i2c_controller" out into a interrupt controller since that is
what it actually does.
Changes for v7:
Sorry, I wasn't sure. Will do in the future.
On Tue, May 30, 2017 at 2:34 PM, Rob Herring <r...@kernel.org> wrote:
> On Wed, May 24, 2017 at 11:49:21PM -0700, Brendan Higgins wrote:
>> Added device tree binding documentation for Aspeed I2C Interrupt
>> Controller.
>>
Added device tree binding documentation for Aspeed I2C Interrupt
Controller.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
Acked-by: Rob Herring <r...@kernel.org>
---
Added in v6:
- Pulled "aspeed_i2c_controller" out into a interrupt controller since that i
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
Changes
The Aspeed 24XX/25XX chips share a single hardware interrupt across 14
separate I2C busses. This adds a dummy irqchip which maps the single
hardware interrupt to software interrupts for each of the busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
-
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
Acked-by: Rob Herring <r...@kernel.org>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
Addressed comments from:
- Ben in: http://www.spinics.net/lists/devicetree/msg179006.html
Changes since previous update:
- Fairly minimal changes in master support patch, all else is the same
As before, tested on Aspeed 2500 evaluation board and a real platform with an
Aspeed 2520.
I addressed all of your comments in my next revision except the one below.
>> + time_left = wait_for_completion_timeout(>cmd_complete,
>> + bus->adap.timeout);
>> +
>> + spin_lock_irqsave(>lock, flags);
>> + bus->msgs = NULL;
>> + if
>> + i2c_ic->irq_domain = irq_domain_add_linear(
>> + node, ASPEED_I2C_IC_NUM_BUS,
>> + _i2c_ic_irq_domain_ops, NULL);
>
> nit: can you have at least one argument following the function name?
> Even if checkpatch shouts out you?
Makes no difference to
On Fri, Jun 2, 2017 at 5:04 AM, Benjamin Herrenschmidt
<b...@kernel.crashing.org> wrote:
> On Fri, 2017-06-02 at 01:46 -0700, Brendan Higgins wrote:
>> Added slave support for Aspeed I2C controller. Supports fourteen busses
>> present in AST24XX and AST25XX BMC SoCs by Aspe
Added initial master support for Aspeed I2C controller. Supports
fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Changes for v2:
- Added single module_init (multiple was breaking some builds).
Changes
Added slave support for Aspeed I2C controller. Supports fourteen busses
present in AST24XX and AST25XX BMC SoCs by Aspeed.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
- Pulled slave support out of initial driver commit into its own commit.
- No
The Aspeed 24XX/25XX chips share a single hardware interrupt across 14
separate I2C busses. This adds a dummy irqchip which maps the single
hardware interrupt to software interrupts for each of the busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
---
Added in v6:
-
Added device tree binding documentation for Aspeed I2C Interrupt
Controller.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
Acked-by: Rob Herring <r...@kernel.org>
---
Added in v6:
- Pulled "aspeed_i2c_controller" out into a interrupt controller since that i
Added device tree binding documentation for Aspeed I2C busses.
Signed-off-by: Brendan Higgins <brendanhigg...@google.com>
Acked-by: Rob Herring <r...@kernel.org>
---
Changes for v2:
- None
Changes for v3:
- Removed reference to "bus" device tree param
Changes for v4:
1 - 100 of 859 matches
Mail list logo