Hi Joel, The serial driver in the elfloader and kernel are very limited. It doesn't perform any baud rate configuration and hence won't be affected by frequency variations between platforms. Only the user space drivers are affected.
Memory is defined in the kernel here: https://github.com/seL4/seL4/blob/master/include/plat/zynq7000/plat/mac hine/hardware.h#L57 Note that the kernel will limit usable memory to ~512MB. It is probably safe to assume that your 128MB memory is in the range 0x00000000 to 0x08000000. Additionally, the start address of the elfloader must be changed to a valid address: https://github.com/seL4/seL4_tools/blob/master/elfloader- tool/gen_boot_image.sh#L51 Try 0x04000000 or 0x06000000. - Alex On Sat, 2017-11-11 at 08:46 +0100, Joel Svensson wrote: > Thanks again Alex, > > I'm suspecting something else (to begin with). Since I do get some > output from elf_loader I went in there > and added a few printfs. It seems execution just stops when it has > entered into the unpack_elf_to_paddr function. > It seems to be a memset call in there that just locks up any > progress. > > One big difference my platform and the supported one is the amount of > memory. The board I tried this > on has only 128mb. Is it possible that I need to change some memory > layout-describing files to take this into account. > > If 128mb is just way too little I have some 512mb variants as well. > > At least for elf_loader it seems the uart setup is compatible with > the configuration for the supported board. Maybe > this will be a problem again, later in the boot process, but right > now I suspect the memory difference. > > Thanks again and have a great weekend. > /Joel > > On Sat, Nov 11, 2017 at 12:42 AM, <alexander.k...@data61.csiro.au> > wrote: > > Hi Joel, > > > > You could try changing the reported frequency of the UART reference > > clock: > > https://github.com/seL4/util_libs/blob/master/libplatsupport/src/ma > > ch/z > > ynq/serial.c#L20 > > > > Or you could skip the baudrate configuration step altogether: > > https://github.com/seL4/util_libs/blob/master/libplatsupport/src/ma > > ch/z > > ynq/serial.c#L379 > > > > - Alex > > > > > > > > > > On Fri, 2017-11-10 at 07:51 +0100, Joel Svensson wrote: > > > Hello Alex and thank you. > > > > > > You assumption is correct, I am on a non-supported platform (the > > > Trenz ZynqBerry). So probably some tweaks will be needed. > > > Do you suspect that I will need to make these changes in the sel4 > > > code or will finding and changing some configuration file be > > enough? > > > First, of course, I need to figure out what the important > > differences > > > between the ZC706 and the ZynqBerry are. > > > > > > I was using the release build but now switched to debug and tried > > > that as well. That did not produce any additional output. > > > So that UART configuration changes are needed sound very > > likely. > > > > > > Thanks again and have a great day > > > /Joel > > > > > > On Fri, Nov 10, 2017 at 12:18 AM, <alexander.k...@data61.csiro.au > > > > > > wrote: > > > > Hi Joel, > > > > > > > > Which Zynq-7000 platform are you using? > > > > The supported platform is the ZC706. Other platforms might need > > > > some > > > > trivial changes, particularly for UART baudrate configuration. > > > > > > > > Are you using the debug or release config? > > > > The debug build should show additional messages during boot. > > > > > > > > - Alex > > > > > > > > > > > > > > > > > > > > On Thu, 2017-11-09 at 13:35 +0100, Joel Svensson wrote: > > > > > Hello, > > > > > > > > > > I want to learn about seL4 so I am trying to get is started > > on > > > > the > > > > > hardware I already have (a zynq 7000). > > > > > > > > > > I have generated the image: sel4test-driver-image-arm- > > zynq7000 > > > > > > > > > > Now I try to load that onto the zynq by executing these > > commands > > > > in > > > > > XMD: > > > > > connect arm hw > > > > > rst > > > > > fpga -f design_1_wrapper.bit > > > > > source ps7_init.tcl > > > > > ps7_init > > > > > ps7_post_config > > > > > dow sel4test-driver-image-arm-zynq7000 > > > > > run > > > > > > > > > > All of the above seem to be successful. Then, I have a serial > > > > link > > > > > hooked up to the board (uart) > > > > > and there I get the following output (screen /dev/ttyUSB1 > > 115200) > > > > : > > > > > ELF-loader started on CPU: ARM Ltd. Cortex-A9 r3p0 > > > > > paddr=[10000000..103c881f] > > > > > ELF-loading image 'kernel' > > > > > paddr=[0..2afff] > > > > > vaddr=[e0000000..e002afff] > > > > > virt_entry=e0000000 > > > > > > > > > > But then nothing more. I am lost what to do from this > > position in > > > > > order to continue exploring seL4. > > > > > I don't even know if what I see is an indication of a problem > > or > > > > > not. > > > > > If anyone has experience in running seL4 on zynq and if you > > sit > > > > on > > > > > knowledge you want to share, > > > > > please fill me in. > > > > > > > > > > Thank you > > > > > > > > > > > > > > > _______________________________________________ > > > > > Devel mailing list > > > > > Devel@sel4.systems > > > > > https://sel4.systems/lists/listinfo/devel > > _______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel