From 86134fead11950323e3a379ccbe9df4129186bc6 Mon Sep 17 00:00:00 2001 From: Nav Date: Fri, 9 Jul 2021 23:40:33 +0100 Subject: [PATCH] Added pin count validation for QFP, QFN, DIP, SOIC and SSOP target packages, in the TDF validation script. --- .../TargetDescriptionFiles/TargetDescriptionFile.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/build/scripts/TargetDescriptionFiles/TargetDescriptionFile.php b/build/scripts/TargetDescriptionFiles/TargetDescriptionFile.php index 4c952e46..e8de55db 100644 --- a/build/scripts/TargetDescriptionFiles/TargetDescriptionFile.php +++ b/build/scripts/TargetDescriptionFiles/TargetDescriptionFile.php @@ -426,6 +426,16 @@ class TargetDescriptionFile } } } + + if (in_array($pinout->type, [Pinout::TYPE_SOIC, Pinout::TYPE_DIP, Pinout::TYPE_SSOP]) + && count($pinout->pins) % 2 != 0 + ) { + $failures[] = 'DIP/SOIC/SSOP pinout (' . $pinout->name . ') pin count is not a multiple of two.'; + } + + if (in_array($pinout->type, [Pinout::TYPE_QFN, Pinout::TYPE_QFP]) && count($pinout->pins) % 4 != 0) { + $failures[] = 'QFP/QFN pinout (' . $pinout->name . ') pin count is not a multiple of four.'; + } } return $failures;