root/sound/last.c
// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *  Advanced Linux Sound Architecture
 *  Copyright (c) by Jaroslav Kysela <perex@perex.cz>
 */

#include <linux/init.h>
#include <sound/core.h>

static int __init alsa_sound_last_init(void)
{
        struct snd_card *card;
        int idx, ok = 0;
        
        printk(KERN_INFO "ALSA device list:\n");
        for (idx = 0; idx < SNDRV_CARDS; idx++) {
                card = snd_card_ref(idx);
                if (card) {
                        printk(KERN_INFO "  #%i: %s\n", idx, card->longname);
                        snd_card_unref(card);
                        ok++;
                }
        }
        if (ok == 0)
                printk(KERN_INFO "  No soundcards found.\n");
        return 0;
}

late_initcall_sync(alsa_sound_last_init);