Re: include/asm-ppc/platforms/
From: Paul Mackerras <hidden>
Date: 2001-11-29 11:48:46
I have run the platform.h stuff past Keith Owens, the kbuild maintainer. He makes several points: * He much prefers generated files (including symlinks) to be created in arch/$(ARCH) rather than include. In particular he doesn't like mixing supplied and generated headers in the one directory. * He prefers a copy rather than a symlink, particularly for kbuild-2.5, so that we have real pathnames and timestamps in the dependency tree. * He wrote a new script that uses sed rather than awk, checks a few things (e.g. exactly one platform.h file is selected) and also creates empty files if e.g. no platform_serial.h file is selected. The only reason for having include/asm-ppc/platforms under include/asm-ppc is so that serial.h can include the right blah_serial.h file. We can get around that by using early_serial_setup except that that doesn't work if the serial driver is built as a module. The boot stuff also needs to get at the first serial port but we can manage that by requiring the platform.h file to define e.g. BOOT_SERIAL_ADDRESS, BOOT_SERIAL_REG_SHIFT, etc., if it wants to use a serial port in the boot wrapper. The boot wrapper code then just does #include <platform.h>. Alternatively we can add a -Iarch/$(ARCH) flag for cc and put platform.h in arch/ppc and the platform headers in arch/ppc/platforms. This is Keith's preferred solution and it feels right to me too. Platform maintainers can continue to statically initialize rs_table for their serial ports if they wish. I think I will move all those crufty old fourport, accent, boca and hub6 declarations into include/asm-ppc/isa_serial.h so that they are still available but not getting in our faces all the time. Comments? Paul. ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/