cancel
Showing results for 
Search instead for 
Did you mean: 

platform 5a001000.display-controller: deferred probe pending - Why did the UART output stop?

DMårt
Lead

I compiled the linux kernel uImage and corresponding .dtb file with CubeIDE.

Then I mounted the st-image-bootfs-openstlinux-weston-stm32mp1.ext4 and changed the extlinux.conf inside the folder /bootfs/mmc0_extlinux to

 

 

 

 

# Generic Distro Configuration file generated by OpenEmbedded
MENU BACKGROUND /splash_landscape.bmp
TIMEOUT 20
LABEL OpenSTLinux
	KERNEL /uImage
	FDTDIR /stm32mp151a-stm32-computer-firmware-mx.dtb
	INITRD /st-image-resize-initrd
	APPEND root=PARTUUID=e91c4e10-16e6-4c0e-bd0e-77becf4a3582 rootwait rw   console=${console},${baudrate}

 

 

 

 

Then I successfully flashed my emmc0 and U-boot started the linux kernel. I have some thoughts about the UART output log.

  1. Does my processor communicate with my PMIC?
  2. Why could it not find the /stm32mp151a-stm32-computer-firmware-mx.dtb file at the beginning of the log?
  3. Is my Ethernet working? I cannot se any LED-lamp blinking when I plug in the cable, only the orange LED is active, but not blinking.
  4. Why does the UART output log stop at "display controller: deferred probe pending"? Do the processor want a HDMI connection to proceed?
  5. My HDMI_NRST pin is active low. If that pin is low, does this "error" occurs? I might think I have wrong configuration for the HDMI_NRST pin when i look at the mx-dts configuration and the schematic. 

Full output in this URL. 

 

 

 

switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:6...
Found /mmc0_extlinux/extlinux.conf
Retrieving file: /mmc0_extlinux/extlinux.conf
Retrieving file: /splash_landscape.bmp
1:	OpenSTLinux
Enter choice: 1:	OpenSTLinux
Retrieving file: /uImage
Retrieving file: /st-image-resize-initrd
append: root=PARTUUID=e91c4e10-16e6-4c0e-bd0e-77becf4a3582 rootwait rw   console=ttySTM0,115200
Retrieving file: /stm32mp151a-stm32-computer-firmware-mx.dtb/stm32mp151a-stm32-computer-firmware-mx.dtb
** File not found /stm32mp151a-stm32-computer-firmware-mx.dtb/stm32mp151a-stm32-computer-firmware-mx.dtb **
## Booting kernel from Legacy Image at c2000000 ...
   Image Name:   Linux-6.1.82
   Created:      2024-08-20  18:10:24 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    8249856 Bytes = 7.9 MiB
   Load Address: c2000040
   Entry Point:  c2000040
   Verifying Checksum ... OK
## Flattened Device Tree blob at dbae33c0
   Booting using the fdt blob at 0xdbae33c0
   XIP Kernel Image
   Loading Ramdisk to cfa0e000, end cffff92a ... OK
   Loading Device Tree to cf9f7000, end cfa0dabf ... OK
Starting kernel ...
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 6.1.82 (lubuntu@lubuntu-20bg001kms) (arm-ostl-linux-gnueabi-gcc (GCC) 12.3.0, GNU ld (GNU Binutils) 2.40.0.20230703) #1 PREEMPT Tue Aug 20 19:37:38 CEST 2024
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: STMicroelectronics custom STM32CubeMX board - openstlinux-6.1-yocto-mickledore-mpu-v24.06.26
[    0.000000] Memory policy: Data cache writeback
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created DMA memory pool at 0x10000000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node mcuram2@10000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x10040000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node vdev0vring0@10040000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x10041000, size 0 MiB
[    0.000000] Initmem setup node 0 [mem 0x00000000c0000000-0x00000000dfffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129992
[    0.000000] Kernel command line: root=PARTUUID=e91c4e10-16e6-4c0e-bd0e-77becf4a3582 rootwait rw   console=ttySTM0,115200
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] Memory: 394356K/524288K available (12288K kernel code, 1393K rwdata, 3816K rodata, 1024K init, 223K bss, 64396K reserved, 65536K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu: 	RCU event tracing is enabled.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000001] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000021] Switching to timer-based delay loop, resolution 41ns
[    0.001195] Console: colour dummy device 80x30
[    0.005053] rcu: Hierarchical SRCU implementation.
[    0.005062] rcu: 	Max phase no-delay instances is 1000.
[    0.006214] EFI services will not be available.
[    0.006956] devtmpfs: initialized
[    0.030050] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.030394] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.030426] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
[    0.033775] pinctrl core: initialized pinctrl subsystem
[    0.035284] DMI not present or invalid.
[    0.036592] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.039320] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.119655] SCSI subsystem initialized
[    0.120092] libata version 3.00 loaded.
[    0.120531] usbcore: registered new interface driver usbfs
[    0.120606] usbcore: registered new interface driver hub
[    0.120671] usbcore: registered new device driver usb
[    0.121166] pps_core: LinuxPPS API ver. 1 registered
[    0.121179] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.121210] PTP clock support registered
[    0.121479] EDAC MC: Ver: 3.0.0
[    0.133731] Driver 'scmi-optee' was unable to register with bus_type 'tee' because the bus was not initialized.
[    0.136687] clocksource: Switched to clocksource arch_sys_counter
[    0.159639] NET: Registered PF_INET protocol family
[    0.160015] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.162448] tcp_listen_portaddr_hash hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.162499] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.162525] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    0.162585] TCP bind hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.162677] TCP: Hash tables configured (established 4096 bind 4096)
[    0.162815] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.162853] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.163170] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.167022] RPC: Registered named UNIX socket transport module.
[    0.167044] RPC: Registered udp transport module.
[    0.167050] RPC: Registered tcp transport module.
[    0.167056] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.167593] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counters available
[    0.169662] Initialise system trusted keyrings
[    0.170272] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.177179] Trying to unpack rootfs image as initramfs...
[    0.201837] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.227459] NFS: Registering the id_resolver key type
[    0.227626] Key type id_resolver registered
[    0.227636] Key type id_legacy registered
[    0.227811] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.227824] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    0.228000] ntfs: driver 2.1.32 [Flags: R/O].
[    0.228309] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.229066] fuse: init (API version 7.37)
[    0.230156] NET: Registered PF_ALG protocol family
[    0.230181] Key type asymmetric registered
[    0.230191] Asymmetric key parser 'x509' registered
[    0.230462] bounce: pool size: 64 pages
[    0.230651] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    0.230666] io scheduler mq-deadline registered
[    0.230676] io scheduler kyber registered
[    0.259900] STM32 USART driver initialized
[    0.319792] brd: module loaded
[    0.349239] loop: module loaded
[    0.377616] CAN device driver interface
[    0.379816] pegasus: Pegasus/Pegasus II USB Ethernet driver
[    0.379904] usbcore: registered new interface driver pegasus
[    0.379980] usbcore: registered new interface driver asix
[    0.380036] usbcore: registered new interface driver ax88179_178a
[    0.380091] usbcore: registered new interface driver cdc_ether
[    0.380163] usbcore: registered new interface driver smsc75xx
[    0.380248] usbcore: registered new interface driver smsc95xx
[    0.380304] usbcore: registered new interface driver net1080
[    0.380360] usbcore: registered new interface driver cdc_subset
[    0.380414] usbcore: registered new interface driver zaurus
[    0.380541] usbcore: registered new interface driver cdc_ncm
[    0.382965] usbcore: registered new interface driver usb-storage
[    0.383224] usbcore: registered new device driver onboard-usb-hub
[    0.407125] i2c_dev: i2c /dev entries driver
[    0.410091] arm_smc_wdt: probe of watchdog failed with error -5
[    0.412462] sdhci: Secure Digital Host Controller Interface driver
[    0.412479] sdhci: Copyright(c) Pierre Ossman
[    0.412485] Synopsys Designware Multimedia Card Interface Driver
[    0.412912] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.413803] ledtrig-cpu: registered to indicate activity on CPUs
[    0.414327] usbcore: registered new interface driver usbhid
[    0.414341] usbhid: USB HID core driver
[    0.438490] optee: probing for conduit method.
[    0.438529] optee: revision 3.19 (a1d47acf)
[    0.477379] optee: dynamic shared memory is enabled
[    0.521246] optee: initialized driver
[    0.522574] NET: Registered PF_PACKET protocol family
[    0.522598] can: controller area network core
[    0.522894] NET: Registered PF_CAN protocol family
[    0.522911] can: raw protocol
[    0.522926] can: broadcast manager protocol
[    0.522941] can: netlink gateway - max_hops=1
[    0.547130] Key type dns_resolver registered
[    0.547279] ThumbEE CPU extension supported.
[    0.547304] Registering SWP/SWPB emulation handler
[    1.746708] kobject_add_internal failed for cpufreq-dt with -EEXIST, don't try to register things with the same name in the same directory.
[    1.769179] random: crng init done
[    1.830457] stm32-dma 48000000.dma-controller: STM32 DMA driver registered
[    1.834328] Modules linked in:
[    1.834340] CPU: 0 PID: 9 Comm: kworker/u2:0 Not tainted 6.1.82 #1
[    1.834354] Hardware name: STM32 (Device Tree Support)
[    1.834364] Workqueue: eval_map_wq eval_map_work_func
[    1.834392] PC is at update_event_printk+0xd0/0x1c0
[    1.834420] LR is at update_event_printk+0x8c/0x1c0
[    1.834440] pc : [<c01e289c>]    lr : [<c01e2858>]    psr: 20000053
[    1.834450] sp : de831ee8  ip : 0000002c  fp : 0000014c
[    1.834458] r10: 000002d4  r9 : c13b9ddc  r8 : 0000001a
[    1.834467] r7 : 00000001  r6 : c123eda0  r5 : c0e4b56c  r4 : c139ff03
[    1.834477] r3 : 0000004c  r2 : 00000000  r1 : c139feeb  r0 : 00000001
[    1.835054] note: kworker/u2:0[9] exited with irqs disabled
[    1.835197] stm32-mdma 58000000.dma-controller: STM32 MDMA driver registered
[    1.848408] stm32_rtc 5c004000.rtc: registered as rtc0
[    1.848458] stm32_rtc 5c004000.rtc: setting system clock to 2000-01-01T00:00:12 UTC (946684812)
[    1.848735] stm32_rtc 5c004000.rtc: Date/Time must be initialized
[    1.848748] stm32_rtc 5c004000.rtc: registered rev:1.2
[    1.852671] remoteproc remoteproc0: cannot get shutdown mbox
[    1.852681] stm32-rproc 10000000.m4: mbox_request_channel_byname() requires an "mbox-names" property
[    1.852691] remoteproc remoteproc0: cannot get detach mbox
[    1.852832] remoteproc remoteproc0: m4 is available
[    1.856496] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOA bank added
[    1.857299] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOB bank added
[    1.857953] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOC bank added
[    1.858571] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOD bank added
[    1.859191] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOE bank added
[    1.859851] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOF bank added
[    1.860609] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOG bank added
[    1.861259] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOH bank added
[    1.861911] stm32mp157-pinctrl soc:pinctrl@50002000: GPIOI bank added
[    1.861956] stm32mp157-pinctrl soc:pinctrl@50002000: Pinctrl STM32 initialized
[    1.863686] stm32mp157-pinctrl soc:pinctrl@54004000: error -ENOENT: failed to get clk
[    1.863712] stm32mp157-pinctrl: probe of soc:pinctrl@54004000 failed with error -2
[    1.866256] stm32-usart 40010000.serial: interrupt mode for rx (no dma)
[    1.866278] stm32-usart 40010000.serial: interrupt mode for tx (no dma)
[    1.866308] 40010000.serial: ttySTM0 at MMIO 0x40010000 (irq = 33, base_baud = 4000000) is a stm32-usart
[    3.733518] printk: console [ttySTM0] enabled
[    3.743563] stm32-dwmac 5800a000.ethernet: IRQ eth_lpi not found
[    3.768461] stm32-dwmac 5800a000.ethernet: User ID: 0x40, Synopsys ID: 0x42
[    3.774063] stm32-dwmac 5800a000.ethernet: 	DWMAC4/5
[    3.779101] stm32-dwmac 5800a000.ethernet: DMA HW capability register supported
[    3.786281] stm32-dwmac 5800a000.ethernet: RX Checksum Offload Engine supported
[    3.793690] stm32-dwmac 5800a000.ethernet: TX Checksum insertion supported
[    3.800578] stm32-dwmac 5800a000.ethernet: Wake-Up On Lan supported
[    3.807004] stm32-dwmac 5800a000.ethernet: TSO supported
[    3.812067] stm32-dwmac 5800a000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    3.820037] stm32-dwmac 5800a000.ethernet: device MAC address 0a:ca:ab:2d:d6:aa
[    3.827337] stm32-dwmac 5800a000.ethernet: Enabled L3L4 Flow TC (entries=2)
[    3.834214] stm32-dwmac 5800a000.ethernet: Enabled RFS Flow TC (entries=10)
[    3.841207] stm32-dwmac 5800a000.ethernet: TSO feature enabled
[    3.847176] stm32-dwmac 5800a000.ethernet: Using 32/32 bits DMA host/device width
[    3.888195] stm32f7-i2c 40012000.i2c: using dma0chan0 (tx) and dma0chan1 (rx) for DMA transfers
[    3.896197] stm32f7-i2c 40012000.i2c: STM32F7 I2C-0 bus adapter
[    3.925228] platform 4000b000.audio-controller: Fixed dependency cycle(s) with /soc/etzpc@5c007000/i2c@5c002000/hdmi-transmitter@39
[    3.935866] platform 5a001000.display-controller: Fixed dependency cycle(s) with /soc/etzpc@5c007000/i2c@5c002000/hdmi-transmitter@39
[    3.947857] i2c 1-0039: Fixed dependency cycle(s) with /soc/etzpc@5c007000/audio-controller@4000b000
[    3.957090] i2c 1-0039: Fixed dependency cycle(s) with /soc/display-controller@5a001000
[    3.966628] stpmic1 1-0033: PMIC Chip Version: 0x21
[    3.990017] platform 5c002000.i2c:stpmic@33:regulators: Fixed dependency cycle(s) with /soc/etzpc@5c007000/i2c@5c002000/stpmic@33/regulators/buck4
[    4.001829] platform 5c002000.i2c:stpmic@33:regulators: Fixed dependency cycle(s) with /soc/etzpc@5c007000/i2c@5c002000/stpmic@33/regulators/buck2
[    4.046500] stpmic1-regulator 5c002000.i2c:stpmic@33:regulators: Failed to create device link (0x180) with 1-0033
[    4.055498] stpmic1-regulator 5c002000.i2c:stpmic@33:regulators: Failed to create device link (0x180) with 1-0033
[    4.065728] stpmic1-regulator 5c002000.i2c:stpmic@33:regulators: Failed to create device link (0x180) with 1-0033
[    4.075949] stpmic1-regulator 5c002000.i2c:stpmic@33:regulators: Failed to create device link (0x180) with 1-0033
[    4.086616] stm32f7-i2c 5c002000.i2c: STM32F7 I2C-1 bus adapter
[    4.105246] mmci-pl18x 58007000.mmc: mmc0: PL180 manf 53 rev2 at 0x58007000 irq 45,0 (pio)
[    4.119272] input: pmic_onkey as /devices/platform/soc/5c007000.etzpc/5c002000.i2c/i2c-1/1-0033/5c002000.i2c:stpmic@33:onkey/input/input0
[    4.160391] stm32-usbphyc 5a006000.usbphyc: registered rev:1.0
[    4.171764] dwc2 49000000.usb-otg: supply vusb_d not found, using dummy regulator
[    4.178335] dwc2 49000000.usb-otg: supply vusb_a not found, using dummy regulator
[    4.201731] dwc2 49000000.usb-otg: EPs: 9, dedicated fifos, 952 entries in SPRAM
[    4.249722] ohci-platform 5800c000.usb: Generic Platform OHCI controller
[    4.255089] ehci-platform 5800d000.usb: EHCI Host Controller
[    4.260921] ohci-platform 5800c000.usb: new USB bus registered, assigned bus number 1
[    4.268562] ehci-platform 5800d000.usb: new USB bus registered, assigned bus number 2
[    4.276807] ohci-platform 5800c000.usb: irq 51, io mem 0x5800c000
[    4.282908] ehci-platform 5800d000.usb: irq 50, io mem 0x5800d000
[    4.295549] mmc0: new DDR MMC card at address 0001
[    4.300216] mmcblk0: mmc0:0001 008GB0 7.28 GiB 
[    4.314320]  mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9
[    4.317684] ehci-platform 5800d000.usb: USB 2.0 started, EHCI 1.00
[    4.327119] mmcblk0boot0: mmc0:0001 008GB0 4.00 MiB 
[    4.332995] hub 2-0:1.0: USB hub found
[    4.335415] hub 2-0:1.0: 2 ports detected
[    4.341068] mmcblk0boot1: mmc0:0001 008GB0 4.00 MiB 
[    4.355877] mmcblk0rpmb: mmc0:0001 008GB0 4.00 MiB, chardev (244:0)
[    4.370830] hub 1-0:1.0: USB hub found
[    4.373247] hub 1-0:1.0: 2 ports detected
[   14.569904] platform 5a001000.display-controller: deferred probe pending

 

 

 

The 0x5a001000 address is the LTDC peripheral.

 

		ltdc: display-controller@5a001000 {
			compatible = "st,stm32-ltdc";
			reg = <0x5a001000 0x400>;
			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&rcc LTDC_PX>;
			clock-names = "lcd";
			resets = <&rcc LTDC_R>;
			status = "disabled";
		};

 

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer
1 ACCEPTED SOLUTION

Accepted Solutions
DMårt
Lead

Here is the answer.

 

1. Yes. It communicates with the PMIC. No problem there.

2. Only use without the name of the .dtb file.

FDTDIR /

3. The ethernet is not properly working yet because Linux has not fully booted up.

4. The HDMI_NRST is low, therefore Linux is waiting on the HDMI PHY.

5. The simple solution is to change the reset-gpios and delcare the pin to be pull-up and HIGH at startup. Done! Important to set it as pull-up so it does not fail if the logic goes low for some nano seconds.

 

 

&i2c4{
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&i2c4_pins_mx>;
	pinctrl-1 = <&i2c4_sleep_pins_mx>;
	status = "okay";

	/* USER CODE BEGIN i2c4 */
	clocks = <&scmi_clk CK_SCMI_I2C4>;
	resets = <&scmi_reset RST_SCMI_I2C4>;
	i2c-scl-rising-time-ns = <185>;
	i2c-scl-falling-time-ns = <20>;
	clock-frequency = <400000>;
	/delete-property/ dmas;
	/delete-property/ dma-names;

	hdmi-transmitter@39{
		compatible = "sil,sii9022";
		reg = <0x39>;
		iovcc-supply = <&v3v3_hdmi>;
		cvcc12-supply = <&v1v2_hdmi>;
		reset-gpios = <&gpioe 8 GPIO_ACTIVE_LOW>; <---- This one!

 

 

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

View solution in original post

1 REPLY 1
DMårt
Lead

Here is the answer.

 

1. Yes. It communicates with the PMIC. No problem there.

2. Only use without the name of the .dtb file.

FDTDIR /

3. The ethernet is not properly working yet because Linux has not fully booted up.

4. The HDMI_NRST is low, therefore Linux is waiting on the HDMI PHY.

5. The simple solution is to change the reset-gpios and delcare the pin to be pull-up and HIGH at startup. Done! Important to set it as pull-up so it does not fail if the logic goes low for some nano seconds.

 

 

&i2c4{
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&i2c4_pins_mx>;
	pinctrl-1 = <&i2c4_sleep_pins_mx>;
	status = "okay";

	/* USER CODE BEGIN i2c4 */
	clocks = <&scmi_clk CK_SCMI_I2C4>;
	resets = <&scmi_reset RST_SCMI_I2C4>;
	i2c-scl-rising-time-ns = <185>;
	i2c-scl-falling-time-ns = <20>;
	clock-frequency = <400000>;
	/delete-property/ dmas;
	/delete-property/ dma-names;

	hdmi-transmitter@39{
		compatible = "sil,sii9022";
		reg = <0x39>;
		iovcc-supply = <&v3v3_hdmi>;
		cvcc12-supply = <&v1v2_hdmi>;
		reset-gpios = <&gpioe 8 GPIO_ACTIVE_LOW>; <---- This one!

 

 

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer