On 9 December 2011 12:09, Mark Brown <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote: > On Fri, Dec 09, 2011 at 12:00:07PM +0530, Thomas Abraham wrote: > >> If these gpio's are connected to the host system, and host system sets >> up gpio interrupt notification for these gpio lines, the linux irq >> number for the gpio interrupt would belong to the irq domain of the >> host interrupt controller (gic irq domain in case of exynos). >> Consumers of this interrupt would use the gpio interrupt independent >> of the max8997 irq domain. So irq_base can be maintained private to >> the max8997 mfd driver and its sub-block drivers. > > How would you provide this interrupt to the device using it in a non-DT > systemm without passing the irq_base into the device as platform data? In non-DT system, the linux irq number that is used to register the gpio interrupt notifier would belong to the irq domain of the host interrupt controller (gic). For Exynos, the linux irq numbers that belong to the gic irq domain are statically assigned to specific interrupt notifiers and known to the entire system. For instance, the linux virq number for gpio interrupt for the gpio connected from max8997 to Exynos GPIO (hypothetical case) would be statically defined as GPIO_EINT_MAX8997_GPIO0. The device that requires to be notified of this interrupt would request_irq or setup_irq using this macro and hence needs no knowledge of the irq_base of the max8997 irq domain. If the system uses sparse irqs, or if static mapping of linux virq's are not possible in a system, that is a problem that this patch does not address. irq_domain of max8997 is self contained to provide all max8997 linux irq numbers required by the sub-block drivers of max8997. Thanks, Thomas. -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html