8 to 9: Kernel modularization -- did it change?

Freddie Cash fjwcash at gmail.com
Fri Feb 17 16:08:20 UTC 2012


On Fri, Feb 17, 2012 at 8:04 AM, Alex Goncharov
<alex-goncharov at comcast.net> wrote:
> ,--- You/matt (Fri, 17 Feb 2012 07:31:03 -0800) ----*
> | It's in the kernel in later versions of 9-CURRENT and in 9-RELEASE on.
> |
> | You can't kldload or unload it because it's not a module, but part of
> | the kernel.
> | That doesn't preclude the presence of the file, I think.
> |
> | 'kldstat -v | less' should show you what's "in there".
>
> Thanks, indeed:
>
> ----------------------------------------
> uname -sr; echo ==; kldstat | grep hda; echo ==; kldstat -v | grep hda
> =>
> FreeBSD 8.2-STABLE
> ==
> 11    1 0xffffffff81039000 14580    snd_hda.ko
> ==
> 11    1 0xffffffff81039000 14580    snd_hda.ko (/boot/kernel/snd_hda.ko)
>        456 hdac/snd_hda_pcm
>        457 pci/snd_hda
> ----------------------------------------
>
> uname -sr; echo ==; kldstat | grep hda; echo ==; kldstat -v | grep hda
> =>
> FreeBSD 9.0-STABLE
> ==
> ==
>        253 pci/snd_hda
>        252 hdac/snd_hda_pcm
> ----------------------------------------
>
> But am I not screwed up then? ->
>
> I need to adjust the sound card pin assignments so that the sound can
> be directed to the headphones when they are plugged in.
>
> With FreeBSD 8, on several machines, I had gone through somewhat
> painful but ultimately meaningful and manageable routine of building
> the device.hints file.
>
> Essentially (consider the following an non-ordered set):
>
>    kldunload snd_hda.ko
>    kenv | grep hdac
>    sysctl hw.snd.verbose
>    sysctl hw.snd.verbose=4
>    kldload snd_hda.ko
>    cat /dev/sndstat
>    dmesg | grep ^hdac0
>    kenv hint.hdac.0.cad0.nid15.config="as=1 seq=15 device=Headphones"
>    kldload snd_hda.ko
>
> I don't believe I can do it now that the snd_hda module cannot be
> reloaded in a modified kernel environment.
>
> So, how do I go about finding and modifying the sound card pin
> assignments in FreeBSD 9?  (If I can't do it without temporarily
> installing FreeBSD 8, it would be a huge disappointment. :)

Stick the hint into /boot/loader.conf and reboot.

-- 
Freddie Cash
fjwcash at gmail.com


More information about the freebsd-hackers mailing list