I am trying to enable a bunch of spi devices. In the stock form, the ngw100 can have 7, spi0.1-3 and spi1.0-3. I need more than this though.
I've modified kernel source code in 3 places, and have about 15 devices showing up under /dev.
These are the files I've modified:
-arch/avr32/mach-at32ap/at700x.c - added more pins (GPIO_PIN_PA(25), e.g.) to the spi0_pins and spi1_pins.
-arch/avr32/boards/atngw100/setup.c - added more chip selects to the spi_board_info structures
-drivers/spi/stmel_spi.c - changed master->num_chipselect from 4 to 8
I can see these devices under /dev. I can read from these devices in a userspace program, or cat /dev/spidev0.3, but doing the same for /dev/spidev0.4 to spidev0.7 results in the system crashing. It seems like I'm missing one last initialising step. The default pins are working, its the pins that I've added that are not.