From f925326357adc920b370c0d47c76272bcdb8cec9 Mon Sep 17 00:00:00 2001 From: Evgeny Zinoviev Date: Tue, 9 Feb 2021 19:43:30 +0300 Subject: initial --- get_mbp101_ramcfg | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100755 get_mbp101_ramcfg diff --git a/get_mbp101_ramcfg b/get_mbp101_ramcfg new file mode 100755 index 0000000..0eef4e5 --- /dev/null +++ b/get_mbp101_ramcfg @@ -0,0 +1,50 @@ +#!/usr/bin/env python3 +import sys + + +ramconfigs = ( + '4g_hynix_1600s', + '1g_samsung_1600', + '4g_samsung_1600s', + '1g_hynix_1600', + '4g_elpida_1600s', + '2g_samsung_1600', + '2g_samsung_1333', + '2g_hynix_1600', + '4g_samsung_1600', + '4g_hynix_1600', + '2g_elpida_1600s', + '2g_elpida_1600', + '4g_elpida_1600', + '2g_samsung_1600s', + '2g_hynix_1600s' +) + + +def main(): + reg = None + for line in sys.stdin: + line = line.strip() + if not line.endswith('(GPIO_LVL3)'): + continue + + reg = int(line.split(' ')[1], 16) + break + + if reg is None: + raise Exceptions("failed to parse gpio registers") + + # GPIO68..GPIO71 + ramcfg = (reg >> 4) & 0xf + + # reverse bit order + ramcfg = int('{:04b}'.format(ramcfg)[::-1], 2) + + if ramcfg > len(ramconfigs): + print("unsupported memory configuration %d" % ramcfg) + else: + print(ramconfigs[ramcfg]) + + +if __name__ == '__main__': + main() -- cgit v1.2.3