Re: [RFC PATCH 12/40] soundwire: cadence_master: revisit interrupt settings

Pierre-Louis Bossart
2019-08-02T15:23:58Z

>> @@ -761,10 +769,21 @@ int sdw_cdns_enable_interrupt(struct sdw_cdns *cdns)
>> cdns_writel(cdns, CDNS_MCP_SLAVE_INTMASK1,
>> CDNS_MCP_SLAVE_INTMASK1_MASK);
>>
>> + /* enable detection of slave state changes */
>> mask = CDNS_MCP_INT_SLAVE_RSVD | CDNS_MCP_INT_SLAVE_ALERT |
>> - CDNS_MCP_INT_SLAVE_ATTACH | CDNS_MCP_INT_SLAVE_NATTACH |
>> - CDNS_MCP_INT_CTRL_CLASH | CDNS_MCP_INT_DATA_CLASH |
>> - CDNS_MCP_INT_RX_WL | CDNS_MCP_INT_IRQ | CDNS_MCP_INT_DPINT;
>> + CDNS_MCP_INT_SLAVE_ATTACH | CDNS_MCP_INT_SLAVE_NATTACH;
>> +
>> + /* enable detection of bus issues */
>> + mask |= CDNS_MCP_INT_CTRL_CLASH | CDNS_MCP_INT_DATA_CLASH |
>> + CDNS_MCP_INT_PARITY;
>> +
>> + /* no detection of port interrupts for now */
>> +
>> + /* enable detection of RX fifo level */
>> + mask |= CDNS_MCP_INT_RX_WL;
>> +
>> + /* now enable all of the above */
>
> I think this comment seems is at wrong line..?
>
>> + mask |= CDNS_MCP_INT_IRQ;
>>
>> cdns_writel(cdns, CDNS_MCP_INTMASK, mask);

No it's at the right place.

This flag gates all others, if its value is zero then the value of all
other bits is irrelevant.

that's what I meant by 'all of the above'.