Thank you to anyone who has already donated - your generous donations helped make three months of treatment possible.
My brother Nate continues to fight stage IV Hodgkin's lymphoma. He's just 31, with a wife and baby girl. They have no active income (since he's been unable to return to work), no insurance, and cannot afford the treatment he needs. Nate and his family need your help. Please consider a donation, every dollar helps. Thanks.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
diff --git a/firmware/target/arm/crt0-pp.S b/firmware/target/arm/crt0-pp.S index bd1fc03..ad515aa 100644 cpu_init: strhi r4, [r2], #4 bhi 1b + /* copy init data to plugin buffer */ + ldr r2, =_initstart + ldr r3, =_initend + ldr r4, =codecbuf + +1: + cmp r3, r2 + ldrhi r5, [r2], #4 + strhi r5, [r4], #4 + bhi 1b + /* Load stack munge value */ ldr r4, =0xdeadbeef diff --git a/firmware/target/arm/sandisk/app.lds b/firmware/target/arm/sandisk/app.lds index 3010644..7353698 100644 STARTUP(target/arm/crt0-pp.o) MEMORY { - DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE - IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE + DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE + IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE + INIT : ORIGIN = ENDAUDIOADDR, LENGTH = CODECSIZE } SECTIONS SECTIONS _audiobuffer = .; audiobuffer = .; } > DRAM + + .init_text : + { + . = ALIGN(0x4); + _initstart = .; + *(.init) + . = ALIGN(0x4); + _initend = .; + } > INIT AT> DRAM + .audiobufend ENDAUDIOADDR (NOLOAD) : { diff --git a/firmware/target/arm/sandisk/sansa-e200/lcd-e200.c b/firmware/target/arm/sandisk/sansa-e200/lcd-e200.c index 03f6a1b..36bc63b 100644 static void lcd_display_off(void) } #endif +void lcd_init_device(void) __attribute__((section(".init"))); void lcd_init_device(void) { /* All this is magic worked out by MrH */ void lcd_init_device(void) #endif LCD_REG_6 |= 1; /* Start DMA */ + _backlight_set_brightness(0); } #if defined(HAVE_LCD_ENABLE) |