2407767_en-US

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2407767_en-US

2407767_en-US

IMX95 GPIO1 can not be used

Greetings,

I am using IMX95 to develop our project. Now, I have to use GPIO1 group. I edited my dts file like below,

&gpio1 {

    status= "okay";

};
, and then I reboot the system.

The console showed the error message as below, and the system crashed.

My question is,  can user control GPIO1. Or,  how should I correctly config my dts?
Or is there another way to control GPIO1's GPIOs?

[ 2.326271] pstate: 40400009 (nZcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 2.333203] pc : bgpio_read32+0x0/0x18
[ 2.336923] lr : gpio_generic_chip_init+0x228/0x3e0
[ 2.341783] sp : ffff8000822e3a90
[ 2.345070] x29: ffff8000822e3a90 x28: 0000000000000000 x27: 0000000000000000
[ 2.352176] x26: ffff000080024028 x25: 0000000000000000 x24: ffff00008002320d
[ 2.359283] x23: 0000000000000000 x22: ffff000081ff9180 x21: ffff000080252000
[ 2.366390] x20: ffff000080252010 x19: ffff000080f65080 x18: 000000000000000a
[ 2.373497] x17: ffff8000817c0b68 x16: ffff000081fc7280 x15: 0000000000000000
[ 2.380603] x14: ffffffffffffffff x13: 0000000000000000 x12: 0101010101010101
[ 2.387710] x11: 7f7f7f7f7f7f7f7f x10: ffff80008249d043 x9 : 0000000000000018
[ 2.394817] x8 : 0101010101010101 x7 : 0000000000000000 x6 : 0000000000000090
[ 2.401923] x5 : 0000000000000090 x4 : ffff800080720920 x3 : ffff000080f65080
[ 2.409030] x2 : ffff80008071fb0c x1 : ffff80008070efa0 x0 : ffff8000822d5050
[ 2.416144] Call trace:
[ 2.418571] bgpio_read32+0x0/0x18 (P)
[ 2.422297] vf610_gpio_probe+0x2d0/0x400
[ 2.426277] platform_probe+0x5c/0xa4
[ 2.429916] really_probe+0xbc/0x2bc
[ 2.433470] __driver_probe_device+0x78/0x120
[ 2.437803] driver_probe_device+0x3c/0x178
[ 2.441963] __device_attach_driver+0xb8/0x140
[ 2.446383] bus_for_each_drv+0x88/0xe8
[ 2.450197] __device_attach+0x9c/0x1a0
[ 2.454010] device_initial_probe+0x14/0x20
[ 2.458170] bus_probe_device+0x9c/0xa0
[ 2.461983] deferred_probe_work_func+0x7c/0xb4
[ 2.466490] process_one_work+0x150/0x290
[ 2.470477] worker_thread+0x180/0x2f4
[ 2.474203] kthread+0x12c/0x204
[ 2.477410] ret_from_fork+0x10/0x20
[ 2.480973] Code: d503201f d5033ebf b9000001 d65f03c0 (b9400000)
[ 2.487037] ---[ end trace 0000000000000000 ]---



Re: IMX95 GPIO1 can not be used

I thought this message is showing error, but the system actually crashed.
Maybe it just a call function trace log. 

However, thank you all.
I shuld rework my hardware. 

Re: IMX95 GPIO1 can not be used

Hello,

As specified in the Hardware Design Guide of the i.MX95, section 2.1 System Manager:
https://www.nxp.com/webapp/Download?colCode=UG10210&isHTMLorPDF=HTML

The SM and Cortex‑M33 core controls all pins in GPIO1. Other cores cannot access them directly; only indirect access via the System Control and Management Interface (SCMI) protocol is allowed. It ensures secure wakeup and recovery mechanisms.

This is why you are getting a hardfault when trying to access from Linux side (different LM)

Best regards/Saludos,
Aldo.

Re: IMX95 GPIO1 can not be used

Control GPIO should not be a problem, but can you share how do you config GPIO?OPEN DRAIN or PUSH PULL?

btw, it seems there are no error messages at the log...

Tags (1)
No ratings
Version history
Last update:
21 hours ago
Updated by: