Hi, On 06/07/07, sknauert@xxxxxxxxxxxx <sknauert@xxxxxxxxxxxx> wrote:
First off, thanks for your work on this. I tried to compile with 2.6.21.3 and Debian's gcc 4.1.1-27 cross-compiler. The kernel compiled, but make modules failed with the errors below. Something's definitely wrong with the typedefs and structs for use in a newer kernel.
The compile errors is because ALSA have removed all the typedefs for their structures in the header files, while my module still uses the typedefs. As a short term fix grab include/sound/typedefs.h from an older kernel. I can see the case against other uses of typedef, but I really do not see why typedef struct is so bad. seeing 'struct mything_s *foo;' doesn't really tell you anything more about foo then 'mything_t *foo;' does. If a typedef was something other then a struct then I would want it to have an obvious name that said such, eg 'u64'. (I really don't like 'size_t')
I also tried the linux-MIPS 2.6.19.7 and while the kernel compiles it doesn't boot.
I don't know why you can't get 2.6.19.7 to boot, did you make sure that CONFIG_BUILD_ELF64 is 'n'? That's been an issue that bit me. At the moment my crossdev env is broken, but once I fixed it I will get the latest lm.o kernel version and update the alsa stuff in my module so that it will build. Thanks for looking at the patch. Thorben