GSoC project suggestion for the BSP Raspberry pi 4B aarch64

Joel Sherrill joel at rtems.org
Sun Feb 19 15:27:59 UTC 2023


That's all great information to include in the ticket and/or the Users
Guide.



On Sun, Feb 19, 2023, 7:44 AM Noor Aman <nooraman5718 at gmail.com> wrote:

> I booted freeBSD on the Raspberry pi, I was able to confirm that it used
> genet driver together with miibus for the NIC. This is further confirmed
> with the FreeBSD manual page.
> https://man.freebsd.org/cgi/man.cgi?query=genet
>
> One more thing to follow is that i noticed that FreeBSD is using PSCI, so
> I'm assuming that it is being used for SMP. I'll file a ticket as soon as
> I'm able to grab more information.
>
> Here are the full dmesg log of Raspberry pi 4B booting FreeBSD 13.2
>
> WARNING: Cannot find freebsd,dts-version property, cannot check DTB
>> compliance
>> Copyright (c) 1992-2021 The FreeBSD Project.
>> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>>         The Regents of the University of California. All rights reserved.
>> FreeBSD is a registered trademark of The FreeBSD Foundation.
>> FreeBSD 13.2-BETA2 releng/13.2-n254478-065f7854521d GENERIC arm64
>> FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git
>> llvmorg-14.0.5-0-gc12386ae247c)
>> VT(efifb): resolution 592x448
>> module firmware already present!
>> real memory  = 4148158464 (3955 MB)
>> avail memory = 4022452224 (3836 MB)
>> Starting CPU 1 (1)
>> Starting CPU 2 (2)
>> Starting CPU 3 (3)
>> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
>> random: unblocking device.
>> random: entropy device external interface
>> MAP 39f2b000 mode 2 pages 1
>> MAP 39f2f000 mode 2 pages 1
>> MAP 39f31000 mode 2 pages 2
>> MAP 39f34000 mode 2 pages 4
>> MAP 3b350000 mode 2 pages 16
>> MAP fe100000 mode 0 pages 1
>> kbd0 at kbdmux0
>> ofwbus0: <Open Firmware Device Tree>
>> simplebus0: <Flattened device tree simple bus> on ofwbus0
>> ofw_clkbus0: <OFW clocks bus> on ofwbus0
>> clk_fixed0: <Fixed clock> on ofw_clkbus0
>> clk_fixed1: <Fixed clock> on ofw_clkbus0
>> clk_fixed2: <Fixed clock> on ofwbus0
>> clk_fixed3: <Fixed clock> on ofwbus0
>> simplebus1: <Flattened device tree simple bus> on ofwbus0
>> simplebus2: <Flattened device tree simple bus> on ofwbus0
>> regfix0: <Fixed Regulator> on ofwbus0
>> regfix1: <Fixed Regulator> on ofwbus0
>> regfix2: <Fixed Regulator> on ofwbus0
>> simplebus3: <Flattened device tree simple bus> on ofwbus0
>> simple_mfd0: <Simple MFD (Multi-Functions Device)> mem
>> 0x7d5d2000-0x7d5d2eff on simplebus0
>> bcm2835_firmware0: <BCM2835 Firmware> on simplebus0
>> ofw_clkbus1: <OFW clocks bus> on bcm2835_firmware0
>> psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0
>> gic0: <ARM Generic Interrupt Controller> mem
>> 0x40041000-0x40041fff,0x40042000-0x40043fff,0x40044000-0x40045fff,0x40046000-0x40047fff
>> irq 30 on simplebus0
>> gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 256
>> gpio0: <BCM2708/2835 GPIO controller> mem 0x7e200000-0x7e2000b3 irq 14,15
>> on simplebus0
>> gpiobus0: <OFW GPIO bus> on gpio0
>> gpio1: <Raspberry Pi Firmware GPIO controller> on bcm2835_firmware0
>> gpiobus1: <GPIO bus> on gpio1
>> regfix0: Cannot set GPIO pin: 6
>> REGNODE_INIT failed: 6
>> regfix0: Cannot register regulator.
>> mbox0: <BCM2835 VideoCore Mailbox> mem 0x7e00b880-0x7e00b8bf irq 13 on
>> simplebus0
>> gpioregulator0: <GPIO controlled regulator> on ofwbus0
>> generic_timer0: <ARMv8 Generic Timer> irq 4,5,6,7 on ofwbus0
>> Timecounter "ARM MPCore Timecounter" frequency 54000000 Hz quality 1000
>> Event timer "ARM MPCore Eventtimer" frequency 54000000 Hz quality 1000
>> usb_nop_xceiv0: <USB NOP PHY> on ofwbus0
>> bcm2835_clkman0: <BCM283x Clock Manager> mem 0x7e101000-0x7e102fff on
>> simplebus0
>> gpioc0: <GPIO controller> on gpio0
>> uart0: <PrimeCell UART (PL011)> mem 0x7e201000-0x7e2011ff irq 16 on
>> simplebus0
>> uart0: console (115200,n,8,1)
>> spi0: <BCM2708/2835 SPI controller> mem 0x7e204000-0x7e2041ff irq 18 on
>> simplebus0
>> spibus0: <OFW SPI bus> on spi0
>> spibus0: <unknown card> at cs 0 mode 0
>> spibus0: <unknown card> at cs 1 mode 0
>> iichb0: <BCM2708/2835 BSC controller> mem 0x7e804000-0x7e804fff irq 26 on
>> simplebus0
>> bcm_dma0: <BCM2835 DMA Controller> mem 0x7e007000-0x7e007aff irq
>> 31,32,33,34,35,36,37,38,39,40,41 on simplebus0
>> bcmwd0: <BCM2708/2835 Watchdog> mem
>> 0x7e100000-0x7e100113,0x7e00a000-0x7e00a023,0x7ec11000-0x7ec1101f on
>> simplebus0
>> bcmrng0: <Broadcom BCM2835/BCM2838 RNG> mem 0x7e104000-0x7e104027 on
>> simplebus0
>> gpioc1: <GPIO controller> on gpio1
>> sdhci_bcm0: <Broadcom 2708 SDHCI controller> mem 0x7e300000-0x7e3000ff
>> irq 73 on simplebus0
>> mmc0: <MMC/SD bus> on sdhci_bcm0
>> fb0: <BCM2835 VT framebuffer driver> on simplebus0
>> fb0: keeping existing fb bpp of 32
>> fbd0 on fb0
>> WARNING: Device "fb" is Giant locked and may be deleted before FreeBSD
>> 14.0.
>> VT: Replacing driver "efifb" with new "fb".
>> fb0: 592x448(592x448 at 0,0) 32bpp
>> fb0: fbswap: 1, pitch 2368, base 0x3eaf5000, screen_size 1060864
>> sdhci_bcm1: <Broadcom 2708 SDHCI controller> mem 0x7e340000-0x7e3400ff
>> irq 79 on simplebus1
>> mmc1: <MMC/SD bus> on sdhci_bcm1
>> pmu0: <Performance Monitoring Unit> irq 0,1,2,3 on ofwbus0
>> cpulist0: <Open Firmware CPU Group> on ofwbus0
>> cpu0: <Open Firmware CPU> on cpulist0
>> bcm2835_cpufreq0: <CPU Frequency Control> on cpu0
>> cpu1: <Open Firmware CPU> on cpulist0
>> cpu2: <Open Firmware CPU> on cpulist0
>> cpu3: <Open Firmware CPU> on cpulist0
>> pcib0: <BCM2838-compatible PCI-express controller> mem
>> 0x7d500000-0x7d50930f irq 80,81 on simplebus2
>> pcib0: hardware identifies as revision 0x304.
>> pci1: <PCI bus> on pcib0
>> pcib1: <PCI-PCI bridge> irq 91 at device 0.0 on pci1
>> pci2: <PCI bus> on pcib1
>> bcm_xhci0: <VL805 USB 3.0 controller (on the Raspberry Pi 4b)> irq 92 at
>> device 0.0 on pci2
>> bcm_xhci0: 32 bytes context size, 64-bit DMA
>> usbus0 on bcm_xhci0
>> pci0: <PCI bus> on pcib0
>> pci0: failed to allocate bus number
>> device_attach: pci0 attach returned 6
>> genet0: <RPi4 Gigabit Ethernet> mem 0x7d580000-0x7d58ffff irq 82,83 on
>> simplebus2
>> genet0: GENET version 5.0 phy 0x0000
>> miibus0: <MII bus> on genet0
>> brgphy0: <BCM54213PE 1000BASE-T media interface> PHY 1 on miibus0
>> brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
>> 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, auto
>> genet0: Ethernet address: e4:5f:01:62:6c:5b
>> gpioled0: <GPIO LEDs> on ofwbus0
>> armv8crypto0: CPU lacks AES instructions
>> Timecounters tick every 1.000 msec
>> [nl_generic] genl_register_family: Registered family nlctrl id 16
>> [nl_generic] genl_register_cmds: Adding cmd GETFAMILY(3) to family nlctrl
>> usbus0: 5.0Gbps Super Speed USB v3.0
>> iicbus0: <OFW I2C bus> on iichb0
>> iic0: <I2C generic I/O> on iicbus0
>> ugen0.1: <(0x1106) XHCI root HUB> at usbus0
>> uhub0 on usbus0
>> uhub0: <(0x1106) XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on
>> usbus0
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> sdhci_bcm0-slot0: Got command interrupt 0x00030000, but there is no
>> active command.
>> sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
>> sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
>> sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt:  0x00000000
>> sdhci_bcm0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000
>> sdhci_bcm0-slot0: Present:  0x000f0000 | Host ctl: 0x00000001
>> sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
>> sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
>> sdhci_bcm0-slot0: Timeout:  0x00000000 | Int stat: 0x00000000
>> sdhci_bcm0-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
>> sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
>> sdhci_bcm0-slot0: Caps:     0x00000000 | Caps2:    0x00000000
>> sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
>> sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
>> sdhci_bcm0-slot0: ===========================================
>> uhub0: 5 ports with 4 removable, self powered
>> mmc0: No compatible cards found on bus
>> mmcsd0: 32GB <SDHC SS32G 8.0 SN 618C22B0 MFG 01/2022 by 3 SD> at mmc1
>> 50.0MHz/4bit/65535-block
>> bcm2835_cpufreq0: ARM 600MHz, Core 200MHz, SDRAM 400MHz, Turbo OFF
>> CPU  0: ARM Cortex-A72 r0p3 affinity:  0
>>                    Cache Type = <64 byte D-cacheline,64 byte
>> I-cacheline,PIPT ICache,64 byte ERG,64 byte CWG>
>> Trying to mount root from ufs:/dev/ufs/rootfs [rw]...
>>  Instruction Set Attributes 0 = <CRC32>
>>  Instruction Set Attributes 1 = <>
>>  Instruction Set Attributes 2 = <>
>>          Processor Features 0 = <AdvSIMD,FP,EL3 32,EL2 32,EL1 32,EL0 32>
>>          Processor Features 1 = <>
>>       Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit
>> ASID,16TB PA>
>>       Memory Model Features 1 = <8bit VMID>
>>       Memory Model Features 2 = <32bit CCIDX,48bit VA>
>>              Debug Features 0 = <DoubleLock,2 CTX BKPTs,4 Watchpoints,6
>> Breakpoints,PMUv3,Debugv8>
>>              Debug Features 1 = <>
>>          Auxiliary Features 0 = <>
>>          Auxiliary Features 1 = <>
>> AArch32 Instruction Set Attributes 5 = <CRC32,SEVL>
>> AArch32 Media and VFP Features 0 = <FPRound,FPSqrt,FPDivide,DP
>> VFPv3+v4,SP VFPv3+v4,AdvSIMD>
>> AArch32 Media and VFP Features 1 = <SIMDFMAC,FPHP DP Conv,SIMDHP SP
>> Conv,SIMDSP,SIMDInt,SIMDLS,FPDNaN,FPFtZ>
>> CPU  1: ARM Cortex-A72 r0p3 affinity:  1
>> CPU  2: ARM Cortex-A72 r0p3 affinity:  2
>> CPU  3: ARM Cortex-A72 r0p3 affinity:  3
>> Release APs...done
>> WARNING: / was not properly dismounted
>> Warning: no time-of-day clock registered, system time will not be set
>> accurately
>> Dual Console: Serial Primary, Video Secondary
>> ugen0.2: <vendor 0x2109 USB2.0 Hub> at usbus0
>> uhub1 on uhub0
>> uhub1: <vendor 0x2109 USB2.0 Hub, class 9/0, rev 2.10/4.21, addr 1> on
>> usbus0
>> uhub1: 4 ports with 4 removable, self powered
>> lo0: link state changed to UP
>> genet0: link state changed to DOWN
>> genet0: link state changed to UP
>>
>
>
> On Sun, 19 Feb 2023 at 02:24, Joel Sherrill <joel at rtems.org> wrote:
>
>>
>>
>> On Sat, Feb 18, 2023 at 11:09 AM Noor Aman <nooraman5718 at gmail.com>
>> wrote:
>>
>>>
>>> Hey everyone,
>>> Last year I helped with the porting of RTEMS-aarch64 for Raspberry Pi 4B
>>> with Kinsey, Alan and Hesham. I'm looking forward to continuing my project
>>> further. As of now, I have 2 projects in my mind.
>>>
>>
>> Every GSoC project should have a ticket. I found this one for the lower
>> model Pis but not one for the Pi4
>>
>> https://devel.rtems.org/ticket/2899
>>
>> Can you file a ticket like that for the Pi4 with these ideas?
>>
>>
>>> 1. Bringing in multicore support for the BSP.
>>> This can be achieved by one of the 2 methods which I know as of now.
>>> - By using PSCI via TF-A (Currently implemented in Zync MPSoC).
>>> - By adding support directly to the start.S file.
>>>
>>> 2. Add Ethernet support for the BSP
>>> - This can be done by importing the Genet driver which is used by
>>> freeBSD for the board. ( https://man.freebsd.org/cgi/man.cgi?query=genet
>>> )
>>> - This is all I know as of now about this idea.
>>>
>>> To be honest, I'm not that very familiar with either RTEMS-libbsd or
>>> TF-A. I did try to use libbsd with RPi4B. Some of the exe ran fine, like
>>> crypto01 and openssl, but I dont have the exact idea about the rest of the
>>> testsuites. I'm open to any further ideas. Your suggestions are most
>>> welcome.
>>>
>>
>> Did you manage to get anything using device drivers from libbsd working
>> on the Pi4?
>>
>> I don't see it listed in include/bsp/nexus-devices.h: which is where the
>> devices used
>> would be listed. FWIW I also don't see any arm/Pi configurations either.
>> I could be
>> missing something though.
>>
>> A first step would be to identify which NIC driver is used for the Pi4 on
>> FreeBSD. This
>> should help:
>>
>> https://wiki.freebsd.org/arm/Raspberry%20Pi
>>
>> Booting FreeBSD on the Pi4 would give you a boot log which should show a
>> lot
>> of the details about what needs to be configured.
>>
>> --joel
>>
>>>
>>> Thank you. Regards
>>> --
>>> Mohd Noor Aman
>>> Tinkering with Hardware
>>>
>>> _______________________________________________
>>> devel mailing list
>>> devel at rtems.org
>>> http://lists.rtems.org/mailman/listinfo/devel
>>
>>
>
> --
> Mohd Noor Aman
> Tinkering with Hardware
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20230219/4b07f381/attachment-0001.htm>


More information about the devel mailing list