diff --git a/internal/vendors/supermicro/sum.go b/internal/vendors/supermicro/sum.go index 37f579a..9a49062 100644 --- a/internal/vendors/supermicro/sum.go +++ b/internal/vendors/supermicro/sum.go @@ -11,9 +11,10 @@ import ( "strings" "syscall" + "golang.org/x/net/html/charset" + "github.com/metal-stack/go-hal/internal/kernel" "github.com/metal-stack/go-hal/pkg/logger" - "golang.org/x/net/html/charset" ) type boardModel int @@ -33,6 +34,8 @@ const ( X13DDW_A // Newer Microclouds X13SCD_F + // Newer Microclouds + H13SRD_F ) var ( @@ -51,6 +54,8 @@ var ( "X13DDW-A": X13DDW_A, // Newer Microclouds "X13SCD-F": X13SCD_F, + // Newer Microclouds + "H13SRD-F": H13SRD_F, } // SUM does not complain or fail if more boot options are given than actually available @@ -268,7 +273,7 @@ func (s *sum) ConfigureBIOS() (bool, error) { s.log.Infow("firmware", "is", firmware, "board", s.boardModel, "boardname", s.boardName) // We must not configure the Bios if UEFI is already activated and the board is one of the following. - if firmware == kernel.EFI && (s.boardModel == X11SDV_8C_TP8F || s.boardModel == X11SDD_8C_F || s.boardModel == X12DPT_B6 || s.boardModel == X13DDW_A || s.boardModel == X13SCD_F) { + if firmware == kernel.EFI && (s.boardModel == X11SDV_8C_TP8F || s.boardModel == X11SDD_8C_F || s.boardModel == X12DPT_B6 || s.boardModel == X13DDW_A || s.boardModel == X13SCD_F || s.boardModel == H13SRD_F) { return false, nil } @@ -296,7 +301,7 @@ func (s *sum) ConfigureBIOS() (bool, error) { // EnsureBootOrder ensures BIOS boot order so that boot from the given allocated OS image is attempted before PXE boot. func (s *sum) EnsureBootOrder(bootloaderID string) error { s.bootloaderID = bootloaderID - if s.boardModel == X13DDW_A || s.boardModel == X12DPT_B6 || s.boardModel == X13SCD_F { + if s.boardModel == X13DDW_A || s.boardModel == X12DPT_B6 || s.boardModel == X13SCD_F || s.boardModel == H13SRD_F { s.log.Infow("GPU board detected, skip bios modification", "board", s.boardName) return nil } @@ -435,7 +440,7 @@ func (s *sum) checkBootOptionAt(index int, bootOption string) bool { if setting.Name != fmt.Sprintf("UEFI Boot Option #%d", index) { continue } - case X13DDW_A, X12DPT_B6, X13SCD_F: + case X13DDW_A, X12DPT_B6, X13SCD_F, H13SRD_F: // FIXME }