Re: [Patch v7 2/4] memory: tegra: Add MC error logging on tegra186 onward

From: Dmitry Osipenko
Date: Wed Apr 13 2022 - 17:16:26 EST



On 4/13/22 12:40, Ashish Mhetre wrote:
> +irqreturn_t tegra30_mc_handle_irq(int irq, void *data)
> {
> struct tegra_mc *mc = data;
> + unsigned int bit, channel;
> unsigned long status;
> - unsigned int bit;
>
> - /* mask all interrupts to avoid flooding */
> - status = mc_readl(mc, MC_INTSTATUS) & mc->soc->intmask;
> + if (mc->soc->num_channels) {
> + u32 global_status;
> + int err;
> +
> + global_status = mc_ch_readl(mc, MC_BROADCAST_CHANNEL, MC_GLOBAL_INTSTATUS);

This will crash if mc->bcast_ch_regs = ERR_PTR(-EINVAL) for older dtbs.