Is there any X driver for Panfrost on PBP ?

From: KIRIYAMA Kazuhiko <kiri_at_truefc.org>
Date: Sun, 20 Feb 2022 22:26:26 UTC
Hi, lists

I'm tring to start X with builtin Mali-T860MP4 Quad-core
GPU on Pinebook Pro (PBP). I've wakeuped GPU with panfrost :

---<<BOOT>>---
GDB: debug ports: uart
GDB: current port: uart
KDB: debugger backends: ddb gdb
KDB: current backend: ddb
WARNING: Cannot find freebsd,dts-version property, cannot check DTB compliance
Copyright (c) 1992-2022 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 14.0-CURRENT #0 n252641-3f106af0cd92-dirty: Wed Jan 26 22:41:41 JST 2022
    root@tbedfc:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC-DRM arm64
FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)
VT(efifb): resolution 1920x1080
module firmware already present!
real memory  = 4150083584 (3957 MB)
avail memory = 4021764096 (3835 MB)
Starting CPU 1 (1)
Starting CPU 2 (2)
Starting CPU 3 (3)
Starting CPU 4 (100)
Starting CPU 5 (101)
FreeBSD/SMP: Multiprocessor System Detected: 6 CPUs
random: unblocking device.
random: entropy device external interface
MAP f3f10000 mode 2 pages 4
MAP f3f15000 mode 2 pages 4
MAP f6f30000 mode 2 pages 16
kbd0 at kbdmux0
ofwbus0: <Open Firmware Device Tree>
clk_fixed0: <Fixed clock> on ofwbus0
simplebus0: <Flattened device tree simple bus> on ofwbus0
rk_grf0: <RockChip General Register Files> mem 0xff320000-0xff320fff on ofwbus0
rk3399_pmucru0: <Rockchip RK3399 PMU Clock and Reset Unit> mem 0xff750000-0xff750fff on ofwbus0
rk3399_cru0: <Rockchip RK3399 Clock and Reset Unit> mem 0xff760000-0xff760fff on ofwbus0
rk_grf1: <RockChip General Register Files> mem 0xff770000-0xff77ffff on ofwbus0
regfix0: <Fixed Regulator> on ofwbus0
regfix1: <Fixed Regulator> on ofwbus0
regfix2: <Fixed Regulator> on ofwbus0
regfix3: <Fixed Regulator> on ofwbus0
regfix4: <Fixed Regulator> on ofwbus0
regfix5: <Fixed Regulator> on ofwbus0
regfix6: <Fixed Regulator> on ofwbus0
regfix7: <Fixed Regulator> on ofwbus0
regfix8: <Fixed Regulator> on ofwbus0
regfix9: <Fixed Regulator> on ofwbus0
regfix10: <Fixed Regulator> on ofwbus0
regfix11: <Fixed Regulator> on ofwbus0
simple_mfd0: <Simple MFD (Multi-Functions Device)> mem 0xff310000-0xff310fff on ofwbus0
psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0
rk_drm0: <Rockchip Display Subsystem> on ofwbus0
gic0: <ARM Generic Interrupt Controller v3.0> mem 0xfee00000-0xfee0ffff,0xfef00000-0xfefbffff,0xfff00000-0xfff0ffff,0xfff10000-0xfff1ffff,0xfff20000-0xfff2ffff irq 18 on ofwbus0
its0: <ARM GIC Interrupt Translation Service> mem 0xfee20000-0xfee3ffff on gic0
rk_iodomain0: <RockChip IO Voltage Domain> mem 0-0xff31ffff,0-0xfff on rk_grf0
rk_iodomain1: <RockChip IO Voltage Domain> mem 0-0xff76ffff,0-0xffff on rk_grf1
rk_pinctrl0: <RockChip Pinctrl controller> on ofwbus0
gpio0: <RockChip GPIO Bank controller> mem 0xff720000-0xff7200ff irq 71 on rk_pinctrl0
gpiobus0: <OFW GPIO bus> on gpio0
gpio1: <RockChip GPIO Bank controller> mem 0xff730000-0xff7300ff irq 72 on rk_pinctrl0
gpiobus1: <OFW GPIO bus> on gpio1
gpio2: <RockChip GPIO Bank controller> mem 0xff780000-0xff7800ff irq 73 on rk_pinctrl0
gpiobus2: <OFW GPIO bus> on gpio2
gpio3: <RockChip GPIO Bank controller> mem 0xff788000-0xff7880ff irq 74 on rk_pinctrl0
gpiobus3: <OFW GPIO bus> on gpio3
gpio4: <RockChip GPIO Bank controller> mem 0xff790000-0xff7900ff irq 75 on rk_pinctrl0
gpiobus4: <OFW GPIO bus> on gpio4
rk_i2c0: <RockChip I2C> mem 0xff110000-0xff110fff irq 20 on ofwbus0
iicbus0: <OFW I2C bus> on rk_i2c0
rk_i2c1: <RockChip I2C> mem 0xff130000-0xff130fff irq 22 on ofwbus0
iicbus1: <OFW I2C bus> on rk_i2c1
rk_i2c2: <RockChip I2C> mem 0xff3c0000-0xff3c0fff irq 38 on ofwbus0
iicbus2: <OFW I2C bus> on rk_i2c2
fan53555_pmic0: <SYR827 PMIC> at addr 0x80 on iicbus2
fan53555_pmic1: <SYR828 PMIC> at addr 0x82 on iicbus2
rk_i2c3: <RockChip I2C> mem 0xff3d0000-0xff3d0fff irq 39 on ofwbus0
iicbus3: <OFW I2C bus> on rk_i2c3
rk808_pmu0: <RockChip RK808 PMIC> at addr 0x36 irq 76 on iicbus2
rk_vop0: <Rockchip RK3399 Visual Output Processor> mem 0xff8f0000-0xff8f3efb irq 53 on ofwbus0
rk_vop0: VOP version: 3068896
generic_timer0: <ARMv8 Generic Timer> irq 2,3,4,5 on ofwbus0
Timecounter "ARM MPCore Timecounter" frequency 24000000 Hz quality 1000
Event timer "ARM MPCore Eventtimer" frequency 24000000 Hz quality 1000
rk_tsadc0: <RockChip temperature sensors> mem 0xff260000-0xff2600ff irq 35 on ofwbus0
mmc_pwrseq0: <MMC Simple Power sequence> on ofwbus0
rk_edp0: <RockChip edp> mem 0xff970000-0xff977fff irq 62 on ofwbus0
rk_usb2phy0: <Rockchip RK3399 USB2PHY> mem 0-0xff76ffff,0-0xffff on rk_grf1
rk_usb2phy1: <Rockchip RK3399 USB2PHY> mem 0-0xff76ffff,0-0xffff on rk_grf1
rk_emmcphy0: <Rockchip RK3399 eMMC PHY> mem 0-0xff76ffff,0-0xffff on rk_grf1
rk_pcie_phy0: <Rockchip RK3399 PCIe PHY> mem 0-0xff76ffff,0-0xffff on rk_grf1
rk_typec_phy0: <Rockchip RK3399 PHY TYPEC> mem 0xff7c0000-0xff7fffff on ofwbus0
rk_typec_phy1: <Rockchip RK3399 PHY TYPEC> mem 0xff800000-0xff83ffff on ofwbus0
cpulist0: <Open Firmware CPU Group> on ofwbus0
cpu0: <Open Firmware CPU> on cpulist0
cpufreq_dt0: <Generic cpufreq driver> on cpu0
cpufreq_dt0: Found cpu-supply
cpu1: <Open Firmware CPU> on cpulist0
cpufreq_dt1: <Generic cpufreq driver> on cpu1
cpufreq_dt1: Found cpu-supply
cpu2: <Open Firmware CPU> on cpulist0
cpufreq_dt2: <Generic cpufreq driver> on cpu2
cpufreq_dt2: Found cpu-supply
cpu3: <Open Firmware CPU> on cpulist0
cpufreq_dt3: <Generic cpufreq driver> on cpu3
cpufreq_dt3: Found cpu-supply
cpu4: <Open Firmware CPU> on cpulist0
cpufreq_dt4: <Generic cpufreq driver> on cpu4
cpufreq_dt4: Found cpu-supply
cpu5: <Open Firmware CPU> on cpulist0
cpufreq_dt5: <Generic cpufreq driver> on cpu5
cpufreq_dt5: Found cpu-supply
pmu0: <Performance Monitoring Unit> irq 0 on ofwbus0
pmu1: <Performance Monitoring Unit> irq 1 on ofwbus0
pcib0: <Rockchip PCIe controller> mem 0xf8000000-0xf9ffffff,0xfd000000-0xfdffffff irq 6,7,8 on ofwbus0
pcib0: Gen1 link training timeouted: 0x00080001.
pci0: <OFW PCI bus> on pcib0
pcib1: <PCI-PCI bridge> at device 0.0 on pci0
pcib0: failed to reserve resource for pcib1
pcib1: failed to allocate initial memory window: 0-0xfffff
pci1: <PCI bus> on pcib1
rockchip_dwmmc0: <Synopsys DesignWare Mobile Storage Host Controller (RockChip)> mem 0xfe310000-0xfe313fff irq 10 on ofwbus0
rockchip_dwmmc0: Hardware version ID is 270a
rockchip_dwmmc1: <Synopsys DesignWare Mobile Storage Host Controller (RockChip)> mem 0xfe320000-0xfe323fff irq 11 on ofwbus0
rockchip_dwmmc1: Hardware version ID is 270a
sdhci_fdt0: <Rockchip RK3399 fdt SDHCI controller> mem 0xfe330000-0xfe33ffff irq 12 on ofwbus0
rk_emmcphy0: got emmcclk clock
sdhci_fdt0-slot0: Hardware doesn't specify timeout clock frequency, setting BROKEN_TIMEOUT quirk.
sdhci_fdt0: 1 slot(s) allocated
mmc0: <MMC/SD bus> on sdhci_fdt0
ehci0: <Generic EHCI Controller> mem 0xfe380000-0xfe39ffff irq 13 on ofwbus0
usbus0: EHCI version 1.0
usbus0 on ehci0
ohci0: <Generic OHCI Controller> mem 0xfe3a0000-0xfe3bffff irq 14 on ofwbus0
usbus1 on ohci0
ehci1: <Generic EHCI Controller> mem 0xfe3c0000-0xfe3dffff irq 15 on ofwbus0
usbus2: EHCI version 1.0
usbus2 on ehci1
ohci1: <Generic OHCI Controller> mem 0xfe3e0000-0xfe3fffff irq 16 on ofwbus0
usbus3 on ohci1
rk_dwc30: <Rockchip RK3399 DWC3> on ofwbus0
xhci0: <Synopsys Designware DWC3> mem 0xfe800000-0xfe8fffff irq 77 on rk_dwc30
xhci0: 64 bytes context size, 32-bit DMA
usbus4: trying to attach
usbus4 on xhci0
rk_dwc31: <Rockchip RK3399 DWC3> on ofwbus0
xhci1: <Synopsys Designware DWC3> mem 0xfe900000-0xfe9fffff irq 78 on rk_dwc31
xhci1: 64 bytes context size, 32-bit DMA
usbus5: trying to attach
usbus5 on xhci1
es8316codec0: <Everest Semi ES8316 CODEC> at addr 0x22 on iicbus0
iic0: <I2C generic I/O> on iicbus0
iic1: <I2C generic I/O> on iicbus1
uart0: <Non-standard ns8250 class UART with FIFOs> mem 0xff180000-0xff1800ff irq 26 on ofwbus0
uart0: debug port (-1,n,8,1)
uart1: <16750 or compatible> mem 0xff1a0000-0xff1a00ff irq 28 on ofwbus0
uart1: console (1500000,n,8,1)
spi0: <Rockchip SPI> mem 0xff1d0000-0xff1d0fff irq 31 on ofwbus0
spibus0: <OFW SPI bus> on spi0
spibus0: <unknown card> at cs 0 mode 0
iic2: <I2C generic I/O> on iicbus2
iicbus3: <unknown card> at addr 0x44
iic3: <I2C generic I/O> on iicbus3
pwm0: <Rockchip PWM> mem 0xff420000-0xff42000f on ofwbus0
pwmbus0: <OFW PWM bus> on pwm0
pwmc0: <PWM Control> channel 0 on pwmbus0
pwm1: <Rockchip PWM> mem 0xff420020-0xff42002f on ofwbus0
pwmbus1: <OFW PWM bus> on pwm1
pwmc1: <PWM Control> channel 0 on pwmbus1
i2s0: <Rockchip I2S> mem 0xff890000-0xff890fff irq 51 on ofwbus0
Cannot set frequency for clk: clkin_i2s, error: 34
Cannot set frequency for clk: xin24m, error: 34
pcm0: <simple-audio-card> on ofwbus0
gpioc0: <GPIO controller> on gpio0
gpioc1: <GPIO controller> on gpio1
gpioc2: <GPIO controller> on gpio2
gpioc3: <GPIO controller> on gpio3
gpioc4: <GPIO controller> on gpio4
rk_edp_panel0: <RockChip lcd panel> on ofwbus0
gpioled0: <GPIO LEDs> on ofwbus0
pcm1: <simple-audio-card> on ofwbus0
simpleamp0: <Simple Amplifier> on ofwbus0
armv8crypto0: <AES-CBC,AES-XTS,AES-GCM>
Timecounters tick every 1.000 msec
rk_drm0: port found
usbus0: 480Mbps High Speed USB v2.0
usbus1: 12Mbps Full Speed USB v1.0
<6>[drm] Connector eDP-1: get mode from tunables:
<6>[drm]   - kern.vt.fb.modes.eDP-1
<6>[drm]   - kern.vt.fb.default_mode
rk_drm0: Cannot find port with phandle 10
rk_drm_fb_preinit
<6>[drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
<6>[drm] No driver support for vblank timestamp query.
WARNING: Device "fb" is Giant locked and may be deleted before FreeBSD 14.0.
VT: Replacing driver "efifb" with new "fb".
<6>[drm] Initialized rockchip 1.0.0 20201113 for rk_drm on minor 0
rk808_pmu0: registered as a time-of-day clock, resolution 1.000000s
ugen1.1: <Generic OHCI root HUB> at usbus1
uhub0 on usbus1
uhub0: <Generic OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen0.1: <Generic EHCI root HUB> at usbus0
uhub1 on usbus0
uhub1: <Generic EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
usbus2: 480Mbps High Speed USB v2.0
usbus3: 12Mbps Full Speed USB v1.0
usbus4: 5.0Gbps Super Speed USB v3.0
usbus5: 5.0Gbps Super Speed USB v3.0
ugen5.1: <Synopsys XHCI root HUB> at usbus5
uhub2 on usbus5
uhub2: <Synopsys XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus5
ugen4.1: <Synopsys XHCI root HUB> at usbus4
uhub3 on usbus4
uhub3: <Synopsys XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus4
ugen3.1: <Generic OHCI root HUB> at usbus3
uhub4 on usbus3
uhub4: <Generic OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus3
ugen2.1: <Generic EHCI root HUB> at usbus2
uhub5 on usbus2
uhub5: <Generic EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
WARNING cur_vblank != vblank->last failed at /usr/src/sys/dev/drm/core/drm_vblank.c:279
mmcsd0: 125GB <MMCHC DA4128 0.1 SN AD0EFC3E MFG 03/2019 by 69 0x0000> at mmc0 25.0MHz/8bit/65535-block
mmcsd0boot0: 4MB partition 1 at mmcsd0
mmcsd0boot1: 4MB partition 2 at mmcsd0
mmcsd0rpmb: 17MB partition 3 at mmcsd0
pcm0: no driver attached to cpu node
Cannot set frequency for clk: clkin_i2s, error: 34
Cannot set frequency for clk: xin24m, error: 34
pcm1: failed to set sysclk for aux node
pcm1: failed to set sysclk for aux node
pcm1: failed to set sysclk for aux node
pcm1: failed to set sysclk for aux node
CPU  0: ARM Cortex-A53 r0p4 affinity:  0  0
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,VIPT ICache,64 byte ERG,64 byte CWG>
 Instruction Set Attributes 0 = <CRC32,SHA2,SHA1,AES+PMULL>
 Instruction Set Attributes 1 = <>
         Processor Features 0 = <GIC,AdvSIMD,FP,EL3 32,EL2 32,EL1 32,EL0 32>
         Processor Features 1 = <>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,1TB 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,SHA2,SHA1,AES+VMULL,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-A53 r0p4 affinity:  0  1
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,VIPT ICache,64 byte ERG,64 byte CWG>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,1TB PA>
CPU  2: ARM Cortex-A53 r0p4 affinity:  0  2
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,VIPT ICache,64 byte ERG,64 byte CWG>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,1TB PA>
CPU  3: ARM Cortex-A53 r0p4 affinity:  0  3
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,VIPT ICache,64 byte ERG,64 byte CWG>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,1TB PA>
CPU  4: ARM Cortex-A72 r0p2 affinity:  1  0
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,PIPT ICache,64 byte ERG,64 byte CWG>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,16TB PA>
CPU  5: ARM Cortex-A72 r0p2 affinity:  1  1
                   Cache Type = <64 byte D-cacheline,64 byte I-cacheline,PIPT ICache,64 byte ERG,64 byte CWG>
      Memory Model Features 0 = <TGran4,TGran64,SNSMem,BigEnd,16bit ASID,16TB PA>
Release APs...done
Trying to mount root from ufs:/dev/mmcsd0p3 [rw]...
uhub0: 1 port with 1 removable, self powered
Unresolved linked clock found: clkin_gmac
uhub4: 1 port with 1 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub3: 2 ports with 2 removable, self powered
Dual Console: Serial Primary, Video Secondary
uhub1: 1 port with 1 removable, self powered
uhub5: 1 port with 1 removable, self powered
ugen5.2: <Realtek USB 10/100/1000 LAN> at usbus5
ure0 on uhub2
ure0: <Realtek USB 10/100/1000 LAN, class 0/0, rev 3.00/30.00, addr 1> on usbus5
miibus0: <MII bus> on ure0
rgephy0: <RTL8251/8153 1000BASE-T media interface> PHY 0 on miibus0
rgephy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
ue0: <USB Ethernet> on ure0
ue0: Ethernet address: a0:ce:c8:de:9c:95
Waiting 30s for the root mount holders: usbus2ugen2.2: <vendor 0x05e3 USB2.0 Hub> at usbus2
uhub6 on uhub5
uhub6: <vendor 0x05e3 USB2.0 Hub, class 9/0, rev 2.00/85.36, addr 2> on usbus2
ugen1.2: <HAILUCK CO.,LTD USB KEYBOARD> at usbus1
ukbd0 on uhub0
ukbd0: <HAILUCK CO.,LTD USB KEYBOARD, class 0/0, rev 1.10/1.00, addr 2> on usbus1
kbd1 at ukbd0
ums0 on uhub0
ums0: <HAILUCK CO.,LTD USB KEYBOARD, class 0/0, rev 1.10/1.00, addr 2> on usbus1
ums0: 3 buttons and [XY] coordinates ID=1
uhub6: 4 ports with 4 removable, self powered
.ugen2.3: <Sonix Technology Co., Ltd. USB Camera> at usbus2
Setting hostuuid: 31323634-3737-6236-6162-336630376339.
Setting hostid: 0x5d4b60f9.
warning: total configured swap (4194304 pages) exceeds maximum recommended amount (3929384 pages).
warning: increase kern.maxswzone or reduce amount of swap.
Starting file system checks:
/dev/mmcsd0p3: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/mmcsd0p3: clean, 11381889 free (18521 frags, 1420421 blocks, 0.1% fragmentation)
Mounting local filesystems:.
Loading kernel modules:
panfrost0: <Mali Midgard/Bifrost GPU> mem 0xff9a0000-0xff9affff irq 63,64,65 on ofwbus0
panfrost0: Mali GPU clock rate 500000000 Hz
panfrost0: GPU revision 2000, id 860
panfrost0: Mali 860, major 2, minor 0, status 0
panfrost0: Features: L2 7120206, Shader 0, Tiler 809, Mem 1, MMU 2830, AS ff, JS 7
panfrost0: GPU is powered on
<6>[drm] Initialized panfrost 1.1.0 20201124 for panfrost on minor 1
Autoloading module: dwwdt
Autoloading module: mx25l
Autoloading module: pwm_backlight
dwwdt0: <Synopsys Designware watchdog timer> mem 0xff848000-0xff8480ff irq 47 on ofwbus0
pwm_backlight0: <PWM Backlight> on ofwbus0
mx25l0: <M25Pxx Flash Family> at cs 0 mode 0 on spibus0
mx25l0: device type gd25q128, size 16384K in 256 sectors of 64K, erase size 4K
Setting up harvesting: [UMA],[FS_ATIME],SWI,INTERRUPT,NET_NG,[NET_ETHER],NET_TUN,MOUSE,KEYBOARD,ATTACH,CACHED
Feeding entropy: .
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/R/lib /usr/local/lib/compat/pkg /usr/local/lib/gcc10 /usr/local/lib/mysql /usr/local/lib/mysql/plugin /usr/local/lib/perl5/5.34/mach/CORE /usr/local/lib/qt5 /usr/local/llvm13/lib
Setting hostname: kazu.tfc.
lo0: link state changed to UP
ue0: link state changed to DOWN
Starting Network: lo0 ue0.
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
        inet 127.0.0.1 netmask 0xff000000
        groups: lo
        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
ue0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=68009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
        ether a0:ce:c8:de:9c:95
        inet 192.168.1.65 netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect (none)
        status: no carrier
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Starting devd.
ue0: link state changed to UP
Cannot 'start' webcamd. Set webcamd_enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'.
Starting ums0 moused.
Cannot 'start' webcamd. Set webcamd_enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'.
Cannot 'start' webcamd. Set webcamd_enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'.
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 192.168.1.254
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Mounting NFS filesystems:.
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/R/lib /usr/local/lib/compat/pkg /usr/local/lib/gcc10 /usr/local/lib/mysql /usr/local/lib/mysql/plugin /usr/local/lib/perl5/5.34/mach/CORE /usr/local/lib/qt5 /usr/local/llvm13/lib
Updating motd:.
Updating /var/run/os-release done.
Creating and/or trimming log files.
Clearing /tmp (X related).
Starting syslogd.
No core dumps found.
Security policy loaded: MAC/ntpd (mac_ntpd)
Starting ntpd.
Mounting late filesystems:.
/etc/rc: WARNING: /etc/bluetooth/bthidd.conf is not readable.
/etc/rc: WARNING: failed precmd routine for bthidd
Starting sendmail.
Starting sendmail_msp_queue.
Starting cron.
Performing sanity check on sshd configuration.
Starting sshd.
Configuring vt: blanktime screensaverkldload: can't load logo_saver: No such file or directory
/etc/rc: WARNING: Unable to load kernel module logo_saver
.
Starting background file system checks in 60 seconds.

Mon Feb 21 07:11:06 JST 2022

FreeBSD/arm64 (kazu.tfc) (ttyu1)

login: 


But I could not found panfrot X driver. Is there any panfrost
X driver for FreeBSD ?

My machine environments are as follows :

Ports branch is 47d8fb3af3f0 and others are :

admin@kazu:~ % uname -a
FreeBSD kazu.tfc 14.0-CURRENT FreeBSD 14.0-CURRENT #0 n252641-3f106af0cd92-dirty: Wed Jan 26 22:41:41 JST 2022     root@tbedfc:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC-DRM  arm64
admin@kazu:~ % df -h
Filesystem                                                                         Size    Used   Avail Capacity  Mounted on
/dev/mmcsd0p3                                                                       82G     15G     61G    19%    /
devfs                                                                              1.0K    1.0K      0B   100%    /dev
tmpfs                                                                               34G    4.0K     34G     0%    /tmp
linprocfs                                                                          4.0K    4.0K      0B   100%    /compat/linux/proc
tmpfs                                                                               34G    4.0K     34G     0%    /compat/linux/dev/shm
linsysfs                                                                           4.0K    4.0K      0B   100%    /compat/linux/sys
devfs                                                                              1.0K    1.0K      0B   100%    /compat/linux/dev
fdescfs                                                                            1.0K    1.0K      0B   100%    /compat/linux/dev/fd
192.168.1.17:/.dake                                                                 12T    973G     11T     8%    /.dake
192.168.1.17:/ds/src/freebsd/current/14.0/3f106af0cd92.generic_drm                  11T     81G     11T     1%    /usr/src
192.168.1.17:/ds/obj/freebsd/current/14.0/3f106af0cd92.generic_drm                  11T    442G     11T     4%    /usr/obj
192.168.1.17:/ds/ports/freebsd/47d8fb3af3f0                                         11T    111G     11T     1%    /usr/ports
192.168.1.17:/ds/distfiles                                                          11T     54G     11T     0%    /var/ports/distfiles
192.168.1.17:/ds/packages/freebsd/arm64/aarch64/14.0C/3f106af0cd92/47d8fb3af3f0     11T    117G     11T     1%    /var/ports/packages
admin@kazu:~ % uname -a
FreeBSD kazu.tfc 14.0-CURRENT FreeBSD 14.0-CURRENT #0 n252641-3f106af0cd92-dirty: Wed Jan 26 22:41:41 JST 2022     root@tbedfc:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC-DRM  arm64
admin@kazu:~ % df -h
Filesystem                                                                         Size    Used   Avail Capacity  Mounted on
/dev/mmcsd0p3                                                                       82G     15G     61G    19%    /
devfs                                                                              1.0K    1.0K      0B   100%    /dev
tmpfs                                                                               34G    4.0K     34G     0%    /tmp
linprocfs                                                                          4.0K    4.0K      0B   100%    /compat/linux/proc
tmpfs                                                                               34G    4.0K     34G     0%    /compat/linux/dev/shm
linsysfs                                                                           4.0K    4.0K      0B   100%    /compat/linux/sys
devfs                                                                              1.0K    1.0K      0B   100%    /compat/linux/dev
fdescfs                                                                            1.0K    1.0K      0B   100%    /compat/linux/dev/fd
192.168.1.17:/.dake                                                                 12T    973G     11T     8%    /.dake
192.168.1.17:/ds/src/freebsd/current/14.0/3f106af0cd92.generic_drm                  11T     81G     11T     1%    /usr/src
192.168.1.17:/ds/obj/freebsd/current/14.0/3f106af0cd92.generic_drm                  11T    442G     11T     4%    /usr/obj
192.168.1.17:/ds/ports/freebsd/47d8fb3af3f0                                         11T    111G     11T     1%    /usr/ports
192.168.1.17:/ds/distfiles                                                          11T     54G     11T     0%    /var/ports/distfiles
192.168.1.17:/ds/packages/freebsd/arm64/aarch64/14.0C/3f106af0cd92/47d8fb3af3f0     11T    117G     11T     1%    /var/ports/packages
admin@kazu:~ % cat /etc/make.conf
PORTSDIR=               /var/ports/lpbpkx
INDEXDIR=               /var/ports/lpbpkx
WRKDIRPREFIX=           /var/ports/work
PACKAGES=               /var/ports/packages
DISTDIR=                /var/ports/distfiles
BATCH=                  yes
DEFAULT_VERSIONS=       perl5=5.34 ruby=2.7 java=12
COMPILER_TYPE=          clang
USE_PACKAGE_DEPENDS=    yes
DISABLE_VULNERABILITIES=yes
admin@kazu:~ % 

GENERIC-DRM kernel was built by `git subtree add' to 14.0-CURRENT
(e35816c1c909) for Panfrost driver [1] :

First `git subtree add' to 14.0-CURRENT (e35816c1c909) in src server :

root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git checkout e35816c1c909
HEAD is now at e35816c1c909 aw_spi: improve I/O stability
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git remote add drm-subtree https://github.com/jsm222/drm-subtree.git
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git subtree add --prefix sys/dev/drm/ drm-subtree pinebookpro-test
git fetch drm-subtree pinebookpro-test
remote: Enumerating objects: 794, done.
remote: Counting objects: 100% (794/794), done.
remote: Compressing objects: 100% (518/518), done.
remote: Total 794 (delta 370), reused 685 (delta 264), pack-reused 0
Receiving objects: 100% (794/794), 1.14 MiB | 5.09 MiB/s, done.
Resolving deltas: 100% (370/370), done.
 From https://github.com/jsm222/drm-subtree
  * branch                      pinebookpro-test -> FETCH_HEAD
  * [new branch]                pinebookpro-test -> drm-subtree/pinebookpro-test
Added dir 'sys/dev/drm'
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/extra_patches/0001-Hook-DRM-to-the-build.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/extra_patches/0002-Add-GENERIC-DRM-for-armv7.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/extra_patches/0003-drm-Add-rockchip-and-bridges-into-GENERIC-DRM.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/gicv3_its.c-patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/mixer.c.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/sys_dev_iicbus_es8316.c
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/GENERIC-DRM.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/sys_modules_dtb_rockchip_Makefile.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git apply sys/dev/drm/pbp-kernel-extra-patches/mmc.c.patch
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # git rev-parse --verify --short HEAD
3f106af0cd92
root@vm:/ds/src/freebsd/current/14.0/e35816c1c909.generic_drm # cd ..
root@vm:/ds/src/freebsd/current/14.0 # mv e35816c1c909.generic_drm 3f106af0cd92.generic_drm

and then build GENERIC-DRM in PBP :
  
# cd /usr/src
# make buildworld TARGET=arm64
# make buildkernel TARGET=arm64 KERNCONF=GENERIC-DRM

Best regards

[1] https://github.com/jsm222/drm-subtree
---
Kazuhiko Kiriyama <kiri@truefc.org>