Merge pull request #368 from Dangku/main

This commit is contained in:
Melissa LeBlanc-Williams 2024-09-04 11:30:46 -07:00 committed by GitHub
commit a6897f7cc6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 52 additions and 2 deletions

View file

@ -156,10 +156,14 @@ class Board:
or self._allwinner_variants_id()
or self._repka_variants_id()
)
elif chip_id == chips.H618:
board_id = self._armbian_id() or self._allwinner_variants_id()
elif chip_id == chips.H616:
board_id = self._armbian_id() or self._allwinner_variants_id()
elif chip_id == chips.A33:
board_id = self._clockwork_pi_id()
elif chip_id == chips.K1:
board_id = self._armbian_id() or self._spacemit_variants_id()
elif chip_id == chips.RK3308:
board_id = self._rock_pi_id()
elif chip_id == chips.RK3399:
@ -431,8 +435,14 @@ class Board:
board = boards.BANANA_PI_M2_PLUS
elif board_value == "bananapim2berry":
board = boards.BANANA_PI_M2_BERRY
elif board_value == "bananapim4berry":
board = boards.BANANA_PI_M4_BERRY
elif board_value == "bananapim4zero":
board = boards.BANANA_PI_M4_ZERO
elif board_value == "bananapim5":
board = boards.BANANA_PI_M5
elif board_value == "bananapif3":
board = boards.BANANA_PI_F3
elif board_value == "orangepizeroplus2-h5":
board = boards.ORANGE_PI_ZERO_PLUS_2H5
elif board_value == "orangepizeroplus":
@ -755,8 +765,13 @@ class Board:
if "banana pro" in board_value:
board = boards.LEMAKER_BANANA_PRO
if "banana pi m2 berry" in board_value:
board = boards.BANANA_PI_M2_BERRY
if any(x in board_value for x in ("banana pi", "bananapi")):
if "m2 berry" in board_value:
board = boards.BANANA_PI_M2_BERRY
elif "m4berry" in board_value or "m4 berry" in board_value:
board = boards.BANANA_PI_M4_BERRY
elif "m4zero" in board_value or "m4 zero" in board_value:
board = boards.BANANA_PI_M4_ZERO
if "nanopi" in board_value:
if "neo" in board_value and "SUN8I" in chip_id:
@ -779,6 +794,24 @@ class Board:
board = boards.OLIMEX_LIME2
return board
def _spacemit_variants_id(self) -> Optional[str]:
"""Try to detect the id of spacemit based board. (bananapi)"""
board_value = self.detector.get_device_model()
board = None
if not board_value:
return board
board_value = board_value.lower()
if any(x in board_value for x in ("banana pi", "bananapi")):
if "bpi-f3" in board_value:
board = boards.BANANA_PI_F3
if "spacemit" in board_value:
if "deb1" in board_value:
board = boards.BANANA_PI_F3
return board
def _repka_variants_id(self) -> Optional[str]:
board_value = self.detector.get_device_model()
board = None

View file

@ -285,6 +285,9 @@ class Chip:
if self.detector.check_dt_compatible_value("sun50i-h5"):
return chips.H5
if self.detector.check_dt_compatible_value("sun50i-h618"):
return chips.H618
if self.detector.check_dt_compatible_value("sun50i-h616"):
return chips.H616
@ -294,6 +297,9 @@ class Chip:
if self.detector.check_dt_compatible_value("sun50i-h6"):
return chips.H6
if self.detector.check_dt_compatible_value("spacemit,k1-x"):
return chips.K1
if self.detector.check_dt_compatible_value("mediatek,mt8167"):
return chips.MT8167

View file

@ -78,7 +78,10 @@ NANOPI_NEO_2 = "NANOPI_NEO_2"
BANANA_PI_M2_ZERO = "BANANA_PI_M2_ZERO"
BANANA_PI_M2_PLUS = "BANANA_PI_M2_PLUS"
BANANA_PI_M2_BERRY = "BANANA_PI_M2_BERRY"
BANANA_PI_M4_BERRY = "BANANA_PI_M4_BERRY"
BANANA_PI_M4_ZERO = "BANANA_PI_M4_ZERO"
BANANA_PI_M5 = "BANANA_PI_M5"
BANANA_PI_F3 = "BANANA_PI_F3"
# LeMaker boards
LEMAKER_BANANA_PRO = "LEMAKER_BANANA_PRO"
@ -305,7 +308,10 @@ _BANANA_PI_IDS = (
BANANA_PI_M2_ZERO,
BANANA_PI_M2_PLUS,
BANANA_PI_M2_BERRY,
BANANA_PI_M4_BERRY,
BANANA_PI_M4_ZERO,
BANANA_PI_M5,
BANANA_PI_F3,
)
# LeMaker

View file

@ -55,6 +55,7 @@ A33 = "A33"
H5 = "H5"
H3 = "H3"
H616 = "H616"
H618 = "H618"
RK3308 = "RK3308"
RK3399 = "RK3399"
RK3399_T = "RK3399_T"
@ -79,6 +80,7 @@ RP2040_U2IF = "RP2040_U2IF"
D1_RISCV = "D1_RISCV"
ATOM_J4105 = "ATOM_J4105"
TH1520 = "TH1520"
K1 = "K1"
BCM_RANGE = {"BCM2708", "BCM2709", "BCM2711", "BCM2712", "BCM2835", "BCM2837"}

View file

@ -75,6 +75,9 @@ print(
"Is this an OS environment variable special case?", detector.board.os_environ_board
)
if detector.board.any_bananapi:
print("Bananapi board detected.")
if detector.board.any_jetson_board:
print("Jetson platform detected.")