linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/9] DTS updates for system1 BMC
@ 2025-01-13 19:48 Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 1/9] dt-bindings: net: faraday,ftgmac100: Add phys mode Ninad Palsule
                   ` (8 more replies)
  0 siblings, 9 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Hello,

Please review the patch set.

V4:
---
  - Removed "Add RGMII support" patch as it needs some work from the
    driver side.
  - Improved IPBM device documentation.
  - There is a new warning in CHECK_DTBS which are false positive so
    ignored them.
    arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dtb: gpio@1e780000: 'hog-0', 'hog-1', 'hog-2', 'hog-3' do not match any of the regexes: 'pinctrl-[0-9]+'

V3:
---
  - Fixed dt_binding_check warnings in ipmb-dev.yaml
  - Updated title and description in ipmb-dev.yaml file.
  - Updated i2c-protocol description in ipmb-dev.yaml file.

V2:
---
  Fixed CHECK_DTBS errors by
    - Using generic node names
    - Documenting phy-mode rgmii-rxid in ftgmac100.yaml
    - Adding binding documentation for IPMB device interface

NINAD PALSULE (6):
  ARM: dts: aspeed: system1: Add IPMB device
  ARM: dts: aspeed: system1: Add GPIO line name
  ARM: dts: aspeed: system1: Reduce sgpio speed
  ARM: dts: aspeed: system1: Update LED gpio name
  ARM: dts: aspeed: system1: Remove VRs max8952
  ARM: dts: aspeed: system1: Mark GPIO line high/low

Ninad Palsule (3):
  dt-bindings: net: faraday,ftgmac100: Add phys mode
  bindings: ipmi: Add binding for IPMB device intf
  ARM: dts: aspeed: system1: Disable gpio pull down

 .../devicetree/bindings/ipmi/ipmb-dev.yaml    |  55 +++++++
 .../bindings/net/faraday,ftgmac100.yaml       |   3 +
 .../dts/aspeed/aspeed-bmc-ibm-system1.dts     | 139 +++++++++++-------
 3 files changed, 143 insertions(+), 54 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml

-- 
2.43.0



^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v4 1/9] dt-bindings: net: faraday,ftgmac100: Add phys mode
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf Ninad Palsule
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Aspeed device supports rgmii, rgmii-id, rgmii-rxid, rgmii-txid so
document them.

Acked-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml b/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
index 9bcbacb6640d..55d6a8379025 100644
--- a/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
+++ b/Documentation/devicetree/bindings/net/faraday,ftgmac100.yaml
@@ -44,6 +44,9 @@ properties:
   phy-mode:
     enum:
       - rgmii
+      - rgmii-id
+      - rgmii-rxid
+      - rgmii-txid
       - rmii
 
   phy-handle: true
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 1/9] dt-bindings: net: faraday,ftgmac100: Add phys mode Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-14 16:46   ` Corey Minyard
  2025-01-13 19:48 ` [PATCH v4 3/9] ARM: dts: aspeed: system1: Add IPMB device Ninad Palsule
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Add device tree binding document for the IPMB device interface.
This device is already in use in both driver and .dts files.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 .../devicetree/bindings/ipmi/ipmb-dev.yaml    | 55 +++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml

diff --git a/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
new file mode 100644
index 000000000000..136806cba632
--- /dev/null
+++ b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ipmi/ipmb-dev.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: The Intelligent Platform Management Bus(IPMB) Device
+
+description: |
+  The IPMB is an I2C bus which provides interconnection between Baseboard
+  Management Controller(BMC) and chassis electronics. The BMC sends IPMI
+  requests to intelligent controllers like Satellite Management Controller(MC)
+  device via IPMB and the device sends a response back to the BMC.
+  This device binds backend Satelite MC which is a I2C slave device with the BMC
+  for management purpose. A miscalleneous device provices a user space program
+  to communicate with kernel and backend device. Some IPMB devices only support
+  I2C protocol instead of SMB protocol.
+
+  IPMB communications protocol Specification V1.0
+  https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmp-spec-v1.0.pdf
+
+maintainers:
+  - Ninad Palsule <ninad@linux.ibm.com>
+
+properties:
+  compatible:
+    enum:
+      - ipmb-dev
+
+  reg:
+    maxItems: 1
+
+  i2c-protocol:
+    description:
+      Use I2C block transfer instead of SMBUS block transfer.
+    type: boolean
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        ipmb-dev@10 {
+            compatible = "ipmb-dev";
+            reg = <0x10>;
+            i2c-protocol;
+        };
+    };
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 3/9] ARM: dts: aspeed: system1: Add IPMB device
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 1/9] dt-bindings: net: faraday,ftgmac100: Add phys mode Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 4/9] ARM: dts: aspeed: system1: Add GPIO line name Ninad Palsule
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Add IPMB device sitting behind PCH module

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 8f77bc9e860c..0d16987cfc80 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -763,6 +763,15 @@ i2c3mux0chn7: i2c@7 {
 
 &i2c4 {
 	status = "okay";
+	multi-master;
+	bus-frequency = <1000000>;
+
+	ipmb@10 {
+		compatible = "ipmb-dev";
+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+
+		i2c-protocol;
+	};
 };
 
 &i2c5 {
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 4/9] ARM: dts: aspeed: system1: Add GPIO line name
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (2 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 3/9] ARM: dts: aspeed: system1: Add IPMB device Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 5/9] ARM: dts: aspeed: system1: Reduce sgpio speed Ninad Palsule
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Add following GPIO line name so that userspace can control them
    - Flash write override
    - pch-reset

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 0d16987cfc80..973169679c8d 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -370,7 +370,7 @@ &gpio0 {
 	/*K0-K7*/	"","","","","","","","",
 	/*L0-L7*/	"","","","","","","","bmc-ready",
 	/*M0-M7*/	"","","","","","","","",
-	/*N0-N7*/	"fpga-debug-enable","","","","","","","",
+	/*N0-N7*/	"pch-reset","","","","","flash-write-override","","",
 	/*O0-O7*/	"","","","","","","","",
 	/*P0-P7*/	"","","","","","","","bmc-hb",
 	/*Q0-Q7*/	"","","","","","","pch-ready","",
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 5/9] ARM: dts: aspeed: system1: Reduce sgpio speed
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (3 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 4/9] ARM: dts: aspeed: system1: Add GPIO line name Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 6/9] ARM: dts: aspeed: system1: Update LED gpio name Ninad Palsule
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Reduce sgpio speed to improve stability with the current PCB layout.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 973169679c8d..ca55a4fb6dff 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -401,7 +401,7 @@ &emmc {
 &sgpiom0 {
 	status = "okay";
 	ngpios = <128>;
-	bus-frequency = <1000000>;
+	bus-frequency = <500000>;
 };
 
 &ibt {
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 6/9] ARM: dts: aspeed: system1: Update LED gpio name
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (4 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 5/9] ARM: dts: aspeed: system1: Reduce sgpio speed Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 7/9] ARM: dts: aspeed: system1: Remove VRs max8952 Ninad Palsule
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Rename LEDs with meaningful names for easier identification.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 .../dts/aspeed/aspeed-bmc-ibm-system1.dts     | 36 +++++++++----------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index ca55a4fb6dff..1e0b1111ea9a 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -116,63 +116,63 @@ vga_memory: region@bf000000 {
 	leds {
 		compatible = "gpio-leds";
 
-		led-0 {
+		led-bmc-ready {
 			gpios = <&gpio0 ASPEED_GPIO(L, 7) GPIO_ACTIVE_HIGH>;
 		};
 
-		led-1 {
+		led-bmc-hb {
 			gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_HIGH>;
 		};
 
-		led-2 {
+		led-rear-enc-fault0 {
 			gpios = <&gpio0 ASPEED_GPIO(S, 6) GPIO_ACTIVE_HIGH>;
 		};
 
-		led-3 {
+		led-rear-enc-id0 {
 			gpios = <&gpio0 ASPEED_GPIO(S, 7) GPIO_ACTIVE_HIGH>;
 		};
 
-		led-4 {
+		led-fan0-fault {
 			gpios = <&pca3 5 GPIO_ACTIVE_LOW>;
 		};
 
-		led-5 {
+		led-fan1-fault {
 			gpios = <&pca3 6 GPIO_ACTIVE_LOW>;
 		};
 
-		led-6 {
+		led-fan2-fault {
 			gpios = <&pca3 7 GPIO_ACTIVE_LOW>;
 		};
 
-		led-7 {
+		led-fan3-fault {
 			gpios = <&pca3 8 GPIO_ACTIVE_LOW>;
 		};
 
-		led-8 {
+		led-fan4-fault {
 			gpios = <&pca3 9 GPIO_ACTIVE_LOW>;
 		};
 
-		led-9 {
+		led-fan5-fault {
 			gpios = <&pca3 10 GPIO_ACTIVE_LOW>;
 		};
 
-		led-a {
+		led-fan6-fault {
 			gpios = <&pca3 11 GPIO_ACTIVE_LOW>;
 		};
 
-		led-b {
+		led-nvmed0-fault {
 			gpios = <&pca4 4 GPIO_ACTIVE_HIGH>;
 		};
 
-		led-c {
+		led-nvmed1-fault {
 			gpios = <&pca4 5 GPIO_ACTIVE_HIGH>;
 		};
 
-		led-d {
+		led-nvmed2-fault {
 			gpios = <&pca4 6 GPIO_ACTIVE_HIGH>;
 		};
 
-		led-e {
+		led-nvmed3-fault {
 			gpios = <&pca4 7 GPIO_ACTIVE_HIGH>;
 		};
 	};
@@ -368,14 +368,14 @@ &gpio0 {
 	/*I0-I7*/	"","","","","","","","",
 	/*J0-J7*/	"","","","","","","","",
 	/*K0-K7*/	"","","","","","","","",
-	/*L0-L7*/	"","","","","","","","bmc-ready",
+	/*L0-L7*/	"","","","","","","","led-bmc-ready",
 	/*M0-M7*/	"","","","","","","","",
 	/*N0-N7*/	"pch-reset","","","","","flash-write-override","","",
 	/*O0-O7*/	"","","","","","","","",
-	/*P0-P7*/	"","","","","","","","bmc-hb",
+	/*P0-P7*/	"","","","","","","","led-bmc-hb",
 	/*Q0-Q7*/	"","","","","","","pch-ready","",
 	/*R0-R7*/	"","","","","","","","",
-	/*S0-S7*/	"","","","","","","rear-enc-fault0","rear-enc-id0",
+	/*S0-S7*/	"","","","","","","led-rear-enc-fault0","led-rear-enc-id0",
 	/*T0-T7*/	"","","","","","","","",
 	/*U0-U7*/	"","","","","","","","",
 	/*V0-V7*/	"","rtc-battery-voltage-read-enable","","power-chassis-control","","","","",
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 7/9] ARM: dts: aspeed: system1: Remove VRs max8952
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (5 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 6/9] ARM: dts: aspeed: system1: Update LED gpio name Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 8/9] ARM: dts: aspeed: system1: Mark GPIO line high/low Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 9/9] ARM: dts: aspeed: system1: Disable gpio pull down Ninad Palsule
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Removing voltage regulators max8952 from device tree. Those are fully
controlled by hardware and firmware should not touch them.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 .../dts/aspeed/aspeed-bmc-ibm-system1.dts     | 34 -------------------
 1 file changed, 34 deletions(-)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 1e0b1111ea9a..089a8315753a 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -486,23 +486,6 @@ eeprom@50 {
 		compatible = "atmel,24c64";
 		reg = <0x50>;
 	};
-
-	regulator@60 {
-		compatible = "maxim,max8952";
-		reg = <0x60>;
-
-		max8952,default-mode = <0>;
-		max8952,dvs-mode-microvolt = <1250000>, <1200000>,
-						<1050000>, <950000>;
-		max8952,sync-freq = <0>;
-		max8952,ramp-speed = <0>;
-
-		regulator-name = "VR_v77_1v4";
-		regulator-min-microvolt = <770000>;
-		regulator-max-microvolt = <1400000>;
-		regulator-always-on;
-		regulator-boot-on;
-	};
 };
 
 &i2c1 {
@@ -1198,23 +1181,6 @@ eeprom@50 {
 		compatible = "atmel,24c64";
 		reg = <0x50>;
 	};
-
-	regulator@60 {
-		compatible = "maxim,max8952";
-		reg = <0x60>;
-
-		max8952,default-mode = <0>;
-		max8952,dvs-mode-microvolt = <1250000>, <1200000>,
-						<1050000>, <950000>;
-		max8952,sync-freq = <0>;
-		max8952,ramp-speed = <0>;
-
-		regulator-name = "VR_v77_1v4";
-		regulator-min-microvolt = <770000>;
-		regulator-max-microvolt = <1400000>;
-		regulator-always-on;
-		regulator-boot-on;
-	};
 };
 
 &i2c11 {
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 8/9] ARM: dts: aspeed: system1: Mark GPIO line high/low
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (6 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 7/9] ARM: dts: aspeed: system1: Remove VRs max8952 Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  2025-01-13 19:48 ` [PATCH v4 9/9] ARM: dts: aspeed: system1: Disable gpio pull down Ninad Palsule
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

- Mark following GPIO lines as input high:
  - GPIOL4 (reset PCH registers)
  - GPIOL5 (reset portition of intel ME)
- Mark isolate errors from cpu1 gpio (GPIOO6) as active low output.
- The fan controller reset line should be active high.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 .../dts/aspeed/aspeed-bmc-ibm-system1.dts     | 28 +++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 089a8315753a..1f0a6247f97e 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -383,6 +383,34 @@ &gpio0 {
 	/*X0-X7*/	"fpga-pgood","power-chassis-good","pch-pgood","","","","","",
 	/*Y0-Y7*/	"","","","","","","","",
 	/*Z0-Z7*/	"","","","","","","","";
+
+	hog-0 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(L, 4) GPIO_ACTIVE_HIGH>;
+		input;
+		line-name = "RST_RTCRST_N";
+	};
+
+	hog-1 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(L, 5) GPIO_ACTIVE_HIGH>;
+		input;
+		line-name = "RST_SRTCRST_N";
+	};
+
+	hog-2 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(L, 6) GPIO_ACTIVE_HIGH>;
+		output-high;
+		line-name = "BMC_FAN_E3_SVC_PEX_INT_N";
+	};
+
+	hog-3 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(O, 6) GPIO_ACTIVE_LOW>;
+		output-low;
+		line-name = "isolate_errs_cpu1";
+	};
 };
 
 &emmc_controller {
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 9/9] ARM: dts: aspeed: system1: Disable gpio pull down
  2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
                   ` (7 preceding siblings ...)
  2025-01-13 19:48 ` [PATCH v4 8/9] ARM: dts: aspeed: system1: Mark GPIO line high/low Ninad Palsule
