diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c013be08..a23e5047 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -48,13 +48,6 @@ jobs: - name: Pre-commit hooks run: | pre-commit run --all-files - - name: Build assets - run: circuitpython-build-bundles --filename_prefix ${{ steps.repo-name.outputs.repo-name }} --library_location . - - name: Archive bundles - uses: actions/upload-artifact@v2 - with: - name: bundles - path: ${{ github.workspace }}/bundles/ - name: Build docs working-directory: docs run: sphinx-build -E -W -b html . _build/html diff --git a/adafruit_platformdetect/board.py b/adafruit_platformdetect/board.py index 45ae8203..9056901b 100644 --- a/adafruit_platformdetect/board.py +++ b/adafruit_platformdetect/board.py @@ -203,6 +203,8 @@ def id(self) -> Optional[str]: board_id = self._armbian_id() elif chip_id == chips.S905X: board_id = boards.AML_S905X_CC + elif chip_id == chips.CV1800B: + board_id = boards.MILKV_DUO self._board_id = board_id return board_id @@ -418,6 +420,8 @@ def _armbian_id(self) -> Optional[str]: board = boards.PCDUINO3 elif board_value == "rock-3a": board = boards.ROCK_PI_3A + elif board_value == "milkv_duo": + board = boards.MILKV_DUO return board # pylint: enable=too-many-return-statements @@ -864,6 +868,11 @@ def any_pine64_board(self) -> bool: """Check whether the current board is any Pine64 device.""" return self.id in boards._PINE64_DEV_IDS + @property + def any_milkv_board(self) -> bool: + """Check whether the current board is any MilkV device.""" + return self.id in boards._MILKV_IDS_ + @property def any_rock_pi_board(self) -> bool: """Check whether the current board is any Rock Pi device.""" @@ -1002,6 +1011,7 @@ def lazily_generate_conditions(): yield self.any_nxp_navq_board yield self.any_walnutpi yield self.any_olimex_lime2_board + yield self.any_milkv_board return any(condition for condition in lazily_generate_conditions()) diff --git a/adafruit_platformdetect/chip.py b/adafruit_platformdetect/chip.py index 0dd33b1e..deae5cd2 100644 --- a/adafruit_platformdetect/chip.py +++ b/adafruit_platformdetect/chip.py @@ -355,6 +355,8 @@ def _linux_id(self) -> Optional[str]: linux_id = chips.H5 if compatible and "odroid-xu4" in compatible: linux_id = chips.EXYNOS5422 + if compatible and "cvitek,cv180x" in compatible: + linux_id = chips.CV1800B cpu_model = self.detector.get_cpuinfo_field("cpu model") if cpu_model is not None: diff --git a/adafruit_platformdetect/constants/boards.py b/adafruit_platformdetect/constants/boards.py index 01b1b932..c3e5e3ae 100644 --- a/adafruit_platformdetect/constants/boards.py +++ b/adafruit_platformdetect/constants/boards.py @@ -214,6 +214,9 @@ MAAXBOARD = "MAAXBOARD" MAAXBOARD_MINI = "MAAXBOARD_MINI" +# Shenzhen MilkV Technology boards ids +MILKV_DUO = "MILKV_DUO" + # Khadas VIM3 KHADAS_VIM3 = "KHADAS_VIM3" @@ -559,3 +562,5 @@ NXP_IMX8MPLUS_SOM = "NXP_IMX8MPLUS_SOM" _NXP_SOM_IDS = (NXP_IMX8MPLUS_SOM,) + +_MILKV_IDS_ = (MILKV_DUO,) diff --git a/adafruit_platformdetect/constants/chips.py b/adafruit_platformdetect/constants/chips.py index a6f5c6f7..990bf6ac 100644 --- a/adafruit_platformdetect/constants/chips.py +++ b/adafruit_platformdetect/constants/chips.py @@ -75,3 +75,5 @@ ATOM_J4105 = "ATOM_J4105" BCM_RANGE = {"BCM2708", "BCM2709", "BCM2711", "BCM2712", "BCM2835", "BCM2837"} + +CV1800B = "CV1800B" diff --git a/bin/detect.py b/bin/detect.py index bb8732a3..4fa4faa7 100755 --- a/bin/detect.py +++ b/bin/detect.py @@ -68,6 +68,7 @@ print("Is this a UDOO board?", detector.board.any_udoo_board) print("Is this an ASUS Tinker board?", detector.board.any_asus_tinker_board) print("Is this an STM32MP1 board?", detector.board.any_stm32mp1) +print("Is this a MilkV board?", detector.board.any_milkv_board) print("Is this a generic Linux PC?", detector.board.generic_linux) print( "Is this an OS environment variable special case?", detector.board.os_environ_board