From f8798aa561718daf555c4ca0aca6928ba6b2b933 Mon Sep 17 00:00:00 2001 From: Gabriel Ozouf Date: Thu, 15 Apr 2021 15:37:11 +0200 Subject: [PATCH] [ion] Move pcbVersion method to its own file --- ion/src/device/shared/drivers/Makefile | 1 + ion/src/device/shared/drivers/pcb_version.cpp | 25 +++++++++++++++++++ .../device/shared/drivers/serial_number.cpp | 19 -------------- ion/src/shared/dummy/pcb_version.cpp | 5 ++++ ion/src/shared/dummy/serial_number.cpp | 4 --- ion/src/simulator/Makefile | 1 + 6 files changed, 32 insertions(+), 23 deletions(-) create mode 100644 ion/src/device/shared/drivers/pcb_version.cpp create mode 100644 ion/src/shared/dummy/pcb_version.cpp diff --git a/ion/src/device/shared/drivers/Makefile b/ion/src/device/shared/drivers/Makefile index 09b03ec12..ee220b522 100644 --- a/ion/src/device/shared/drivers/Makefile +++ b/ion/src/device/shared/drivers/Makefile @@ -16,6 +16,7 @@ ion_device_src += $(addprefix ion/src/device/shared/drivers/, \ internal_flash.cpp \ keyboard.cpp \ led.cpp \ + pcb_version.cpp \ power.cpp\ random.cpp\ reset.cpp \ diff --git a/ion/src/device/shared/drivers/pcb_version.cpp b/ion/src/device/shared/drivers/pcb_version.cpp new file mode 100644 index 000000000..8f0626609 --- /dev/null +++ b/ion/src/device/shared/drivers/pcb_version.cpp @@ -0,0 +1,25 @@ +#include +#include "board.h" + +namespace Ion { + +const char * pcbVersion() { + constexpr int pcbVersionLength = 5; // xx.yy + static char pcbVer[pcbVersionLength] = {'\0'}; + if (pcbVer[0] == '\0') { + Device::Board::PCBVersion ver = Device::Board::pcbVersion(); + /* As PCB version only uses 4 chars, value should be at most 9999. */ + assert(ver < 10000); + for (int i = pcbVersionLength - 1; i >= 0; i--) { + if (i == 2) { + pcbVer[i] = '.'; + } else { + pcbVer[i] = '0' + ver % 10; + ver /= 10; + } + } + } + return pcbVer; +} + +} diff --git a/ion/src/device/shared/drivers/serial_number.cpp b/ion/src/device/shared/drivers/serial_number.cpp index 2f807c103..4330a97c2 100644 --- a/ion/src/device/shared/drivers/serial_number.cpp +++ b/ion/src/device/shared/drivers/serial_number.cpp @@ -15,25 +15,6 @@ const char * serialNumber() { return serialNumber; } -const char * pcbVersion() { - constexpr int pcbVersionLength = 5; // xx.yy - static char pcbVer[pcbVersionLength] = {'\0'}; - if (pcbVer[0] == '\0') { - Device::Board::PCBVersion ver = Device::Board::pcbVersion(); - /* As PCB version only uses 4 chars, value should be at most 9999. */ - assert(ver < 10000); - for (int i = pcbVersionLength - 1; i >= 0; i--) { - if (i == 2) { - pcbVer[i] = '.'; - } else { - pcbVer[i] = '0' + ver % 10; - ver /= 10; - } - } - } - return pcbVer; -} - } namespace Ion { diff --git a/ion/src/shared/dummy/pcb_version.cpp b/ion/src/shared/dummy/pcb_version.cpp new file mode 100644 index 000000000..c96193940 --- /dev/null +++ b/ion/src/shared/dummy/pcb_version.cpp @@ -0,0 +1,5 @@ +#include + +const char * Ion::pcbVersion() { + return "00.00"; +} diff --git a/ion/src/shared/dummy/serial_number.cpp b/ion/src/shared/dummy/serial_number.cpp index 8f82f3175..fd0c5deac 100644 --- a/ion/src/shared/dummy/serial_number.cpp +++ b/ion/src/shared/dummy/serial_number.cpp @@ -3,7 +3,3 @@ const char * Ion::serialNumber() { return "000000000000"; } - -const char * Ion::pcbVersion() { - return "0.0"; -} diff --git a/ion/src/simulator/Makefile b/ion/src/simulator/Makefile index 61c90073b..728d6767a 100644 --- a/ion/src/simulator/Makefile +++ b/ion/src/simulator/Makefile @@ -6,6 +6,7 @@ ion_src += $(addprefix ion/src/shared/dummy/, \ exam_mode.cpp \ fcc_id.cpp \ led.cpp \ + pcb_version.cpp \ power.cpp \ serial_number.cpp \ stack.cpp \