Skip to content

Commit

Permalink
[ion] Move pcbVersion method to its own file
Browse files Browse the repository at this point in the history
  • Loading branch information
GabrielNumworks committed Apr 16, 2021
1 parent 46acd4e commit f8798aa
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 23 deletions.
1 change: 1 addition & 0 deletions ion/src/device/shared/drivers/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
Expand Down
25 changes: 25 additions & 0 deletions ion/src/device/shared/drivers/pcb_version.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#include <ion.h>
#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;
}

}
19 changes: 0 additions & 19 deletions ion/src/device/shared/drivers/serial_number.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
Expand Down
5 changes: 5 additions & 0 deletions ion/src/shared/dummy/pcb_version.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#include <ion.h>

const char * Ion::pcbVersion() {
return "00.00";
}
4 changes: 0 additions & 4 deletions ion/src/shared/dummy/serial_number.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,3 @@
const char * Ion::serialNumber() {
return "000000000000";
}

const char * Ion::pcbVersion() {
return "0.0";
}
1 change: 1 addition & 0 deletions ion/src/simulator/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
Expand Down

0 comments on commit f8798aa

Please sign in to comment.