diff --git a/adafruit_platformdetect/board.py b/adafruit_platformdetect/board.py index ba7cc75..8d4cc40 100644 --- a/adafruit_platformdetect/board.py +++ b/adafruit_platformdetect/board.py @@ -180,7 +180,7 @@ def id(self) -> Optional[str]: elif chip_id == chips.RZV2H: board_id = self._armbian_id() or self._renesas_variants_id() elif chip_id == chips.RK3308: - board_id = self._rock_pi_id() + board_id = self._rock_pi_id() or self._banana_pi_id() elif chip_id == chips.RK3399: board_id = ( self._rock_pi_id() @@ -551,6 +551,13 @@ def _orange_pi_id(self) -> Optional[str]: # pylint: enable=too-many-return-statements + def _banana_pi_id(self) -> Optional[str]: + """Check what type of Banana Pi board.""" + board_value = self.detector.get_device_model() + if "bpi-p2pro" in board_value: + return boards.BANANA_PI_P2_PRO + return None + def _sama5_id(self) -> Optional[str]: """Check what type sama5 board.""" board_value = self.detector.get_device_model() diff --git a/adafruit_platformdetect/constants/boards.py b/adafruit_platformdetect/constants/boards.py index 98bdac1..dcaab5d 100644 --- a/adafruit_platformdetect/constants/boards.py +++ b/adafruit_platformdetect/constants/boards.py @@ -89,6 +89,7 @@ BANANA_PI_F5 = "BANANA_PI_F5" BANANA_PI_AI2N = "BANANA_PI_AI2N" BANANA_PI_AI2H = "BANANA_PI_AI2H" +BANANA_PI_P2_PRO = "BANANA_PI_P2_PRO" # LeMaker boards LEMAKER_BANANA_PRO = "LEMAKER_BANANA_PRO" @@ -349,6 +350,7 @@ BANANA_PI_F5, BANANA_PI_AI2N, BANANA_PI_AI2H, + BANANA_PI_P2_PRO, ) # LeMaker