Hi, When I updated to the latest firmware start.elf , the graphic doesn’t show anymore. I haven’t yet found out what has been changed in the latest firmware. I’ve uploaded my firmware. I’ve retested my latest commit, it worked with hello, ticker and rbi samples.
https://www.dropbox.com/sh/95bu6skofkmrlvc/AABXjwvvFhQScJdo_rwj12V6a?dl=0 <https://www.dropbox.com/sh/95bu6skofkmrlvc/AABXjwvvFhQScJdo_rwj12V6a?dl=0> > On Jul 21, 2015, at 1:13 AM, 桥 杨 <yangqiao0...@me.com> wrote: > > I'll try to retest my latest commit tomorrow with my rpi B and rpi B+. > > I disn't see any errors from the log and I havn't yet any idea why It didn't > work. Keep in touch when you do tests. I'm always reachable. > > Thanks for the instructions of memory table. I'll try that tomorrow. > >> 在 2015年7月21日,00:52,Pavel Pisa <p...@cmp.felk.cvut.cz> 写道: >> >> Hello Qiao Yang, >> >>> On Monday 20 of July 2015 20:50:32 QIAO YANG wrote: >>> So it has got the right pointer for frame buffer. >>> >>> Please set the macros >>> >>> BCM2835_FBMEM_BASE to 0x1C006000 >>> and BCM2835_FBMEM_SIZE to 0x500000 >>> according to your log. >> >> I have got to testing at home where I have other RPi board >> and have no luck till. The memory setup is different there so I tried >> to recompiled for that one. I will rerun test at the university >> on the previous board again on Wednesday. If you have some >> enhancements, commit them to your RTEMS git, please. >> >> As for memory map adaptation, RTEMS does not include infrastructure >> for memory management setup changes at runtime but the before >> bsp_memory_management_initialize() is called then CPU runs in 1:1 >> mapping where physical and virtual addresses match. The main >> reason to setup and enable MMU on ARM is that without MMU >> cache cannot be enabled so execution is slow. Even instruction >> cache can be enabled without MMU enable on some ARM models. >> So the system is mostly/completely operational before MMU >> enable. >> >> arm_cp15_start_mmu_config_table table is declared as const >> but if it is not marked that way and compiler error is prevented >> then it can be manipulated before bsp_memory_management_initialize(); >> in bsp_start_hook_1() is called >> >> rtems/c/src/lib/libbsp/arm/raspberrypi/startup/bspstarthooks.c >> bsp_start_hook_1(void) >> >> So it should be possible to parse ATAGs or even access VideoCore >> before MMU is configured. >> >> The MMU config requires arm_cp15_start_mmu_config_table to be global >> variable. There is other solution even if problem with >> const does not allows simple modification of the table >> (but brute cast in the function adding video region would work either). >> >> It is most probable possible to skip to call >> bsp_memory_management_initialize() from the hook >> and use local variant of that code which would be RPi BSP >> specific >> >> rtems-yangqiao/c/src/lib/libbsp/arm/shared/mminit.c >> bsp_memory_management_initialize(); >> >> #define ARM_CP15_TEXT_SECTION BSP_START_TEXT_SECTION >> >> #include <bsp/start.h> >> #include <bsp/arm-cp15-start.h> >> #include <bsp/linker-symbols.h> >> #include <bsp/mm.h> >> >> BSP_START_TEXT_SECTION void bsp_memory_management_initialize(void) >> { >> uint32_t ctrl = arm_cp15_get_control(); >> >> ctrl |= ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_S | ARM_CP15_CTRL_XP; >> >> arm_cp15_start_setup_translation_table_and_enable_mmu_and_cache( >> ctrl, >> (uint32_t *) bsp_translation_table_base, >> ARM_MMU_DEFAULT_CLIENT_DOMAIN, >> &arm_cp15_start_mmu_config_table[0], >> arm_cp15_start_mmu_config_table_size >> ); >> } >> >> So it is quite short sequence and even highly dynamic table can be used. >> >> The mechanism to obtain installed/board provided memory size >> is required even to setup correctly size of memory and heap >> available for RTEMS system workspace and user application. >> >> So this should be solved (at least in long term horizon) some >> more generic/autoconfigured way. >> >> Best wishes, >> >> Pavel > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel