External email: Use caution opening links or attachmentsOkay, I will update in next version.
16.03.2022 12:25, Ashish Mhetre пишет:
+irqreturn_t tegra30_mc_handle_irq(int irq, void *data)
{
struct tegra_mc *mc = data;
unsigned long status;
+ bool mc_has_channels;
unsigned int bit;
+ int channel;
unsigned int
+ mc_has_channels = mc->soc->num_channels && mc->soc->get_int_channel;
+ if (mc_has_channels) {
+ int err;
+
+ err = mc->soc->get_int_channel(mc, &channel);
+ if (err < 0)
+ return IRQ_NONE;
+
+ /* mask all interrupts to avoid flooding */
+ status = mc_ch_readl(mc, channel, MC_INTSTATUS) & mc->soc->intmask;
+ } else {
+ status = mc_readl(mc, MC_INTSTATUS) & mc->soc->intmask;
+ }
So if mc_has_channels=false, while it should be true, then you're going
to handle interrupt incorrectly?