0 is a valid offset for SCALER_DISPLISTn, it just means the start of the dlist memory. The firmware is pretty noddy in dlist memory handling and just splits it into 3, each of which is then double buffered. There are 3 HVS channels on all Pis. Follow the pixel valve (controls the timing) config in ...
the secondary goal is to bringup the display without the firmware, so it still helps to understand what the kernel is doing fully, and i believe i have it all figured out for the VC4 line of pi's vc4_dpi.c doesn't use the firmware at all, except possibly via the mailbox to setup the clocks. would v...
I'd suggest you stick with the mainline drivers unless you are really going bare metal, otherwise the two will fight. yeah, it does look like it would be difficult to tell the kernel to not touch a certain subset of the display list registers, better to let the kernel manage it You can also add add...
the driver in question: https://github.com/raspberrypi/linux/blob/rpi-4.19.y/drivers/gpu/drm/vc4/vc4_dpi.c does the linux DRM layer allow you to configure and bring-up DPI at runtime, without any changes to device-tree? can you change parameters like the active width and porches without a reboot? ca...
FYI, the PHY appears to be a BCM54213PE... Thanks, I successfully disabled the ethernet LEDs in the drivers/net/phy/broadcom.c with BCM_LED_SRC_OFF : static void bcm54213pe_config_init(struct phy_device *phydev) { ... val = BCM5482_SHD_LEDS1_LED1(BCM_LED_SRC_OFF) | BCM5482_SHD_LEDS1_LED3(BCM_LED_SR...
i'm guessing you would access that by poking at some PHY registers over the MDIO bus? https://github.com/raspberrypi/linux/blob/8e61c35166281b15cd5b273e227f8fff89417f15/drivers/net/ethernet/broadcom/genet/bcmmii.c#L420-L443 this code deals with interfacing to the MDIO bus, and you could then either ...
I have a pulse that I want to measure, it's important to get a the pulse width as that determines the function the microcontroller sending it wants. one option is to implement a character device, where the `read()` function will block until a pulse (or maybe many pulses) happens then it would repor...
https://www.raspberrypi.org/forums/viewtopic.php?f=67&t=257280 and https://blog.benjdoherty.com/2019/05/21/Exploring-Hardware-Compositing-With-the-Raspberry-Pi/ these also go into detail of how the HVS works for the rpi 0-3 line, you control the HVS via the dispmanx api to the firmware for the rpi4,...
do you have a volt meter and/or uart adapter? have you tried the eeprom recovery image? Yes I have tried the eeprom recovery image. I used the Raspberry Pi Imager to make a recovery SD card. Following the directions listed https://www.raspberrypi.org/downloads/ can you try setting `BOOT_UART=1` in ...
from what ive been able to gather, the VL805 is also capable of driving 4 usb ports, all at 3.0 speeds but the rpi4 only has 2 ports wired for 3.0 usage, and the other 2 ports wired for 2.0 speeds so you need to use the blue 3.0 ports for any 3.0 capable device, and be aware that all 4 ports are sha...
if the display is DPI or DSI based, it could also maybe work would need to know more about the model# first, and then compare it to everything the pi can generate (DPI, DSI, HDMI, composite) a quick glance at RCD510 on google makes me think that its an entire computer in a box, and you would need to...
where is that documented?
is that maybe a side effect of it only having 1 pci-e lane, so they only expeded it to have a single pci-e device on the bus?
its not documented clearly, but when you tell config.txt to set usb-c to host mode, it doesnt use dwc2 in host mode instead, it silently switches to an xhci usb controller, and changes which one is enabled in the device-tree passed to linux dtoverlay=dwc2,dr_mode=host is how you switch the DWC2 con...
ive not been talking about the 4 main usb ports there are 3 usb controllers on the rpi4 1: the old dwc2 controller 2: the vl805 xhci controller (on the 4 main ports) 3: a more hidden xhci controller inside the SoC 1/3 are sharing a single USB PHY, and wired to the USB-C port `dtoverlay=dwc2` configu...
https://github.com/raspberrypi/documentation/issues/1217#issuecomment-536932640 The unimaginatively named otg_mode config.txt parameter does the necessary fiddling. Set to 1 to enable the xhci controller in place of dwc_otg, using the same USB2.0 OTG PHY. Changing the controller over needs to be don...
from what ive been reading, the usb-c port is routed to an on-chip xhci controller when set to host mode The firmware default is to use the old USB 2.0 OTG controller in the SoC for both host and device mode. You'd also need a flag in bootconf.txt to force it into host mode since we don't have an O...
from what ive been reading, the usb-c port is routed to an on-chip xhci controller when set to host mode baring silicon bugs, it sounds relatively simple to modify the eeprom code to boot from usb-c but its still limited to usb2.0 speeds, so it would have better performance to use the vl805 controll...
i think the safest route, would be to use something like a journaled FS (such as ext4) for the real kernel and boot config and then have a bootloader on the fat32 (perhaps just u-boot) which will read its config from the 2nd fs then properly configured, the journaled FS should undo partial writes af...
the network boot in the RPI4 isnt entirely PXE compliant, but something custom it will just use dhcp+tftp to get an ip, and load `start4.elf`, possibly from a prefixed path (like ${serial}/start4.elf), and then load more boot files from there https://github.com/raspberrypi/documentation/blob/master/...