raspberrypi/linux — Issue #6: Architecture Code
Author: Alan-Cox
Created: 2012-01-25 11:52:50+00:00
State: open

This will need splitting up - eg big chunks of it are for the USB driver and that is probably a "no hope" item in itself.

1. Platform code references stuff that doesn't seem PI relevant or included (eg touchscreen)

2. Minor style stuff - usual plus strip out LINUX_VERSION_CODE checks when upstreaming

3. DMA manager - you assume there is only one, so you should check that in bcm_dmaman_probe()

4. General - bound to get asked if you can not use devicetree for all the device and IRQ description rather than yet more platform files.

5. Some bits (eg pcm_power) need a fairly serious revisit and exposing via the properly kernel power interfaces eventually. Also lose the semaphores for mutexes as they are not counting. Otherwise you muck up real time.

6. vc_mem.c - LOG_xxx crap - and in general a nop hoper that needs major work (so again best split out)

7. MMC - split this off because it needs major work to get anywhere upstream and probably to be done in small steps beginning with PIO. For MMC I think a lot of it may well look better as of 3.2 because MMC/SDHC now has a proper power infrastructure

For this I think you've got a good chance of getting the various quirks, basic board bits upstream easily. A lot of the other more driver-ish stuff is going to need stuff addressing.