From 762bc938e06bb596f80be760d9bd38957e08bbf7 Mon Sep 17 00:00:00 2001 From: tychovrahe Date: Wed, 9 Nov 2022 12:06:17 +0100 Subject: [PATCH] fix --- core/embed/bootloader/memory.ld | 11 ++++++++++- core/embed/rust/src/ui/display/color.rs | 2 -- core/embed/rust/src/ui/display/mod.rs | 7 ++++++- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/core/embed/bootloader/memory.ld b/core/embed/bootloader/memory.ld index cf280882f3..2c9eb74405 100644 --- a/core/embed/bootloader/memory.ld +++ b/core/embed/bootloader/memory.ld @@ -23,7 +23,7 @@ ccmram_end = ORIGIN(CCMRAM) + LENGTH(CCMRAM); sram_start = ORIGIN(SRAM); sram_end = ORIGIN(SRAM) + LENGTH(SRAM); -_codelen = SIZEOF(.flash) + SIZEOF(.data); +_codelen = SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.exidx) + SIZEOF(.align); SECTIONS { .header : ALIGN(4) { @@ -36,6 +36,15 @@ SECTIONS { *(.text*); . = ALIGN(4); *(.rodata*); + . = ALIGN(4); + } >FLASH AT>FLASH + + /* exception handling info generated by llvm which should consist of 8 bytes of "cantunwind" */ + .exidx : ALIGN(4) { + *(.ARM.exidx*); + } >FLASH AT>FLASH + + .align : ALIGN(4) { . = ALIGN(512); } >FLASH AT>FLASH diff --git a/core/embed/rust/src/ui/display/color.rs b/core/embed/rust/src/ui/display/color.rs index 461f3933fd..9e3c0dce30 100644 --- a/core/embed/rust/src/ui/display/color.rs +++ b/core/embed/rust/src/ui/display/color.rs @@ -1,6 +1,5 @@ use crate::ui::lerp::Lerp; - #[macro_export] macro_rules! alpha { ($n: expr) => { @@ -12,7 +11,6 @@ macro_rules! alpha { }; } - #[derive(Copy, Clone, PartialEq, Eq)] pub struct Color(u16); diff --git a/core/embed/rust/src/ui/display/mod.rs b/core/embed/rust/src/ui/display/mod.rs index 9e8a95a48b..892cc5f1f8 100644 --- a/core/embed/rust/src/ui/display/mod.rs +++ b/core/embed/rust/src/ui/display/mod.rs @@ -296,7 +296,12 @@ impl> TextOverlay { let p_rel = Point::new(p.x - self.area.x0, p.y - self.area.y0); - for g in self.text.as_ref().bytes().filter_map(|c| self.font.get_glyph(c)) { + for g in self + .text + .as_ref() + .bytes() + .filter_map(|c| self.font.get_glyph(c)) + { let top = self.max_height - self.baseline - g.bearing_y; let char_area = Rect::new( Point::new(tot_adv + g.bearing_x, top),