I am not exactly sure if this is the way to send the patch for u-boot. But I am trying to update a patch for https://github.com/openbmc/u-boot/tree/v2016.07-aspeed-openbmc. It just gives the options to have the u-boot enable the SGPIO registers for SCU. Please take a look. Best, Willy Tu On Wed, Mar 31, 2021 at 2:31 PM Willy Tu wrote: > From a2d7336bb59df8f2ef622d4369fc035b2aafd74c Mon Sep 17 00:00:00 2001 > From: Willy Tu > Date: Mon, 22 Mar 2021 17:01:56 -0700 > Subject: [PATCH] board: aspeed: Enable SGPIO in SCU > > Add option to enable register for SGPIO in SCU > > Signed-off-by: Willy Tu > --- > board/aspeed/ast-g4/Kconfig | 4 ++++ > board/aspeed/ast-g4/ast-g4.c | 13 +++++++++++++ > 2 files changed, 17 insertions(+) > > diff --git a/board/aspeed/ast-g4/Kconfig b/board/aspeed/ast-g4/Kconfig > index 2bec9a733a..e78030ae34 100644 > --- a/board/aspeed/ast-g4/Kconfig > +++ b/board/aspeed/ast-g4/Kconfig > @@ -19,4 +19,8 @@ config SYS_CONFIG_NAME > default "ast-g4-phy" if ASPEED_NET_PHY > default "ast-g4-ncsi" if ASPEED_NET_NCSI > > +config ENABLE_SGPIO > + tristate "Enable SGPIO in SCU" > + default n > + > endif > diff --git a/board/aspeed/ast-g4/ast-g4.c b/board/aspeed/ast-g4/ast-g4.c > index 656495307b..e2463d4524 100644 > --- a/board/aspeed/ast-g4/ast-g4.c > +++ b/board/aspeed/ast-g4/ast-g4.c > @@ -22,6 +22,19 @@ int board_init(void) > /* address of boot parameters */ > gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100; > gd->flags = 0; > + > +#ifdef CONFIG_ENABLE_SGPIO > + /* Unlock SCU */ > + writel(SCU_PROTECT_UNLOCK, AST_SCU_BASE); > + > + /* Enable SGPIO Master */ > + u32 reg = readl(AST_SCU_BASE + AST_SCU_FUN_PIN_CTRL2); > + reg |= (SCU_FUN_PIN_SGPMI | > + SCU_FUN_PIN_SGPMO | > + SCU_FUN_PIN_SGPMLD | > + SCU_FUN_PIN_SGPMCK); > + writel(reg, AST_SCU_BASE + AST_SCU_FUN_PIN_CTRL2); > +#endif > return 0; > } > > -- > 2.31.0.208.g409f899ff0-goog > >