Skip to contentSkip to conversation

Add Beaglebone Enhanced support

PATCH Superseded Koen Kooi 3 participants 9 messages Jul 18, 2018 – Aug 4, 2018

lore
Share & tools
lore

Koen Kooi

author
#0 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

Changes in v2:
- Moved 'Beaglebone LT pinmux' comment down a bit

 board/ti/am335x/board.c      | 6 ++++--
 board/ti/am335x/board.h      | 8 +++++++-
 board/ti/am335x/mux.c        | 7 +++++++
 include/configs/am335x_evm.h | 2 ++
 4 files changed, 20 insertions(+), 3 deletions(-)
board/ti/am335x/board.c +4 -2
index 147ff0b..a359d20 100644
@@ -725,6 +725,8 @@ int board_late_init(void)
 
 	if (board_is_bbg1())
 		name = "BBG1";
+	if (board_is_bben())
+		name = "BBEN";
 	set_board_info_env(name);
 
 	/*
@@ -870,7 +872,7 @@ int board_eth_init(bd_t *bis)
 	(defined(CONFIG_SPL_ETH_SUPPORT) && defined(CONFIG_SPL_BUILD))
 
 #ifdef CONFIG_DRIVER_TI_CPSW
-	if (board_is_bone() || board_is_bone_lt() ||
+	if (board_is_bone() || board_is_bone_lt() || board_is_bben() ||
 	    board_is_idk()) {
 		writel(MII_MODE_ENABLE, &cdev->miisel);
 		cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
@@ -906,7 +908,7 @@ int board_eth_init(bd_t *bis)
 #define AR8051_DEBUG_RGMII_CLK_DLY_REG	0x5
 #define AR8051_RGMII_TX_CLK_DLY		0x100
 
-	if (board_is_evm_sk() || board_is_gp_evm()) {
+	if (board_is_evm_sk() || board_is_gp_evm() || board_is_bben()) {
 		const char *devname;
 		devname = miiphy_get_current_dev();
 
board/ti/am335x/board.h +7 -1
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
+static inline int board_is_bben(void)
+{
+	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "SE", 2);
+}
+
 static inline int board_is_beaglebonex(void)
 {
-	return board_is_pb() || board_is_bone() || board_is_bone_lt() || board_is_bbg1();
+	return board_is_pb() || board_is_bone() || board_is_bone_lt() ||
+	       board_is_bbg1() || board_is_bben();
 }
 
 static inline int board_is_evm_sk(void)
board/ti/am335x/mux.c +7 -0
index aa18760..41333f9 100644
@@ -380,6 +380,13 @@ void enable_board_pin_mux(void)
 		configure_module_pin_mux(rgmii1_pin_mux);
 		configure_module_pin_mux(mmc0_pin_mux_sk_evm);
 	} else if (board_is_bone_lt()) {
+		if (board_is_bben()) {
+			/* SanCloud Beaglebone LT Enhanced pinmux */
+			configure_module_pin_mux(rgmii1_pin_mux);
+		} else {
+			/* Beaglebone LT pinmux */
+			configure_module_pin_mux(mii1_pin_mux);
+		}
 		/* Beaglebone LT pinmux */
 		configure_module_pin_mux(mii1_pin_mux);
 		configure_module_pin_mux(mmc0_pin_mux);
include/configs/am335x_evm.h +2 -0
index ff87adc..f1aa653 100644
@@ -153,6 +153,8 @@
 			"setenv fdtfile am335x-bonegreen-wireless.dtb; fi; " \
 		"if test $board_name = BBBL; then " \
 			"setenv fdtfile am335x-boneblue.dtb; fi; " \
+		"if test $board_name = BBEN; then " \
+			"setenv fdtfile am335x-sancloud-bbe.dtb; fi; " \
 		"if test $board_name = A33515BB; then " \
 			"setenv fdtfile am335x-evm.dtb; fi; " \
 		"if test $board_name = A335X_SK; then " \
Signature · 1 line
2.0.1
#1 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

Quoted 12 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180719/15553327/attachment.sig>
#2 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

In reply to Koen Kooi
Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 9 lines
board/ti/am335x/board.h +1 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

Quoted 3 lines
board/ti/am335x/board.h +3 -0
+{
+	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "SE", 2);
+}

[...]

