From 24c0552a4372d0a1388363bb0bcdaa23a1d92041 Mon Sep 17 00:00:00 2001 From: tychovrahe Date: Fri, 23 Aug 2024 13:34:25 +0200 Subject: [PATCH] feat(core): switch to new rendering everywhere [no changelog] --- core/Makefile | 1 + core/SConscript.bootloader_ci | 20 +++++++++++++++++++- core/SConscript.firmware | 2 +- core/SConscript.reflash | 20 +++++++++++++++++++- core/SConscript.unix | 2 +- 5 files changed, 41 insertions(+), 4 deletions(-) diff --git a/core/Makefile b/core/Makefile index 25fbddc96..e6647bf5e 100644 --- a/core/Makefile +++ b/core/Makefile @@ -37,6 +37,7 @@ ADDRESS_SANITIZER ?= 0 CMAKELISTS ?= 0 PYTEST_TIMEOUT ?= 500 TEST_LANG ?= "en" +NEW_RENDERING ?= 1 THP ?= 0 # OpenOCD interface default. Alternative: ftdi/olimex-arm-usb-tiny-h diff --git a/core/SConscript.bootloader_ci b/core/SConscript.bootloader_ci index 73e7a688c..a1befca67 100644 --- a/core/SConscript.bootloader_ci +++ b/core/SConscript.bootloader_ci @@ -22,6 +22,9 @@ if TREZOR_MODEL in ('1', 'DISC1', 'DISC2'): FEATURES_WANTED = ["input", "rgb_led", "consumption_mask", "usb", "optiga"] +if NEW_RENDERING: + FEATURES_WANTED.append("new_rendering") + CCFLAGS_MOD = '' CPPPATH_MOD = [] CPPDEFINES_MOD = [] @@ -96,11 +99,14 @@ CPPPATH_MOD += [ SOURCE_MOD += [ 'embed/extmod/modtrezorcrypto/rand.c', 'embed/lib/colors.c', - 'embed/lib/display_draw.c', 'embed/lib/display_utils.c', 'embed/lib/error_handling.c', 'embed/lib/fonts/font_bitmap.c', 'embed/lib/fonts/fonts.c', + 'embed/lib/gfx_color.c', + 'embed/lib/gfx_bitblt_mono8.c', + 'embed/lib/gfx_bitblt_rgb565.c', + 'embed/lib/gfx_bitblt_rgba8888.c', 'embed/lib/image.c', 'embed/lib/mini_printf.c', 'embed/lib/terminal.c', @@ -109,6 +115,18 @@ SOURCE_MOD += [ 'vendor/micropython/lib/uzlib/tinflate.c', ] + +if NEW_RENDERING: + CPPDEFINES_MOD += ['NEW_RENDERING'] + SOURCE_MOD += [ + 'embed/lib/gfx_draw.c', + ] +else: + SOURCE_MOD += [ + 'embed/lib/display_draw.c', + ] + + SOURCE_NANOPB = [ 'vendor/nanopb/pb_common.c', 'vendor/nanopb/pb_decode.c', diff --git a/core/SConscript.firmware b/core/SConscript.firmware index 5e199f261..2431309f0 100644 --- a/core/SConscript.firmware +++ b/core/SConscript.firmware @@ -15,7 +15,7 @@ PYOPT = ARGUMENTS.get('PYOPT', '1') DISABLE_OPTIGA = ARGUMENTS.get('DISABLE_OPTIGA', '0') == '1' HW_REVISION = ARGUMENTS.get('HW_REVISION', None) THP = ARGUMENTS.get('THP', '0') == '1' # Trezor-Host Protocol -NEW_RENDERING = ARGUMENTS.get('NEW_RENDERING', '1') == '1' or TREZOR_MODEL in ('T3T1',) +NEW_RENDERING = ARGUMENTS.get('NEW_RENDERING', '1') == '1' FEATURE_FLAGS = { diff --git a/core/SConscript.reflash b/core/SConscript.reflash index 3f87be288..1567744f8 100644 --- a/core/SConscript.reflash +++ b/core/SConscript.reflash @@ -6,6 +6,7 @@ import tools, models TREZOR_MODEL = ARGUMENTS.get('TREZOR_MODEL', 'T') CMAKELISTS = int(ARGUMENTS.get('CMAKELISTS', 0)) HW_REVISION = ARGUMENTS.get('HW_REVISION', None) +NEW_RENDERING = ARGUMENTS.get('NEW_RENDERING', '1') == '1' if TREZOR_MODEL in ('DISC1', 'DISC2'): # skip reflash build @@ -20,6 +21,9 @@ if TREZOR_MODEL in ('DISC1', 'DISC2'): FEATURES_WANTED = ["input", "sd_card"] +if NEW_RENDERING: + FEATURES_WANTED.append("new_rendering") + CCFLAGS_MOD = '' CPPPATH_MOD = [] CPPDEFINES_MOD = [] @@ -72,11 +76,14 @@ CPPPATH_MOD += [ ] SOURCE_MOD += [ 'embed/lib/colors.c', - 'embed/lib/display_draw.c', 'embed/lib/display_utils.c', 'embed/lib/error_handling.c', 'embed/lib/fonts/font_bitmap.c', 'embed/lib/fonts/fonts.c', + 'embed/lib/gfx_color.c', + 'embed/lib/gfx_bitblt_mono8.c', + 'embed/lib/gfx_bitblt_rgb565.c', + 'embed/lib/gfx_bitblt_rgba8888.c', 'embed/lib/image.c', 'embed/lib/mini_printf.c', 'embed/lib/terminal.c', @@ -86,6 +93,17 @@ SOURCE_MOD += [ 'vendor/trezor-storage/flash_area.c', ] +if NEW_RENDERING: + CPPDEFINES_MOD += ['NEW_RENDERING'] + SOURCE_MOD += [ + 'embed/lib/gfx_draw.c', + ] +else: + SOURCE_MOD += [ + 'embed/lib/display_draw.c', + ] + + # fonts tools.add_font('NORMAL', FONT_NORMAL, CPPDEFINES_MOD, SOURCE_MOD) tools.add_font('BOLD', FONT_BOLD, CPPDEFINES_MOD, SOURCE_MOD) diff --git a/core/SConscript.unix b/core/SConscript.unix index d51ab2836..4539e800d 100644 --- a/core/SConscript.unix +++ b/core/SConscript.unix @@ -10,7 +10,7 @@ TREZOR_MODEL = ARGUMENTS.get('TREZOR_MODEL', 'T') CMAKELISTS = int(ARGUMENTS.get('CMAKELISTS', 0)) HW_REVISION ='emulator' THP = ARGUMENTS.get('THP', '0') == '1' # Trezor-Host Protocol -NEW_RENDERING = ARGUMENTS.get('NEW_RENDERING', '1') == '1' or TREZOR_MODEL in ('T3T1',) +NEW_RENDERING = ARGUMENTS.get('NEW_RENDERING', '1') == '1' FEATURES_WANTED = ["input", "sd_card", "dma2d", "optiga", "sbu"]