Hello Genode community, after a lucky find we were able to successfully boot the RPi B+. As expected the boards (RPi B and B+) are more or less equal and therefore work with the same Fiasco.OC/Genode build.
The UART gibberish is presumably caused by a faulty configuration of the UART clock by U-Boot and/or Raspberry PI's boot process. The working configuration for us is U-Boot by denx in the version v2017.09 and the binary blobs `bootcode.bin` and `start.elf` from [0]. Additionally the `config.txt` file must be configured as follows: > kernel=u-boot.bin > enable_uart=1 > init_uart_baud=115200 > init_uart_clock=3000000 # this line is important Sorry for the late response, I didn't find the time to answer earlier. Thanks for the suggestions made in the previous correspondence. Regards, Alexander [0] https://github.com/raspberrypi/firmware/tree/1.20170811 On 18.05.2017 15:46, rmillo wrote: > Hi Bernhard > > Basically the Raspberry PI 1 Model B+ has the same base as Model B, but > it has some improvements such as more GPIO Pins. The UART GPIO pins are > the same in both models: > > https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/README.md > https://pinout.xyz/# > > But I think they should be some differences between Model B and Model > B+, which are not specified in the original datahseet (BCM2835 dated > 2012 and Model B+ release on 2014), the same for Model B. As Stefan > recommended, check in Linux kernel the addresses the initial > configuration of the UART, and the hardware in general. > > I do not have in my hands a Model B+ to test, because if there are > significant differences it is likely that Fiasco.OC kernel is not > completely functional in that model. Try to start compiling Genode for > RPi using the base-hw platform (hw_rpi). This will serve as a starting > point to put GenodeOS on the Model B+, since the implementation of this > is about Genode, and is easier to understand and modify. > > When I began to work with Fiasco.OC+GenodeOS on RPi Model B, I used > base-hw as start point to test the hardware and its components. > > The firmware its not the problem, i have tested Fiasco.OC+GenodeOS with > a more recently firmware on Model B. > > What kernel_address on config.txt are you using? I use 0x00800000 to > load directly the the raw img. > > How are you creating the raw img? I use > > genode-arm-objcopy -O binary $elf_img $raw_img > > Best regards > > On 18/05/2017 05:31 AM, Stefan Kalkowski wrote: >> Hi Bernhard, >> >> On 05/10/2017 07:24 PM, Bernhard Blieninger wrote: >>> Hi, >>> >>> >>> I am currently working to get the raspberry pi b+ working with genode. >>> I started with an raspberry pi uboot and a tftp server where >>> genode.img >>> lies on. >>> The sd card was flashed via dd and the sd card image from here: >>> http://wiki.beyondlogic.org/index.php?title=Compiling_uBoot_RaspberryPi >>> >>> For the genode image I used the newest version of genode on github and >>> compiled a foc_rpi and an rpi with this command: >>> >>> ./tool/create_builddir foc_rpi BUILD_DIR=buildrpi >>> >>> or that >>> >>> ./tool/create_builddir rpi BUILD_DIR=./build-rpi >>> >>> and the command >>> >>> make run/demo >>> >>> This is working with the Raspberry Pi B(!) but when i put the sd card >>> in >>> the Raspberry Pi B +(!) it is not even booting. >>> >>> Therefore i prepared a sd card with raspbian and changed the >>> kernel.img >>> with the newly compiled u-boot.bin from >>> http://git.denx.de/u-boot.git >>> The sd card now boots again and shows u-boot but if I want to load >>> genode.img it does not continue. >>> If genode is loaded, for example by manually triggering it with bootz, >>> the serial connected minicom screen shows encoding problem nonsense. >>> Starting up a linux kernel works. If I start genode.img directly from >>> the sd card it is not working either. >>> >>> If I try this sd card with the Raspberry Pi B(!) it is not working. >>> What I have tested in a last step is, what happens if I substitute >>> the >>> u-boot.bin with the genode.img while using the sd card image that was >>> provided by beyondlogic in the first place, this is working for the B >>> model but not for the B +. >>> Also tried a fresh sd card format it to fat16 and put all the stuff on >>> it, which is in the boot folder from >>> https://github.com/raspberrypi/firmware , but that is also not >>> working. >>> >>> So I assume, that either the bootcode.bin and/or start.elf provided >>> by >>> raspberry are too new to use them with genode. >>> I could maybe find older versions but I would just like to ask if this >>> will help, maybe genode was never (meant to) run with some raspberry >>> boot code that is newer then 2013.11 >>> (http://genode.org/documentation/release-notes/13.11#Raspberry_Pi). >>> >>> Thanks in Advance for your help. >> >> I do not think its a "firmware is too new" issue. I guess it is more a >> question of how is the firmware configured, and what are the actual >> differences in between Model 1 B and 1 B+. >> The first question is, what exactly is not working. If everything stays >> blank after u-boot started the kernel, then probably Genode does not >> use >> the right physical address for the UART's memory mapped I/O registers, >> either because they've changed in between both board revisions, or >> because the firmware is configured in a different way than before resp. >> configures the GPIO pins to connect to a different (serial) device. In >> that case, you might study the options in config.txt for your specific >> model. Alternatively, you might somehow find out which UART and base >> address Linux is using on the device, e.g. in /proc/iomem. >> >> Unfortunately, I do not have such device, and therefore cannot >> reproduce >> that problem. >> >> Regards >> Stefan >> >> >>> >>> >>> >>> Best Regards, >>> >>> Bernhard. >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> >>> >>> >>> _______________________________________________ >>> genode-main mailing list >>> genode-main@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/genode-main >>> > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main