@@ -162,6 +162,8 @@ def id(self) -> Optional[str]:
162
162
board_id = self ._armbian_id () or self ._allwinner_variants_id ()
163
163
elif chip_id == chips .A33 :
164
164
board_id = self ._clockwork_pi_id ()
165
+ elif chip_id == chips .K1 :
166
+ board_id = self ._armbian_id () or self ._spacemit_variants_id ()
165
167
elif chip_id == chips .RK3308 :
166
168
board_id = self ._rock_pi_id ()
167
169
elif chip_id == chips .RK3399 :
@@ -439,6 +441,8 @@ def _armbian_id(self) -> Optional[str]:
439
441
board = boards .BANANA_PI_M4_ZERO
440
442
elif board_value == "bananapim5" :
441
443
board = boards .BANANA_PI_M5
444
+ elif board_value == "bananapif3" :
445
+ board = boards .BANANA_PI_F3
442
446
elif board_value == "orangepizeroplus2-h5" :
443
447
board = boards .ORANGE_PI_ZERO_PLUS_2H5
444
448
elif board_value == "orangepizeroplus" :
@@ -790,6 +794,25 @@ def _allwinner_variants_id(self) -> Optional[str]:
790
794
board = boards .OLIMEX_LIME2
791
795
return board
792
796
797
+ def _spacemit_variants_id (self ) -> Optional [str ]:
798
+ """Try to detect the id of spacemit based board. (bananapi)"""
799
+ board_value = self .detector .get_device_model ()
800
+ board = None
801
+ if not board_value :
802
+ return board
803
+ board_value = board_value .lower ()
804
+ chip_id = self .detector .chip .id
805
+
806
+ if any (x in board_value for x in ("banana pi" , "bananapi" )):
807
+ if "bpi-f3" in board_value :
808
+ board = boards .BANANA_PI_F3
809
+
810
+ if "spacemit" in board_value :
811
+ if "deb1" in board_value :
812
+ board = boards .BANANA_PI_F3
813
+
814
+ return board
815
+
793
816
def _repka_variants_id (self ) -> Optional [str ]:
794
817
board_value = self .detector .get_device_model ()
795
818
board = None
0 commit comments