@ 2025-01-13 19:48 ` Ninad Palsule
  8 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-13 19:48 UTC (permalink / raw)
  To: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel
  Cc: Ninad Palsule

Disable internal pull down for the following GPIO lines.
- GPIOL4 - Reset PCH registers in the rtc.
- GPIOL5 - Reset portition of Intel ME
- GPIOL6 - FM smi active
- GPIOL7 - psu all dc power good.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
---
 .../dts/aspeed/aspeed-bmc-ibm-system1.dts     | 28 +++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
index 1f0a6247f97e..723cbbbc72bf 100644
--- a/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-system1.dts
@@ -355,7 +355,35 @@ &uhci {
 	status = "okay";
 };
 
+&pinctrl {
+	pinctrl_gpiol4_unbiased: gpiol4 {
+		pins = "C15";
+		bias-disable;
+	};
+
+	pinctrl_gpiol5_unbiased: gpiol5 {
+		pins = "F15";
+		bias-disable;
+	};
+
+	pinctrl_gpiol6_unbiased: gpiol6 {
+		pins = "B14";
+		bias-disable;
+	};
+
+	pinctrl_gpiol7_unbiased: gpiol7 {
+		pins = "C14";
+		bias-disable;
+	};
+};
+
 &gpio0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_gpiol4_unbiased
+		&pinctrl_gpiol5_unbiased
+		&pinctrl_gpiol6_unbiased
+		&pinctrl_gpiol7_unbiased>;
+
 	gpio-line-names =
 	/*A0-A7*/	"","","","","","","","",
 	/*B0-B7*/	"","","","","bmc-tpm-reset","","","",
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf
  2025-01-13 19:48 ` [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf Ninad Palsule
@ 2025-01-14 16:46   ` Corey Minyard
  2025-01-14 22:07     ` Ninad Palsule
  0 siblings, 1 reply; 12+ messages in thread
From: Corey Minyard @ 2025-01-14 16:46 UTC (permalink / raw)
  To: Ninad Palsule
  Cc: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel

On Mon, Jan 13, 2025 at 01:48:12PM -0600, Ninad Palsule wrote:
> Add device tree binding document for the IPMB device interface.
> This device is already in use in both driver and .dts files.
> 
> Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
> ---
>  .../devicetree/bindings/ipmi/ipmb-dev.yaml    | 55 +++++++++++++++++++
>  1 file changed, 55 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
> 
> diff --git a/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
> new file mode 100644
> index 000000000000..136806cba632
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
> @@ -0,0 +1,55 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/ipmi/ipmb-dev.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: The Intelligent Platform Management Bus(IPMB) Device
> +
> +description: |
> +  The IPMB is an I2C bus which provides interconnection between Baseboard

"Baseboard -> "a Baseboard"

> +  Management Controller(BMC) and chassis electronics. The BMC sends IPMI
> +  requests to intelligent controllers like Satellite Management Controller(MC)
> +  device via IPMB and the device sends a response back to the BMC.

device -> devices
"a response" -> responses

> +  This device binds backend Satelite MC which is a I2C slave device with the BMC

You use IPMB devices on both the BMC and the MCs.  The sentence above is
a little confusing, too.  How about:

This device uses an I2C slave device to send and receive IPMB messages,
either on a BMC or other MC.

> +  for management purpose. A miscalleneous device provices a user space program

Misspelling: miscellaneous

> +  to communicate with kernel and backend device. Some IPMB devices only support

"kernel" -> "the kernel"

> +  I2C protocol instead of SMB protocol.

the I2C protocol and not the SMB protocol.

Yes, the English language uses way too many articles...

That is a lot of detail, but it looks good beyond what I've commented
on.

> +
> +  IPMB communications protocol Specification V1.0
> +  https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmp-spec-v1.0.pdf
> +
> +maintainers:
> +  - Ninad Palsule <ninad@linux.ibm.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ipmb-dev
> +
> +  reg:
> +    maxItems: 1
> +
> +  i2c-protocol:
> +    description:
> +      Use I2C block transfer instead of SMBUS block transfer.
> +    type: boolean
> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        ipmb-dev@10 {
> +            compatible = "ipmb-dev";
> +            reg = <0x10>;

I'm not sure of the conventions around device tree here, but the reg is
not used in the driver and it will always be the I2C address that
already in that node just one level up.  It does not serve any purpose
that I can see.  My suggestion would be to remove it.

-corey

> +            i2c-protocol;
> +        };
> +    };
> -- 
> 2.43.0
> 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf
  2025-01-14 16:46   ` Corey Minyard
@ 2025-01-14 22:07     ` Ninad Palsule
  0 siblings, 0 replies; 12+ messages in thread
From: Ninad Palsule @ 2025-01-14 22:07 UTC (permalink / raw)
  To: corey
  Cc: minyard, robh, krzk+dt, conor+dt, andrew+netdev, davem, edumazet,
	kuba, pabeni, openipmi-developer, netdev, joel, andrew,
	devicetree, eajames, linux-arm-kernel, linux-aspeed, linux-kernel

Hello Corey,

Thanks for the review.

On 1/14/25 10:46, Corey Minyard wrote:
> On Mon, Jan 13, 2025 at 01:48:12PM -0600, Ninad Palsule wrote:
>> Add device tree binding document for the IPMB device interface.
>> This device is already in use in both driver and .dts files.
>>
>> Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
>> ---
>>   .../devicetree/bindings/ipmi/ipmb-dev.yaml    | 55 +++++++++++++++++++
>>   1 file changed, 55 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
>> new file mode 100644
>> index 000000000000..136806cba632
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/ipmi/ipmb-dev.yaml
>> @@ -0,0 +1,55 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/ipmi/ipmb-dev.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: The Intelligent Platform Management Bus(IPMB) Device
>> +
>> +description: |
>> +  The IPMB is an I2C bus which provides interconnection between Baseboard
> "Baseboard -> "a Baseboard"
Fixed.
>
>> +  Management Controller(BMC) and chassis electronics. The BMC sends IPMI
>> +  requests to intelligent controllers like Satellite Management Controller(MC)
>> +  device via IPMB and the device sends a response back to the BMC.
> device -> devices
> "a response" -> responses
Fixed
>
>> +  This device binds backend Satelite MC which is a I2C slave device with the BMC
> You use IPMB devices on both the BMC and the MCs.  The sentence above is
> a little confusing, too.  How about:
>
> This device uses an I2C slave device to send and receive IPMB messages,
> either on a BMC or other MC.
Changed
>
>> +  for management purpose. A miscalleneous device provices a user space program
> Misspelling: miscellaneous
Fixed.
>
>> +  to communicate with kernel and backend device. Some IPMB devices only support
> "kernel" -> "the kernel"
Fixed
>
>> +  I2C protocol instead of SMB protocol.
> the I2C protocol and not the SMB protocol.
>
> Yes, the English language uses way too many articles...
>
> That is a lot of detail, but it looks good beyond what I've commented
> on.
Changed.
>
>> +
>> +  IPMB communications protocol Specification V1.0
>> +  https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmp-spec-v1.0.pdf
>> +
>> +maintainers:
>> +  - Ninad Palsule <ninad@linux.ibm.com>
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - ipmb-dev
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  i2c-protocol:
>> +    description:
>> +      Use I2C block transfer instead of SMBUS block transfer.
>> +    type: boolean
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> +  - |
>> +    i2c {
>> +        #address-cells = <1>;
>> +        #size-cells = <0>;
>> +
>> +        ipmb-dev@10 {
>> +            compatible = "ipmb-dev";
>> +            reg = <0x10>;
> I'm not sure of the conventions around device tree here, but the reg is
> not used in the driver and it will always be the I2C address that
> already in that node just one level up.  It does not serve any purpose
> that I can see.  My suggestion would be to remove it.

There are some boards already using reg so I will not be able to remove

but I have updated the example which reflects what those boards are doing

  which indicates that node address is ORed with I2C slaved address.

Regards,

Ninad

>
> -corey
>
>> +            i2c-protocol;
>> +        };
>> +    };
>> -- 
>> 2.43.0
>>


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2025-01-14 22:17 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-13 19:48 [PATCH v4 0/9] DTS updates for system1 BMC Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 1/9] dt-bindings: net: faraday,ftgmac100: Add phys mode Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 2/9] bindings: ipmi: Add binding for IPMB device intf Ninad Palsule
2025-01-14 16:46   ` Corey Minyard
2025-01-14 22:07     ` Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 3/9] ARM: dts: aspeed: system1: Add IPMB device Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 4/9] ARM: dts: aspeed: system1: Add GPIO line name Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 5/9] ARM: dts: aspeed: system1: Reduce sgpio speed Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 6/9] ARM: dts: aspeed: system1: Update LED gpio name Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 7/9] ARM: dts: aspeed: system1: Remove VRs max8952 Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 8/9] ARM: dts: aspeed: system1: Mark GPIO line high/low Ninad Palsule
2025-01-13 19:48 ` [PATCH v4 9/9] ARM: dts: aspeed: system1: Disable gpio pull down Ninad Palsule

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).