@@ -142,9 +142,15 @@ def id(self) -> Optional[str]:
142
142
elif chip_id == chips .A64 :
143
143
board_id = self ._pine64_id ()
144
144
elif chip_id == chips .H6 :
145
- board_id = self ._pine64_id () or self ._armbian_id ()
145
+ board_id = (
146
+ self ._pine64_id () or self ._armbian_id () or self ._repka_variants_id ()
147
+ )
146
148
elif chip_id == chips .H5 :
147
- board_id = self ._armbian_id () or self ._allwinner_variants_id ()
149
+ board_id = (
150
+ self ._armbian_id ()
151
+ or self ._allwinner_variants_id ()
152
+ or self ._repka_variants_id ()
153
+ )
148
154
elif chip_id == chips .H616 :
149
155
board_id = self ._armbian_id () or self ._allwinner_variants_id ()
150
156
elif chip_id == chips .A33 :
@@ -418,6 +424,10 @@ def _armbian_id(self) -> Optional[str]:
418
424
board = boards .PCDUINO3
419
425
elif board_value == "rock-3a" :
420
426
board = boards .ROCK_PI_3A
427
+ elif board_value == "repka-pi3-h5" :
428
+ board = boards .REPKA_PI_3_H5
429
+ elif board_value == "repka-pi4-h6" :
430
+ board = boards .REPKA_PI_4_H6
421
431
return board
422
432
423
433
# pylint: enable=too-many-return-statements
@@ -709,6 +719,19 @@ def _allwinner_variants_id(self) -> Optional[str]:
709
719
board = boards .OLIMEX_LIME2
710
720
return board
711
721
722
+ def _repka_variants_id (self ) -> Optional [str ]:
723
+ board_value = self .detector .get_device_model ()
724
+ board = None
725
+ if not board_value :
726
+ return board
727
+ board_value = board_value .lower ()
728
+ if "repka-pi3-h5" in board_value :
729
+ board = boards .REPKA_PI_3_H5
730
+ if "repka-pi4-h6" in board_value :
731
+ board = boards .REPKA_PI_4_H6
732
+
733
+ return board
734
+
712
735
# pylint: disable=too-many-return-statements
713
736
714
737
def _rp2040_u2if_id (self ) -> Optional [str ]:
@@ -939,6 +962,11 @@ def any_olimex_lime2_board(self):
939
962
"""Check whether the current board is any Pine64 device."""
940
963
return self .id in boards .OLIMEX_LIME2
941
964
965
+ @property
966
+ def any_repka_board (self ):
967
+ """Check whether the current board is any Repka device."""
968
+ return self .id in boards ._REPKA_PI_IDS
969
+
942
970
@property
943
971
def os_environ_board (self ) -> bool :
944
972
"""Check whether the current board is an OS environment variable special case."""
@@ -1002,6 +1030,7 @@ def lazily_generate_conditions():
1002
1030
yield self .any_nxp_navq_board
1003
1031
yield self .any_walnutpi
1004
1032
yield self .any_olimex_lime2_board
1033
+ yield self .any_repka_board
1005
1034
1006
1035
return any (condition for condition in lazily_generate_conditions ())
1007
1036
0 commit comments