Re: [Openipmi-developer] [PATCH v2 1/3] ipmi: add an Aspeed BT IPMI BMC driver

2016-09-16 Thread Corey Minyard
On 09/16/2016 05:39 AM, Cédric Le Goater wrote:
> From: Alistair Popple 
>
> This patch adds a simple device driver to expose the iBT interface on
> Aspeed SOCs (AST2400 and AST2500) as a character device. Such SOCs are
> commonly used as BMCs (BaseBoard Management Controllers) and this
> driver implements the BMC side of the BT interface.
>
> The BT (Block Transfer) interface is used to perform in-band IPMI
> communication between a host and its BMC. Entire messages are buffered
> before sending a notification to the other end, host or BMC, that
> there is data to be read. Usually, the host emits requests and the BMC
> responses but the specification provides a mean for the BMC to send
> SMS Attention (BMC-to-Host attention or System Management Software
> attention) messages.
>
> For this purpose, the driver introduces a specific ioctl on the
> device: 'BT_BMC_IOCTL_SMS_ATN' that can be used by the system running
> on the BMC to signal the host of such an event.
>
> The device name defaults to '/dev/ipmi-bt-host'

Others have reviewed this for style and such, and I have looked
at it from a protocol point of view.  it looks to be sound for the
most part.  I have some higher level concerns:

There appears to be no handling for multiple simultaneous users.
This interface can only be used by one task at a time, so you should
probably only allow one opener.  Well, I guess the BMC could be split
into a reader and a writer task, so I'm not really sure about that, but
I would think in most situations having more than one opener is a
bug.  You do call clr_b_busy() on open, for instance, which might be
an issue for multiple openers.  Maybe a module parameter for
maximum number of openers? Just want to make sure this was
thought about, at least.

There is also no mutex protecting reading or writing.  If multiple
threads call read or write at the same time, it probably wouldn't
work correctly.  I think you need a read and a write mutex on the
interface to protect against this.

The spec says:

The BMC must not return a given response once the corresponding
Request-to-Response interval has passed. The BMC can ensure this
by maintaining its own internal list of outstanding requests through
the interface. The BMC could age and expire the entries in the list
by expiring the entries at an interval that is somewhat shorter than
the specified Request-to-Response interval

On the write side, though, there doesn't seem to be a way to handle a
situation where the host side doesn't respond for a while and the
pending message would need to be discarded.

The spec doesn't mention much about error recovery on this interface,
but the way this is written should be fine, I think.

I'm copying Rocky Craig, who wrote the host side driver for Linux, in
case he wants to comment on this.

This is easy to read and understand, so I think v3 should be good.

Thanks,

-corey

> Signed-off-by: Alistair Popple 
> Signed-off-by: Jeremy Kerr 
> Signed-off-by: Joel Stanley 
> [clg: - checkpatch fixes
>- added a devicetree binding documentation
>- replace 'bt_host' by 'bt_bmc' to reflect that the driver is
>  the BMC side of the IPMI BT interface
>- renamed the device to 'ipmi-bt-host'
>- introduced a temporary buffer to copy_{to,from}_user
>- used platform_get_irq()
>- moved the driver under drivers/char/ipmi/ but kept it as a misc
>  device
>- changed the compatible cell to "aspeed,ast2400-bt-bmc"
> ]
> Signed-off-by: Cédric Le Goater 
> ---
>
>   Changes since v1:
>
>   - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
> the BMC side of the IPMI BT interface
>   - renamed the device to 'ipmi-bt-host'
>   - introduced a temporary buffer to copy_{to,from}_user
>   - used platform_get_irq()
>   - moved the driver under drivers/char/ipmi/ but kept it as a misc
> device
>   - changed the compatible cell to "aspeed,ast2400-bt-bmc"
>
>   .../bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt   |  23 +
>   drivers/Makefile   |   2 +-
>   drivers/char/ipmi/Kconfig  |   7 +
>   drivers/char/ipmi/Makefile |   1 +
>   drivers/char/ipmi/bt-bmc.c | 486 
> +
>   include/uapi/linux/Kbuild  |   1 +
>   include/uapi/linux/bt-bmc.h|  18 +
>   7 files changed, 537 insertions(+), 1 deletion(-)
>   create mode 100644 
> Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
>   create mode 100644 drivers/char/ipmi/bt-bmc.c
>   create mode 100644 include/uapi/linux/bt-bmc.h
>
> diff --git 
> a/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt 
> b/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
> new file mode 100644
> index 

