On Wed, 14 Jul 2010, Eric Miao wrote:
On Wed, Jul 14, 2010 at 2:05 PM, John Rigby john.rigby@linaro.org wrote:
Here is an update. First, I am still getting errors of the form:
/home/jcrigby/work/git-trees/kernelbuild/linux/drivers/mtd/onenand/onenand_sim.c:142: error: expected expression before 'do'
The 'do' here is from arch/arm/include/asm/io.h: #define writew(v,c) do { wmb(); writew_relaxed(v,c); } while (0)
That looks ok until you find out how it is used in drivers/mtd/onenand/onenand_sim.c:
#define ONENAND_SET_WP_STATUS(v, this) \ (writew(v, this->base + ONENAND_REG_WP_STATUS))
The parens around it make the valid statement into an invalid expression.
Second, on omap I was getting errors in arch/arm/plat-omap/gpio.c:
/home/jcrigby/work/git-trees/kernelbuild/linux/arch/arm/plat-omap/gpio.c: In function 'gpio_irq_type': /home/jcrigby/work/git-trees/kernelbuild/linux/arch/arm/plat-omap/gpio.c:906: error: 'irq_desc' undeclared (first use in this function)
I got around this problem by turning off sparse irq's.
Mm... I should have made SPARSE_IRQ default to 'n', and make sub-arch that supports this to select, instead of making it a visible option.
You may still send RMK an additional patch making that change. I don't think there is a real need to expose this config to users.
Nicolas