On Wed, Jul 27, 2016 at 02:27:54PM +0100, Mark Rutland wrote: > On Wed, Jul 27, 2016 at 09:08:21AM -0400, Rich Felker wrote: > > On Wed, Jul 27, 2016 at 11:15:38AM +0100, Mark Rutland wrote: > > > On Wed, Jul 27, 2016 at 05:35:09AM +0000, Rich Felker wrote: > > > > For simplicity, there is no aic1-specific logic in the driver beyond > > > > setting the priority register, which is necessary for interrupts to > > > > work at all. Eventually aic1 will likely be phased out, but it's > > > > currently in use in deployments and all released bitstream binaries. > > > > > > [...] > > > > > > > + if (!of_device_is_compatible(node, "jcore,aic2")) { > > > > > > If this is only meant to run for AIC1, it would be better to check for > > > the "jcore,aic1" compatible string explicitly. > > > > > > While that shouldn't matter much currently, it better matches the intent > > > described in the commit message, and avoids surprises and/or churn in > > > future if you have AIC3+. > > > > My intent in doing this was to support a DT that might claim an aic2 > > is aic1-compatible as a fallback "compatible" property. The hardware > > is designed such that this works (ignoring the spurious writes to > > unused prio registers) as long as the DT still has the right irq > > numbers for attached devices. > > Ok. > > If the HW ignores it, what's the cost of those one-off spurious writes? > If it's not noticeable, you could allow the kernel to perform them > regardless. Indeed, it essentially costs nothing. My motivation was more just to document that it's not needed/used for aic2. > Otherwise, please add a comment above the check, explaining why we do > the check this way around. Since the intent is documenting this might be the best approach. Rich -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html