Re: [Openipmi-developer] [PATCH v2 1/3] ipmi: add an Aspeed BT IPMI BMC driver

2016-09-16 Thread LABBE Corentin
Hello

I have some minor comment below:

On Fri, Sep 16, 2016 at 12:39:25PM +0200, Cédric Le Goater wrote:
> From: Alistair Popple 
> 
> This patch adds a simple device driver to expose the iBT interface on
> Aspeed SOCs (AST2400 and AST2500) as a character device. Such SOCs are
> commonly used as BMCs (BaseBoard Management Controllers) and this
> driver implements the BMC side of the BT interface.
> 
> The BT (Block Transfer) interface is used to perform in-band IPMI
> communication between a host and its BMC. Entire messages are buffered
> before sending a notification to the other end, host or BMC, that
> there is data to be read. Usually, the host emits requests and the BMC
> responses but the specification provides a mean for the BMC to send
> SMS Attention (BMC-to-Host attention or System Management Software
> attention) messages.
> 
> For this purpose, the driver introduces a specific ioctl on the
> device: 'BT_BMC_IOCTL_SMS_ATN' that can be used by the system running
> on the BMC to signal the host of such an event.
> 
> The device name defaults to '/dev/ipmi-bt-host'
> 
> Signed-off-by: Alistair Popple 
> Signed-off-by: Jeremy Kerr 
> Signed-off-by: Joel Stanley 
> [clg: - checkpatch fixes
>   - added a devicetree binding documentation
>   - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
> the BMC side of the IPMI BT interface
>   - renamed the device to 'ipmi-bt-host'
>   - introduced a temporary buffer to copy_{to,from}_user
>   - used platform_get_irq()
>   - moved the driver under drivers/char/ipmi/ but kept it as a misc
> device
>   - changed the compatible cell to "aspeed,ast2400-bt-bmc"
> ]
> Signed-off-by: Cédric Le Goater 
> ---
> 
>  Changes since v1:
> 
>  - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
>the BMC side of the IPMI BT interface
>  - renamed the device to 'ipmi-bt-host'
>  - introduced a temporary buffer to copy_{to,from}_user
>  - used platform_get_irq()
>  - moved the driver under drivers/char/ipmi/ but kept it as a misc
>device
>  - changed the compatible cell to "aspeed,ast2400-bt-bmc"
> 
>  .../bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt   |  23 +
>  drivers/Makefile   |   2 +-
>  drivers/char/ipmi/Kconfig  |   7 +
>  drivers/char/ipmi/Makefile |   1 +
>  drivers/char/ipmi/bt-bmc.c | 486 
> +
>  include/uapi/linux/Kbuild  |   1 +
>  include/uapi/linux/bt-bmc.h|  18 +
>  7 files changed, 537 insertions(+), 1 deletion(-)
>  create mode 100644 
> Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
>  create mode 100644 drivers/char/ipmi/bt-bmc.c
>  create mode 100644 include/uapi/linux/bt-bmc.h
> 
> diff --git 
> a/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt 
> b/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
> new file mode 100644
> index ..fbbacd958240
> --- /dev/null

[..]

> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 

Please sort them in alphabetical order, some of them seems not needed also 
(like spinlock.h)

> +
> +/*
> + * This is a BMC device used to communicate to the host
> + */
> +#define DEVICE_NAME  "ipmi-bt-host"
> +
> +#define BT_IO_BASE   0xe4
> +#define BT_IRQ   10
> +
> +#define BT_CR0   0x0
> +#define   BT_CR0_IO_BASE 16
> +#define   BT_CR0_IRQ 12
> +#define   BT_CR0_EN_CLR_SLV_RDP  0x8
> +#define   BT_CR0_EN_CLR_SLV_WRP  0x4
> +#define   BT_CR0_ENABLE_IBT  0x1
> +#define BT_CR1   0x4
> +#define   BT_CR1_IRQ_H2B 0x01
> +#define   BT_CR1_IRQ_HBUSY   0x40
> +#define BT_CR2   0x8
> +#define   BT_CR2_IRQ_H2B 0x01
> +#define   BT_CR2_IRQ_HBUSY   0x40
> +#define BT_CR3   0xc
> +#define BT_CTRL  0x10
> +#define   BT_CTRL_B_BUSY 0x80
> +#define   BT_CTRL_H_BUSY 0x40
> +#define   BT_CTRL_OEM0   0x20
> +#define   BT_CTRL_SMS_ATN0x10
> +#define   BT_CTRL_B2H_ATN0x08
> +#define   BT_CTRL_H2B_ATN0x04
> +#define   BT_CTRL_CLR_RD_PTR 0x02
> +#define   BT_CTRL_CLR_WR_PTR 0x01
> +#define BT_BMC2HOST  0x14
> +#define BT_INTMASK   0x18
> +#define   BT_INTMASK_B2H_IRQEN   0x01
> +#define   BT_INTMASK_B2H_IRQ 0x02
> +#define   BT_INTMASK_BMC_HWRST   0x80

Why to use 3 space after some define ?

[..]

> +
> +#define BT_BMC_BUFFER_SIZE 256

Put this define with others

[..]

> +
> +static 

[Openipmi-developer] [PATCH v2 3/3] ARM: dts: aspeed: Enable BT IPMI BMC device

2016-09-16 Thread Cédric Le Goater
Signed-off-by: Cédric Le Goater 
---
 Changes since v1:

 - added the soc name ast2400 in the compatible cell 

 arch/arm/boot/dts/aspeed-g4.dtsi | 6 ++
 arch/arm/boot/dts/aspeed-g5.dtsi | 6 ++
 2 files changed, 12 insertions(+)

diff --git a/arch/arm/boot/dts/aspeed-g4.dtsi b/arch/arm/boot/dts/aspeed-g4.dtsi
index 22dee5937d5c..7bb00b6f13d8 100644
--- a/arch/arm/boot/dts/aspeed-g4.dtsi
+++ b/arch/arm/boot/dts/aspeed-g4.dtsi
@@ -82,6 +82,12 @@
clocks = <_apb>;
};
 
+   ibt: ibt@1e789140 {
+   compatible = "aspeed,ast2400-bt-bmc";
+   reg = <0x1e789140 0x18>;
+   interrupts = <8>;
+   };
+
wdt1: wdt@1e785000 {
compatible = "aspeed,wdt";
reg = <0x1e785000 0x1c>;
diff --git a/arch/arm/boot/dts/aspeed-g5.dtsi b/arch/arm/boot/dts/aspeed-g5.dtsi
index dd94d9361fda..1d8f81b548b3 100644
--- a/arch/arm/boot/dts/aspeed-g5.dtsi
+++ b/arch/arm/boot/dts/aspeed-g5.dtsi
@@ -86,6 +86,12 @@
clocks = <_apb>;
};
 
+   ibt: ibt@1e789140 {
+   compatible = "aspeed,ast2400-bt-bmc";
+   reg = <0x1e789140 0x18>;
+   interrupts = <8>;
+   };
+
wdt1: wdt@1e785000 {
compatible = "aspeed,wdt";
reg = <0x1e785000 0x1c>;
-- 
2.7.4


--
___
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer


Re: [Openipmi-developer] [PATCH v2 1/3] ipmi: add an Aspeed BT IPMI BMC driver

2016-09-16 Thread Cédric Le Goater
On 09/16/2016 02:29 PM, LABBE Corentin wrote:
> Hello
> 
> I have some minor comment below:
> 
> On Fri, Sep 16, 2016 at 12:39:25PM +0200, Cédric Le Goater wrote:
>> From: Alistair Popple 
>>
>> This patch adds a simple device driver to expose the iBT interface on
>> Aspeed SOCs (AST2400 and AST2500) as a character device. Such SOCs are
>> commonly used as BMCs (BaseBoard Management Controllers) and this
>> driver implements the BMC side of the BT interface.
>>
>> The BT (Block Transfer) interface is used to perform in-band IPMI
>> communication between a host and its BMC. Entire messages are buffered
>> before sending a notification to the other end, host or BMC, that
>> there is data to be read. Usually, the host emits requests and the BMC
>> responses but the specification provides a mean for the BMC to send
>> SMS Attention (BMC-to-Host attention or System Management Software
>> attention) messages.
>>
>> For this purpose, the driver introduces a specific ioctl on the
>> device: 'BT_BMC_IOCTL_SMS_ATN' that can be used by the system running
>> on the BMC to signal the host of such an event.
>>
>> The device name defaults to '/dev/ipmi-bt-host'
>>
>> Signed-off-by: Alistair Popple 
>> Signed-off-by: Jeremy Kerr 
>> Signed-off-by: Joel Stanley 
>> [clg: - checkpatch fixes
>>   - added a devicetree binding documentation
>>   - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
>> the BMC side of the IPMI BT interface
>>   - renamed the device to 'ipmi-bt-host'
>>   - introduced a temporary buffer to copy_{to,from}_user
>>   - used platform_get_irq()
>>   - moved the driver under drivers/char/ipmi/ but kept it as a misc
>> device
>>   - changed the compatible cell to "aspeed,ast2400-bt-bmc"
>> ]
>> Signed-off-by: Cédric Le Goater 
>> ---
>>
>>  Changes since v1:
>>
>>  - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
>>the BMC side of the IPMI BT interface
>>  - renamed the device to 'ipmi-bt-host'
>>  - introduced a temporary buffer to copy_{to,from}_user
>>  - used platform_get_irq()
>>  - moved the driver under drivers/char/ipmi/ but kept it as a misc
>>device
>>  - changed the compatible cell to "aspeed,ast2400-bt-bmc"
>>
>>  .../bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt   |  23 +
>>  drivers/Makefile   |   2 +-
>>  drivers/char/ipmi/Kconfig  |   7 +
>>  drivers/char/ipmi/Makefile |   1 +
>>  drivers/char/ipmi/bt-bmc.c | 486 
>> +
>>  include/uapi/linux/Kbuild  |   1 +
>>  include/uapi/linux/bt-bmc.h|  18 +
>>  7 files changed, 537 insertions(+), 1 deletion(-)
>>  create mode 100644 
>> Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
>>  create mode 100644 drivers/char/ipmi/bt-bmc.c
>>  create mode 100644 include/uapi/linux/bt-bmc.h
>>
>> diff --git 
>> a/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt 
>> b/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
>> new file mode 100644
>> index ..fbbacd958240
>> --- /dev/null
> 
> [..]
> 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
> 
> Please sort them in alphabetical order, some of them seems not needed also 
> (like spinlock.h)

sure. I will clean them up.

>> +
>> +/*
>> + * This is a BMC device used to communicate to the host
>> + */
>> +#define DEVICE_NAME "ipmi-bt-host"
>> +
>> +#define BT_IO_BASE  0xe4
>> +#define BT_IRQ  10
>> +
>> +#define BT_CR0  0x0
>> +#define   BT_CR0_IO_BASE16
>> +#define   BT_CR0_IRQ12
>> +#define   BT_CR0_EN_CLR_SLV_RDP 0x8
>> +#define   BT_CR0_EN_CLR_SLV_WRP 0x4
>> +#define   BT_CR0_ENABLE_IBT 0x1
>> +#define BT_CR1  0x4
>> +#define   BT_CR1_IRQ_H2B0x01
>> +#define   BT_CR1_IRQ_HBUSY  0x40
>> +#define BT_CR2  0x8
>> +#define   BT_CR2_IRQ_H2B0x01
>> +#define   BT_CR2_IRQ_HBUSY  0x40
>> +#define BT_CR3  0xc
>> +#define BT_CTRL 0x10
>> +#define   BT_CTRL_B_BUSY0x80
>> +#define   BT_CTRL_H_BUSY0x40
>> +#define   BT_CTRL_OEM0  0x20
>> +#define   BT_CTRL_SMS_ATN   0x10
>> +#define   BT_CTRL_B2H_ATN   0x08
>> +#define   BT_CTRL_H2B_ATN   0x04
>> +#define   BT_CTRL_CLR_RD_PTR0x02
>> +#define   BT_CTRL_CLR_WR_PTR0x01
>> +#define BT_BMC2HOST 0x14
>> +#define BT_INTMASK  0x18
>> +#define   BT_INTMASK_B2H_IRQEN  0x01
>> +#define   BT_INTMASK_B2H_IRQ   

[Openipmi-developer] [PATCH v2 1/3] ipmi: add an Aspeed BT IPMI BMC driver

2016-09-16 Thread Cédric Le Goater
From: Alistair Popple 

This patch adds a simple device driver to expose the iBT interface on
Aspeed SOCs (AST2400 and AST2500) as a character device. Such SOCs are
commonly used as BMCs (BaseBoard Management Controllers) and this
driver implements the BMC side of the BT interface.

The BT (Block Transfer) interface is used to perform in-band IPMI
communication between a host and its BMC. Entire messages are buffered
before sending a notification to the other end, host or BMC, that
there is data to be read. Usually, the host emits requests and the BMC
responses but the specification provides a mean for the BMC to send
SMS Attention (BMC-to-Host attention or System Management Software
attention) messages.

For this purpose, the driver introduces a specific ioctl on the
device: 'BT_BMC_IOCTL_SMS_ATN' that can be used by the system running
on the BMC to signal the host of such an event.

The device name defaults to '/dev/ipmi-bt-host'

Signed-off-by: Alistair Popple 
Signed-off-by: Jeremy Kerr 
Signed-off-by: Joel Stanley 
[clg: - checkpatch fixes
  - added a devicetree binding documentation
  - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
the BMC side of the IPMI BT interface
  - renamed the device to 'ipmi-bt-host'
  - introduced a temporary buffer to copy_{to,from}_user
  - used platform_get_irq()
  - moved the driver under drivers/char/ipmi/ but kept it as a misc
device
  - changed the compatible cell to "aspeed,ast2400-bt-bmc"
]
Signed-off-by: Cédric Le Goater 
---

 Changes since v1:

 - replace 'bt_host' by 'bt_bmc' to reflect that the driver is
   the BMC side of the IPMI BT interface
 - renamed the device to 'ipmi-bt-host'
 - introduced a temporary buffer to copy_{to,from}_user
 - used platform_get_irq()
 - moved the driver under drivers/char/ipmi/ but kept it as a misc
   device
 - changed the compatible cell to "aspeed,ast2400-bt-bmc"

 .../bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt   |  23 +
 drivers/Makefile   |   2 +-
 drivers/char/ipmi/Kconfig  |   7 +
 drivers/char/ipmi/Makefile |   1 +
 drivers/char/ipmi/bt-bmc.c | 486 +
 include/uapi/linux/Kbuild  |   1 +
 include/uapi/linux/bt-bmc.h|  18 +
 7 files changed, 537 insertions(+), 1 deletion(-)
 create mode 100644 
Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
 create mode 100644 drivers/char/ipmi/bt-bmc.c
 create mode 100644 include/uapi/linux/bt-bmc.h

diff --git 
a/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt 
b/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
new file mode 100644
index ..fbbacd958240
--- /dev/null
+++ b/Documentation/devicetree/bindings/char/ipmi/aspeed,ast2400-bt-bmc.txt
@@ -0,0 +1,23 @@
+* Aspeed BT (Block Transfer) IPMI interface
+
+The Aspeed SOCs (AST2400 and AST2500) are commonly used as BMCs
+(BaseBoard Management Controllers) and the BT interface can be used to
+perform in-band IPMI communication with their host.
+
+Required properties:
+
+- compatible : should be "aspeed,ast2400-bt-bmc"
+- reg: physical address and size of the registers
+
+Optional properties:
+
+- interrupts: interrupt generated by the BT interface. without an
+  interrupt, the driver will operate in poll mode.
+
+Example:
+
+   ibt@1e789140 {
+   compatible = "aspeed,ast2400-bt-bmc";
+   reg = <0x1e789140 0x18>;
+   interrupts = <8>;
+   };
diff --git a/drivers/Makefile b/drivers/Makefile
index 53abb4a5f736..5a9e7b6b7928 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -21,7 +21,7 @@ obj-y += video/
 obj-y  += idle/
 
 # IPMI must come before ACPI in order to provide IPMI opregion support
-obj-$(CONFIG_IPMI_HANDLER) += char/ipmi/
+obj-y  += char/ipmi/
 
 obj-$(CONFIG_ACPI) += acpi/
 obj-$(CONFIG_SFI)  += sfi/
diff --git a/drivers/char/ipmi/Kconfig b/drivers/char/ipmi/Kconfig
index 5a9350b1069a..2c234e3e7513 100644
--- a/drivers/char/ipmi/Kconfig
+++ b/drivers/char/ipmi/Kconfig
@@ -76,3 +76,10 @@ config IPMI_POWEROFF
 the IPMI management controller is capable of this.
 
 endif # IPMI_HANDLER
+
+config ASPEED_BT_IPMI_BMC
+   tristate "BT IPMI bmc driver"
+   help
+ Provides a driver for the BT (Block Transfer) IPMI interface
+ found on Aspeed SOCs (AST2400 and AST2500). The driver
+ implements the BMC side of the BT interface.
diff --git a/drivers/char/ipmi/Makefile b/drivers/char/ipmi/Makefile
index f3ffde1f5f1f..0d98cd91def1 100644
--- a/drivers/char/ipmi/Makefile
+++ b/drivers/char/ipmi/Makefile
@@ -11,3 +11,4 @@ obj-$(CONFIG_IPMI_SSIF) += ipmi_ssif.o
 

[Openipmi-developer] [PATCH v2 2/3] ARM: aspeed: Add defconfigs for CONFIG_ASPEED_BT_IPMI_BMC

2016-09-16 Thread Cédric Le Goater
Signed-off-by: Cédric Le Goater 
---

 Changes since v1:

 - renamed config option

 arch/arm/configs/aspeed_g4_defconfig | 1 +
 arch/arm/configs/aspeed_g5_defconfig | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/arm/configs/aspeed_g4_defconfig 
b/arch/arm/configs/aspeed_g4_defconfig
index ca39c04fec6b..af3847db00f8 100644
--- a/arch/arm/configs/aspeed_g4_defconfig
+++ b/arch/arm/configs/aspeed_g4_defconfig
@@ -53,6 +53,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=6
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
 CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_ASPEED_BT_IPMI_BMC=y
 # CONFIG_HW_RANDOM is not set
 # CONFIG_USB_SUPPORT is not set
 # CONFIG_IOMMU_SUPPORT is not set
diff --git a/arch/arm/configs/aspeed_g5_defconfig 
b/arch/arm/configs/aspeed_g5_defconfig
index 4f366b0370e9..5d46290736fb 100644
--- a/arch/arm/configs/aspeed_g5_defconfig
+++ b/arch/arm/configs/aspeed_g5_defconfig
@@ -54,6 +54,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=6
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
 CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_ASPEED_BT_IPMI_BMC=y
 # CONFIG_HW_RANDOM is not set
 # CONFIG_USB_SUPPORT is not set
 # CONFIG_IOMMU_SUPPORT is not set
-- 
2.7.4


--
___
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer


Re: [Openipmi-developer] [PATCH v2 1/3] ipmi: add an Aspeed BT IPMI BMC driver

2016-09-16 Thread Arnd Bergmann
On Friday, September 16, 2016 12:39:25 PM CEST Cédric Le Goater wrote:
> From: Alistair Popple 
> 
> This patch adds a simple device driver to expose the iBT interface on
> Aspeed SOCs (AST2400 and AST2500) as a character device. Such SOCs are
> commonly used as BMCs (BaseBoard Management Controllers) and this
> driver implements the BMC side of the BT interface.
> 
> The BT (Block Transfer) interface is used to perform in-band IPMI
> communication between a host and its BMC. Entire messages are buffered
> before sending a notification to the other end, host or BMC, that
> there is data to be read. Usually, the host emits requests and the BMC
> responses but the specification provides a mean for the BMC to send
> SMS Attention (BMC-to-Host attention or System Management Software
> attention) messages.
> 
> For this purpose, the driver introduces a specific ioctl on the
> device: 'BT_BMC_IOCTL_SMS_ATN' that can be used by the system running
> on the BMC to signal the host of such an event.
> 
> The device name defaults to '/dev/ipmi-bt-host'
> 
> Signed-off-by: Alistair Popple 
> Signed-off-by: Jeremy Kerr 
> Signed-off-by: Joel Stanley 
> 

Acked-by: Arnd Bergmann 

--
___
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer


Re: [Openipmi-developer] [PATCH v2 0/3] ARM: aspeed: add support for the BT IPMI interface

2016-09-16 Thread Arnd Bergmann
On Friday, September 16, 2016 12:39:24 PM CEST Cédric Le Goater wrote:
> 
> Cédric Le Goater (2):
>   ARM: aspeed: Add defconfigs for CONFIG_ASPEED_BT_IPMI_BMC
>   ARM: dts: aspeed: Enable BT IPMI BMC device

These two should go through the arm-soc tree, I assume Joel
will forward them to a...@kernel.org once the driver gets
picked up into the ipmi tree.

Arnd

--
___
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer