Why INTB in PF100 regulator is always low

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

Why INTB in PF100 regulator is always low

1,121 Views
yangao
Contributor III

Hi,

I'm using iMX6 and PF100 regulator. The PF100 INTB is connected to iMX6 GPIO0. I found the INTB is always low, even there is not any interrupt is unmasked. What causes the INTB to be in low state?

Thanks,

Yan

Labels (2)
Tags (2)
0 Kudos
5 Replies

994 Views
yangao
Contributor III

Hi Igor,

How to "use" the interrupt? We connect the INTB to GPIO0 in iMX6. In the linux driver, we request IRQ and can receive the interrupt from the GPIO0. However, because no interrupts are unmasked, the interrupt from IRQ is not processed - this cause the IRQ to be disabled and a bunch of error message like below are generated:

[    6.394804] irq 160: nobody cared (try booting with the "irqpoll" option)
[    6.401622] CPU: 0 PID: 254 Comm: systemd-udevd Tainted: P           O 3.14.70-fslc+g33f49da #1
[    6.410367] [<80015f58>] (unwind_backtrace) from [<800124d4>] (show_stack+0x10/0x14)
[    6.418134] [<800124d4>] (show_stack) from [<80753174>] (dump_stack+0x84/0x98)
[    6.425383] [<80753174>] (dump_stack) from [<8006e360>] (__report_bad_irq+0x28/0xc4)
[    6.433144] [<8006e360>] (__report_bad_irq) from [<8006e760>] (note_interrupt+0x298/0x2e8)
[    6.441422] [<8006e760>] (note_interrupt) from [<8006c3bc>] (handle_irq_event_percpu+0x118/0x180)
[    6.450312] [<8006c3bc>] (handle_irq_event_percpu) from [<8006c460>] (handle_irq_event+0x3c/0x5c)
[    6.459198] [<8006c460>] (handle_irq_event) from [<8006eed4>] (handle_level_irq+0x98/0x104)
[    6.467564] [<8006eed4>] (handle_level_irq) from [<8006ba80>] (generic_handle_irq+0x2c/0x3c)
[    6.476022] [<8006ba80>] (generic_handle_irq) from [<802c82d0>] (mxc_gpio_irq_handler+0x3c/0x164)
[    6.484911] [<802c82d0>] (mxc_gpio_irq_handler) from [<802c8478>] (mx3_gpio_irq_handler+0x80/0xcc)
[    6.493885] [<802c8478>] (mx3_gpio_irq_handler) from [<8006ba80>] (generic_handle_irq+0x2c/0x3c)
[    6.502685] [<8006ba80>] (generic_handle_irq) from [<8000fa8c>] (handle_IRQ+0x40/0x90)
[    6.510617] [<8000fa8c>] (handle_IRQ) from [<800085ac>] (gic_handle_irq+0x2c/0x5c)
[    6.518200] [<800085ac>] (gic_handle_irq) from [<80013040>] (__irq_svc+0x40/0x70)
[    6.525691] Exception stack(0x9c5f3db8 to 0x9c5f3e00)
[    6.530752] 3da0:                                                       9a1ad4c8 80764740
[    6.538940] 3dc0: 00000000 00000000 9a1ad4c8 80764740 9c5f3f74 00020000 9c663bb8 9c5f3eb0
[    6.547130] 3de0: 9a1ad4c8 9a263cc0 00000000 9c5f3e00 800ff8c8 800ef8b8 60010013 ffffffff
[    6.555327] [<80013040>] (__irq_svc) from [<800ef8b8>] (d_set_d_op+0x74/0x114)
[    6.562568] [<800ef8b8>] (d_set_d_op) from [<800ff8c8>] (simple_lookup+0x54/0x5c)
[    6.570072] [<800ff8c8>] (simple_lookup) from [<800e4e6c>] (lookup_real+0x20/0x4c)
[    6.577662] [<800e4e6c>] (lookup_real) from [<800e92ac>] (do_last+0x87c/0xc78)
[    6.584900] [<800e92ac>] (do_last) from [<800e9760>] (path_openat+0xb8/0x67c)
[    6.592052] [<800e9760>] (path_openat) from [<800eabec>] (do_filp_open+0x2c/0x88)
[    6.599556] [<800eabec>] (do_filp_open) from [<800dc240>] (do_sys_open+0x104/0x1c8)
[    6.607230] [<800dc240>] (do_sys_open) from [<8000f1a0>] (ret_fast_syscall+0x0/0x38)
[    6.614981] handlers:
[    6.617267] [<8006c480>] irq_default_primary_handler threaded [<80311b50>] pfuze_irq_thread
[    6.625670] Disabling IRQ #160

Any ideas?

Thanks,

Yan

0 Kudos

994 Views
igorpadykov
NXP Employee
NXP Employee
0 Kudos

994 Views
yangao
Contributor III

Hi Igor,

Thanks for the link. I know the message is because that the IRQ is not processed by my handler(Because I did not unmask any interrupt thus no interrupt should be processed). The issue is why the interrupt comes any way(the INTB is low). I will talk with some HW guy to double check HW is correct.

Thanks,

Yan

0 Kudos

994 Views
igorpadykov
NXP Employee
NXP Employee

Hi Yan

could you try to reproduce issue on i.MX6DL Sabre SD board with

Demo Images from link i.MX Software | NXP 

Best regards
igor

0 Kudos

994 Views
igorpadykov
NXP Employee
NXP Employee

Hi Yan

seems pmic interrupts are not used, in general one can try to debug it using

sect.2.5.2 PMIC PF Regulator attached Linux Manual.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos