Skip to content

Commit 9ff0213

Browse files
authored
Merge pull request #74 from makermelissa/master
Added Rock Pi S
2 parents 47c90a1 + d09c0c6 commit 9ff0213

File tree

6 files changed

+27
-1
lines changed

6 files changed

+27
-1
lines changed

.pylintrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ confidence=
5252
# no Warning level messages displayed, use"--disable=all --enable=classes
5353
# --disable=W"
5454
# disable=import-error,print-statement,parameter-unpacking,unpacking-in-except,old-raise-syntax,backtick,long-suffix,old-ne-operator,old-octal-literal,import-star-module-level,raw-checker-failed,bad-inline-option,locally-disabled,locally-enabled,file-ignored,suppressed-message,useless-suppression,deprecated-pragma,apply-builtin,basestring-builtin,buffer-builtin,cmp-builtin,coerce-builtin,execfile-builtin,file-builtin,long-builtin,raw_input-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,no-absolute-import,old-division,dict-iter-method,dict-view-method,next-method-called,metaclass-assignment,indexing-exception,raising-string,reload-builtin,oct-method,hex-method,nonzero-method,cmp-method,input-builtin,round-builtin,intern-builtin,unichr-builtin,map-builtin-not-iterating,zip-builtin-not-iterating,range-builtin-not-iterating,filter-builtin-not-iterating,using-cmp-argument,eq-without-hash,div-method,idiv-method,rdiv-method,exception-message-attribute,invalid-str-codec,sys-max-int,bad-python3-import,deprecated-string-function,deprecated-str-translate-call
55-
disable=print-statement,parameter-unpacking,unpacking-in-except,old-raise-syntax,backtick,long-suffix,old-ne-operator,old-octal-literal,import-star-module-level,raw-checker-failed,bad-inline-option,locally-disabled,locally-enabled,file-ignored,suppressed-message,useless-suppression,deprecated-pragma,apply-builtin,basestring-builtin,buffer-builtin,cmp-builtin,coerce-builtin,execfile-builtin,file-builtin,long-builtin,raw_input-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,no-absolute-import,old-division,dict-iter-method,dict-view-method,next-method-called,metaclass-assignment,indexing-exception,raising-string,reload-builtin,oct-method,hex-method,nonzero-method,cmp-method,input-builtin,round-builtin,intern-builtin,unichr-builtin,map-builtin-not-iterating,zip-builtin-not-iterating,range-builtin-not-iterating,filter-builtin-not-iterating,using-cmp-argument,eq-without-hash,div-method,idiv-method,rdiv-method,exception-message-attribute,invalid-str-codec,sys-max-int,bad-python3-import,deprecated-string-function,deprecated-str-translate-call,import-error,attribute-defined-outside-init,bad-continuation,invalid-name,import-error,import-outside-toplevel,too-many-branches,too-many-statements
55+
disable=print-statement,parameter-unpacking,unpacking-in-except,old-raise-syntax,backtick,long-suffix,old-ne-operator,old-octal-literal,import-star-module-level,raw-checker-failed,bad-inline-option,locally-disabled,locally-enabled,file-ignored,suppressed-message,useless-suppression,deprecated-pragma,apply-builtin,basestring-builtin,buffer-builtin,cmp-builtin,coerce-builtin,execfile-builtin,file-builtin,long-builtin,raw_input-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,no-absolute-import,old-division,dict-iter-method,dict-view-method,next-method-called,metaclass-assignment,indexing-exception,raising-string,reload-builtin,oct-method,hex-method,nonzero-method,cmp-method,input-builtin,round-builtin,intern-builtin,unichr-builtin,map-builtin-not-iterating,zip-builtin-not-iterating,range-builtin-not-iterating,filter-builtin-not-iterating,using-cmp-argument,eq-without-hash,div-method,idiv-method,rdiv-method,exception-message-attribute,invalid-str-codec,sys-max-int,bad-python3-import,deprecated-string-function,deprecated-str-translate-call,import-error,attribute-defined-outside-init,bad-continuation,invalid-name,import-error,import-outside-toplevel,too-many-branches,too-many-statements,too-many-public-methods
5656

5757
# Enable the message, report, category or checker with the given id(s). You can
5858
# either give multiple identifier separated by comma (,) or put this option

adafruit_platformdetect/board.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,8 @@ def id(self):
113113
board_id = self._pine64_id()
114114
elif chip_id == chips.A33:
115115
board_id = self._clockwork_pi_id()
116+
elif chip_id == chips.RK3308:
117+
board_id = self._rock_pi_id()
116118
return board_id
117119

118120
# pylint: enable=invalid-name
@@ -289,6 +291,14 @@ def _pynq_id(self):
289291
except FileNotFoundError:
290292
return None
291293

294+
def _rock_pi_id(self):
295+
"""Check what type of Rock Pi board."""
296+
board_value = self.detector.get_device_model()
297+
board = None
298+
if board_value and "ROCK Pi S" in board_value:
299+
board = boards.ROCK_PI_S
300+
return board
301+
292302
def _clockwork_pi_id(self):
293303
"""Check what type of Clockwork Pi board."""
294304
board_value = self.detector.get_device_model()
@@ -367,6 +377,11 @@ def any_pine64_board(self):
367377
"""Check whether the current board is any Pine64 device."""
368378
return self.id in boards._PINE64_DEV_IDS
369379

380+
@property
381+
def any_rock_pi_board(self):
382+
"""Check whether the current board is any Clockwork Pi device."""
383+
return self.ROCK_PI_S
384+
370385
@property
371386
def any_clockwork_pi_board(self):
372387
"""Check whether the current board is any Clockwork Pi device."""
@@ -389,6 +404,7 @@ def any_embedded_linux(self):
389404
self.any_onion_omega_board,
390405
self.any_pine64_board,
391406
self.any_pynq_board,
407+
self.any_rock_pi_board,
392408
self.any_clockwork_pi_board,
393409
]
394410
)

adafruit_platformdetect/chip.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,9 @@ def _linux_id(self):
118118
if self.detector.check_dt_compatible_value("sun8i-a33"):
119119
return chips.A33
120120

121+
if self.detector.check_dt_compatible_value("rockchip,rk3308"):
122+
return chips.RK3308
123+
121124
linux_id = None
122125
hardware = self.detector.get_cpuinfo_field("Hardware")
123126

adafruit_platformdetect/constants/boards.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@
8989
PINEBOOK = "PINEBOOK"
9090
PINEPHONE = "PINEPHONE"
9191

92+
ROCK_PI_S = "ROCK_PI_S"
93+
9294
# pylint: enable=bad-whitespace
9395

9496
# OrangePI

adafruit_platformdetect/constants/chips.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
ZYNQ7000 = "ZYNQ7000"
2626
A64 = "A64"
2727
A33 = "A33"
28+
RK3308 = "RK3308"
2829

2930
BCM_RANGE = {"BCM2708", "BCM2709", "BCM2711", "BCM2835", "BCM2837"}

bin/detect.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
print("Is this a Coral Edge TPU?", detector.board.CORAL_EDGE_TPU_DEV)
2020
print("Is this a SiFive Unleashed? ", detector.board.SIFIVE_UNLEASHED)
2121
print("Is this a PYNQ Board?", detector.board.PYNQ_Z1 | detector.board.PYNQ_Z2)
22+
print("Is this a Rock Pi board?", detector.board.any_rock_pi_board)
2223
print("Is this a Clockwork Pi board?", detector.board.any_clockwork_pi_board)
2324
print("Is this an embedded Linux system?", detector.board.any_embedded_linux)
2425
print("Is this a generic Linux PC?", detector.board.GENERIC_LINUX_PC)
@@ -48,5 +49,8 @@
4849
if detector.board.any_pine64_board:
4950
print("Pine64 device detected.")
5051

52+
if detector.board.any_rock_pi_board:
53+
print("Rock Pi device detected.")
54+
5155
if detector.board.any_clockwork_pi:
5256
print("Clockwork Pi device detected.")

0 commit comments

Comments
 (0)