--- arch/powerpc/platforms/52xx/lite5200.c | 2 ++ drivers/spi/mpc5200_spi.c | 7 +++++++ 2 files changed, 9 insertions(+) Index: work-powerpc.git/drivers/spi/mpc5200_spi.c =================================================================== --- work-powerpc.git.orig/drivers/spi/mpc5200_spi.c +++ work-powerpc.git/drivers/spi/mpc5200_spi.c @@ -253,6 +253,13 @@ mpc5200_spi_probe(struct of_device *odev goto err_free; } + /* TODO interrupt mode + * first irq is MODF, we wan't the second one + * port->irq = irq_of_parse_and_map(odev->node, 0); + * but is it even worth implementing this? + * spi@f00 has only 1 byte fifo, so maybe for low speeds it makes sense + */ + //port->irq = irq_of_parse_and_map(odev->node, 1); port->irq = irq_of_parse_and_map(odev->node, 0); port->base = ioremap(res.start, res.end - res.start + 1); Index: work-powerpc.git/arch/powerpc/platforms/52xx/lite5200.c =================================================================== --- work-powerpc.git.orig/arch/powerpc/platforms/52xx/lite5200.c +++ work-powerpc.git/arch/powerpc/platforms/52xx/lite5200.c @@ -76,6 +76,8 @@ lite5200_setup_cpu(void) port_config &= ~0x03000000; /* ATA CS is on csb_4/5 */ port_config |= 0x01000000; + port_config |= 0x00000800; /* enable SPI on PSC3 pins */ + pr_debug("port_config: old:%x new:%x\n", in_be32(&gpio->port_config), port_config); out_be32(&gpio->port_config, port_config);