Signature · 2 lines
Best regards,
Marek Vasut
author
#3 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

Quoted 29 lines

Op 19 jul. 2018, om 14:55 heeft Marek Vasut <[email protected]> het volgende geschreven:

Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

Quoted 8 lines
board/ti/am335x/board.h +0 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
Quoted 3 lines

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 1 line
board/ti/am335x/board.h +1 -0
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

I have a seperate patch for that, but I haven’t taken the time to compile both versions and look at size differences.

regards,

Koen

Quoted 9 lines
Quoted 4 lines
board/ti/am335x/board.h +3 -0
+{
+	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "SE", 2);
+}

[...]

Signature · 2 lines
Best regards,
Marek Vasut
#4 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

In reply to Marek Vasut
Quoted 25 lines · Marek Vasut
Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

Quoted 8 lines
board/ti/am335x/board.h +0 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
Quoted 3 lines

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 1 line
board/ti/am335x/board.h +1 -0
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

No, it should be inline like all of the others in the file are. And then yes, if someone wants to do a size comparison with or without inlining on all of those functions, sure.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180719/0716e668/attachment.sig>
author
#5 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

Quoted 30 lines

Op 19 jul. 2018, om 15:02 heeft Tom Rini <[email protected]> het volgende geschreven:

Quoted 25 lines · Marek Vasut
Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

Quoted 8 lines
board/ti/am335x/board.h +0 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
Quoted 7 lines
Quoted 3 lines

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 1 line
board/ti/am335x/board.h +1 -0
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

No, it should be inline like all of the others in the file are. And then yes, if someone wants to do a size comparison with or without inlining on all of those functions, sure.

I wasn’t clear in my reply, I have a seperate patch that converts all of them :)

regards,

Koen

Quoted 3 lines
Signature · 2 lines
-- 
Tom
#6 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

In reply to Tom Rini
Quoted 26 lines · Tom Rini
Quoted 25 lines · Marek Vasut
Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

Quoted 8 lines
board/ti/am335x/board.h +0 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
Quoted 7 lines
Quoted 3 lines

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 1 line
board/ti/am335x/board.h +1 -0
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

No, it should be inline like all of the others in the file are. And then yes, if someone wants to do a size comparison with or without inlining on all of those functions, sure.

Can you explain why it should be static inline ?
Last time this discussion came up in Linux kernel ML (decisions from which we seem to apply, cfr the SPDX C++ comments and DTC), static inline was frowned upon with the argument that the compiler can decide.

Signature · 2 lines
Best regards,
Marek Vasut
#7 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

Quoted 31 lines · Marek Vasut
Quoted 30 lines · Tom Rini
Quoted 28 lines · Marek Vasut
Quoted 14 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

---

[...]

board/ti/am335x/board.h static inline int board_is_bbg1(void) · line 46

Quoted 9 lines
board/ti/am335x/board.h +1 -0
index 652b10b..48df914 100644
@@ -43,9 +43,15 @@ static inline int board_is_bbg1(void)
 	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
 }
 
+static inline int board_is_bben(void)

Should be just static int ... the compiler can decide.

Quoted 8 lines
Quoted 3 lines

No, it should be inline like all of the others in the file are. And then yes, if someone wants to do a size comparison with or without inlining on all of those functions, sure.

Can you explain why it should be static inline ?
Last time this discussion came up in Linux kernel ML (decisions from which we seem to apply, cfr the SPDX C++ comments and DTC), static inline was frowned upon with the argument that the compiler can decide.

Ah, alright. So yeah, as people want to convert areas, that's fine. But no, just like how we also stay consistent within a file on other things, or fix those inconsistencies then add more stuff, no, we shouldn't have this be inconsistent. Fixing it in either order is fine with me. Thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180719/c67d550a/attachment.sig>
#8 lore raw

PATCH v2 1/1 Add Beaglebone Enhanced support

In reply to Koen Kooi
Quoted 10 lines · Koen Kooi

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black, but with the following differences:

* Gigabit capable PHY
* Extra USB hub, optional i2c control
* lps3331ap barometer connected over i2c
* MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
* 1GiB DDR3 RAM
* RTL8723 Wifi/Bluetooth connected over USB

Quoted 2 lines

Applied to u-boot/master, thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180804/05302d46/attachment.sig>