RE: [PATCH 05/24] omap4: Add needed IRQ line into irqs.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



< snip >
> -----Original Message-----
> From: linux-omap-owner@xxxxxxxxxxxxxxx [mailto:linux-omap-owner@xxxxxxxxxxxxxxx] On Behalf Of
> Shilimkar, Santosh
> Sent: Wednesday, February 17, 2010 11:22 AM
> To: Paul Walmsley
> Cc: tony@xxxxxxxxxxx; linux-omap@xxxxxxxxxxxxxxx; ben@xxxxxxxxxxxx; sameo@xxxxxxxxxxxxxxx;
> lrg@xxxxxxxxxxxxxxx; Cousson, Benoit
> Subject: RE: [PATCH 05/24] omap4: Add needed IRQ line into irqs.h
> > > > > Ones omap4 hwmod is pushed on mainlie, all the
> > > > > irqs lines data would be availabe.
> > > >
> > > > Instead of this patch, why not just replace the current file with the one
> > > > from the OMAP4 autogeneration scripts?  I don't see why the IRQ macros
> > > > should depend on hwmod availability, and it would be better to have the
> > > > correct IRQ data appear in one patch, rather than having to review and
> > > > approve several smaller incremental patches over time.
> > > We plan to do this but today the autogenrated file names and one in the
> > > kernel code is different.
> >
> > File names or macro names?
> Macros ofcourse
> >
> > > Autogenrated headers are kept in alignment
> > > with TRM naming as you know.
> > > e.g
> > > --- autogenaretd
> > > #define OMAP44XX_IRQ_MCBSP2   (22 + OMAP44XX_IRQ_GIC_START)
> > >
> > > --existing kernel
> > > #define INT_44XX_MCBSP2_IRQ	(22 + IRQ_GIC_START)
> > >
> > >
> > > So instead of touching every driver file and changing it only for name changes ,
> > > what we are doing
> > > 1. Created local 44xx_dma.h and 44xx_irq.h mach-omap2 directory
> > > 2. All the drivers getting converted in hwmods would use defines from above headers
> > > 3. At one point of time all the drivers would use defines from above headers and then
> > >    from omap4 point of view there won't be dependency on the irqs.h and dma.h
> > >
> > > While this is ongoing, we would like the mainline kernel to have most of the
> > > drivers supported. And Hence such a patch.
> >
> > I grepped through the code base for any instances of INT_44XX:
> >
> > [paul@twilight current]$ fgrep -r INT_44XX . | fgrep -v ./arch/arm/plat-omap/include/plat/irqs.h
> > ./arch/arm/mach-omap2/devices.c:		.start          = INT_44XX_MAIL_U0_MPU,
> > ./arch/arm/mach-omap2/devices.c:			irq = INT_44XX_MMC4_IRQ;
> > ./arch/arm/mach-omap2/devices.c:			irq = INT_44XX_MMC5_IRQ;
> > ./arch/arm/mach-omap2/timer-mpu.c:	evt->irq = INT_44XX_LOCALTIMER_IRQ;
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4a318000, .irq = INT_44XX_GPTIMER1 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x48032000, .irq = INT_44XX_GPTIMER2 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x48034000, .irq = INT_44XX_GPTIMER3 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x48036000, .irq = INT_44XX_GPTIMER4 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x40138000, .irq = INT_44XX_GPTIMER5 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4013a000, .irq = INT_44XX_GPTIMER6 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4013a000, .irq = INT_44XX_GPTIMER7 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4013e000, .irq = INT_44XX_GPTIMER8 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4803e000, .irq = INT_44XX_GPTIMER9 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x48086000, .irq = INT_44XX_GPTIMER10 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x48088000, .irq = INT_44XX_GPTIMER11 },
> > ./arch/arm/plat-omap/dmtimer.c:	{ .phys_base = 0x4a320000, .irq = INT_44XX_GPTIMER12 },
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO1_BASE, NULL, INT_44XX_GPIO_BANK1, IH_GPIO_BASE,
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO2_BASE, NULL, INT_44XX_GPIO_BANK2, IH_GPIO_BASE +
> 32,
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO3_BASE, NULL, INT_44XX_GPIO_BANK3, IH_GPIO_BASE +
> 64,
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO4_BASE, NULL, INT_44XX_GPIO_BANK4, IH_GPIO_BASE +
> 96,
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO5_BASE, NULL, INT_44XX_GPIO_BANK5, IH_GPIO_BASE +
> 128,
> > ./arch/arm/plat-omap/gpio.c:	{ OMAP44XX_GPIO6_BASE, NULL, INT_44XX_GPIO_BANK6, IH_GPIO_BASE +
> 160,
> > ./arch/arm/plat-omap/dma.c:			irq = INT_44XX_SDMA_IRQ0;
> > [paul@twilight current]$
> >
> >
> > There are only five files to change.  None of them are device
> > driver files, so they can all be merged through linux-omap.  The
> > changes could easily be done in a single patch.  So I see no
> > reason to not use the autogenerated IRQ file.
> >
> I think on you tree, you won't have DSS, AUDIO-ALSA, BRIDGE, USB etc.
> All these drivers needs to be updated as well

Having said that, I think it's best time to changes this so that
the drivers getting up streamed can use correct names directly.

Also irqs-44xx.h header inclusion can be avoided in each driver if plat/irqs.h 
include it.

I can check this if this can go in the currunt series itself. At least USB
and MCPDM are the two drivers I know of, planned to be lined up which will
get affected.

How about doing this in the .34-rc1 so that we don't break anybody ? 

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux