Go to advanced search

by rst
Sat Aug 03, 2019 9:20 am
Forum: Bare metal, Assembly language
Topic: Bare metal BCM43438 Driver
Replies: 24
Views: 4909

Re: Bare metal BCM43438 Driver

zeoneo wrote:
Sat Aug 03, 2019 4:13 am
Does anyone know how is this binary firmware loaded to Wifi chip? I don;t see any SDIO start up sequence in brcmfmac driver source code.
The SDIO code is separated in Linux from the Wi-Fi driver code in the MMC subsystem.
by rst
Fri Aug 02, 2019 5:28 pm
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

I knew this. But normally I'm building kernel7.img images, which run on both RPi 2 and 3 in AArch32. It creates less test effort. But a lot slower than it would otherwise because it doesn't use the optimized opcodes and your MMU is ARM7 format. A kernel8-32.img can be build from my sources, if want...
by rst
Fri Aug 02, 2019 1:25 pm
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

You are wrong the 32bit file for the Pi3 was never called kernel8.img it was specifically called kernel8-32.img, you had the wrong name which was creating your problem and surprised you never worked that out as you did a lot of baremetal. I knew this. But normally I'm building kernel7.img images, w...
by rst
Fri Aug 02, 2019 1:16 pm
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

jamesh wrote:
Fri Aug 02, 2019 10:26 am
Worth remembering that we do not supply a 64bit kernel, but when we do, we will be sorting out any boot issues like these. But right now, it's not a priority.
Understood. If you know, how it works, it is easy to handle it.
by rst
Fri Aug 02, 2019 10:16 am
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

However that still means you can't have 32bit and 64bit on the same SD card because the config.sys entry needs to change which is still different to the situation up to the Pi3. In fact this was the situation with the RPi 3 before. You cannot have a kernel8.img on the SD card there and start in AAr...
by rst
Thu Aug 01, 2019 4:46 pm
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

No-one has mentioned it so I will but there is a bug with 64bit on the Pi4 or they have added a new name that isn't yet documented. Just putting the file kernel8.img on the SD card is not enough to get you into 64bit mode you need to add this line to the config.txt arm_control=0x200 It will then lo...
by rst
Thu Aug 01, 2019 4:38 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

However now i'm trying to figure out how to use the file manager. My objective it to create, read and right a file on the sd card in order to make a configuration file. I tried to take exemple on sample 07 and 15 but none of them can find the USB key i plugged in. So what is the procedure to write ...
by rst
Wed Jul 31, 2019 1:34 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Thank you very much, xlar54. My name is not Patrick, but because I do not know another bare metal environment for the Raspberry Pi with the name Circle, I guess you are talking about my project. I did read about several retro computer projects (including Pi1541) using Circle and I'm glad that Circle...
by rst
Tue Jul 30, 2019 2:38 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

sure, made a git real quick for you. here you go : https://github.com/talemari/SerlemOS Thanks. I think, I have found the problem. m_multicore.addKernel() has to be called before m_multicore.Initialize() and not later in CKernel::Run(), because the secondary cores 1-3 will be already started inside...
by rst
Tue Jul 30, 2019 10:17 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

@Nakame Can you please put the whole source code of your test program somewhere on the Internet, so that I can test it? Unfortunately I cannot find the problem from the parts of the code, which you have posted. Which RPi model do you use? If you call m_Screen.Write() in CKernel::Write() to display t...
by rst
Thu Jul 25, 2019 10:20 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Thanks for your fast response, i'm feeling a bit stupid but yea , the interupt did work perfectly on core 0 as you said ( i could have found that out but i guess i lost patience too fast on this one) You are welcome. I do not think, your questions were simple and it's OK to ask them. The answer may...
by rst
Wed Jul 24, 2019 7:29 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

@Nakame There is not much special in handling interrupts in a Circle multi-core application. What you have to know is, that interrupts (IRQ and FIQ) in Circle are always handled on CPU core 0. The cores 1-3 are dedicated to the specific tasks of the application. For instance in a audio synthesizer a...
by rst
Sat Jul 20, 2019 7:58 am
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

I had to add 'enable_uart=1' to the config.txt on the boot folder to get UART0 (ie. /dev/serial0) to work, similar to RPi 3B+. This probably sets the alternate functions for GPIO14/15. I'm doing this in my bare metal code, without config.txt. For JTAG, even with 'enable_jtag_gpio=1' in config.txt t...
by rst
Fri Jul 19, 2019 8:12 am
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

Thanks for the clarity. Do you know if LPAE/MMU is required for xHCI, or needed for performance? Is activity LED still at GPIO 29 (as with RPi 3 B+)? Has anyone been able to verify if 0x7E000000 is a valid peripheral base (without first enabling MMU)? You are welcome. LPAE/MMU is needed for xHCI in...
by rst
Thu Jul 18, 2019 5:31 am
Forum: Bare metal, Assembly language
Topic: Raspberry Pi 4
Replies: 59
Views: 10612

Re: Raspberry Pi 4

For boot kernel execution, the RPi 4 will execute the new file kernel7l.img (lpae is enabled on RPi 4). If this file is not present on the boot partition Raspbian will not boot. For bare metal compiling with arm-none-eabi-gcc compiler, a kernel7.img file is not compatible; the Raspbian kernel7.img ...
by rst
Sat Jul 13, 2019 6:02 pm
Forum: Bare metal, Assembly language
Topic: BCM2711B0
Replies: 33
Views: 4946

Re: BCM2711B0

@joan You are welcome.

What I am missing at the moment is the PWM audio info for the new PWM device (assigned clock, DREQ and GPIO Alternate setting). If somebody would share info about this, it would be great. Perhaps we have to wait for the new "Peripherals document", but this may take time.
by rst
Sat Jul 13, 2019 5:40 pm
Forum: Bare metal, Assembly language
Topic: BCM2711B0
Replies: 33
Views: 4946

Re: BCM2711B0

Did you discover the 54 MHz Osc clock value in a document or by experiment? Similarly the DMA channel info. For the oscillator clock rate I generated a clock signal on GPIO4 with a defined divider and the oscillator source and measured the resulting clock rate. From that I calculated the oscillator...
by rst
Sat Jul 13, 2019 1:58 pm
Forum: Bare metal, Assembly language
Topic: Reserving cores for bare-metal programs - interupts
Replies: 36
Views: 4938

Re: Reserving cores for bare-metal programs - interupts

I'm not sure about the new GIC, but Pi4 also has the old interface to the ARM Q4 interrupt controller with which you can route every single interrupt to a specific core. Are you sure, that the old interrupt controller can be used on the RPi 4? How did you enable this? I tried the old interrupt cont...
by rst
Sat Jul 13, 2019 11:28 am
Forum: Bare metal, Assembly language
Topic: BCM2711B0
Replies: 33
Views: 4946

Re: BCM2711B0

Some additional notes on Raspberry Pi 4 bare metal support from basically porting Circle : Firmware This has been tested with the firmware from Jul 9 2019 from here . Running bare metal code requires the following new firmware files: fixup4.dat start4.elf bcm2711-rpi-4-b.dtb (did not work without) b...
by rst
Tue May 14, 2019 11:02 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Very well done Patrick and thank you!

rst
by rst
Wed Apr 10, 2019 9:23 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Is there any way to mount an usb flash drive and read it from the emulator? The developer recommended us this, I tested it but it doesn't work: You _should_ be able to add disk_volume=USB to cmdline.txt and that should switch loading emulator stuff from a USB stick. Set disk_partition=0 for auto or...
by rst
Thu Apr 04, 2019 4:08 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Thanks bzt, for linking Circle in your tutorials! Regarding Hungarian Notation I have to say, it's probably not the whole notation by Simonyi, which I am applying, more a modified one. For example I'm using the prefix "n" for any integer or unsigned typed variable. It's just "a number". About twenty...
by rst
Wed Apr 03, 2019 8:56 am
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Actually about the joystick, i experience a slowdown even just connecting it, without even any code to attach callbacks etc. :shock: I don't know, maybe the system is already almost saturated and that's enougth to tip it over? Please try it with the system option USE_USB_SOF_INTR enabled. Circle im...
by rst
Sun Mar 24, 2019 6:22 pm
Forum: Bare metal, Assembly language
Topic: Circle - C++ bare metal environment (with USB)
Replies: 235
Views: 63682

Re: Circle - C++ bare metal environment (with USB)

Here i am with another question (i hope i'm not abusing your patience). I'm adding gamepad support to my project (the tic80 port to circle ). I find that the gamepad callback get called way too often, like continuously, to the point that the entire system slow to a crawl. I've searched the code but...

Go to advanced search