OK, it's all explained in the source code referred to by Johannes Goecke (see above).
In version 2.6.23 a "catch all VIA VT8237" function was used to enable the on-board sound card -- which is why it worked for me. In version 2.6.24 this was removed. Instead the DMI code (http://en.wikipedia.org/wiki/Desktop_Management_Interface) is used to enable the card *only* on MSI K8T Neo2 FIR. So once I've found the DMI code for my motherboard, I'll try a patch on the 2.6.24 kernel and post again if it works.

Steve

On 20/04/2008, Stephen Wilkinson <sw8511@gmail.com> wrote:
I thought I'd check the changelog for 2.6.24 on www.kernel.org
(http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.24) and
found this:

--------------8<----------------------------------------------------------------------------------------------------------------
commit 346ca04d050ac48ceb8e4a6b1c76c2d7fd5d1a6a
Author: Johannes Goecke <goecke@upb.de>
Date:   Mon Sep 10 10:46:52 2007 +0200

    PCI: re-enable onboard sound on "MSI K8T Neo2-FIR"

    On the "MSI K8T Neo2-FIR" board the BIOS disables the onboard
    soundcard, if a second PCI soundcard is present.

    This patch sets the korrect register bit to enable the onboard sound.

    Removed old code in /drivers/pci/quirks.c that only checks for the
    PCI-ID and fires on any Board with VIA 8237.

    New code in /arch/i386/pci/fixup.c checks the DMI-tables and only runs
    on the specific board.
--------------8<----------------------------------------------------------------------------------------------------------------

My board is an MSI K8TM ILSR so this sounds a promising thing to look
at... will post back if I have any luck, in case anybody else is
interested.

Steve


On 20/04/2008, Stephen Wilkinson <sw8511@gmail.com> wrote:
> Thanks Karolina,
>
>  I'd noticed that too, that the kernel (from 2.6.17 til 2.6.23)
>  detected the on-board sound card even when it was set to "disabled" in
>  the BIOS. I double checked the BIOS setting, and it is definitely
>  enabled.
>
>  Before kernel 2.6.17 I couldn't get the two cards working
>  simultaneously... hmm, I wonder if a "feature" (read bug!) that made
>  my setup work has been fixed!
>
>  Can the on-board be disabled by the presence of another sound card
>  (over-riding the BIOS setting)?
>
>  Steve
>
>
>  On 20/04/2008, Karolina Lindqvist <karolina.lindqvist@kramnet.se> wrote:
>  > söndagen den 20 april 2008 skrev Stephen Wilkinson:
>  >
>  >
>  >  > Does anyone have any suggestions as to why this may have stopped
>  >  > working in moving from 2.6.23 to 2.6.24? Is it no longer possible to
>  >  > run two sound cards together?
>  >
>  >
>  > I got the same problem with my (only) built-in VIA sound chip. From kernel
>  >  2.6.24 and onwards, the chip has to be enabled in the bios.  I had it
>  >  disabled before.
>  >  Check your bios settings, and enable the card if it is disabled.
>  >
>  >  Before linux ignored bios settings, but it look likes it does not do that
>  >  anymore.
>  >
>  >
>  >  Karolina
>  >
>  >
>