From owner-freebsd-multimedia@freebsd.org Thu Dec 14 06:03:12 2017 Return-Path: Delivered-To: freebsd-multimedia@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 25FD0E97180 for ; Thu, 14 Dec 2017 06:03:12 +0000 (UTC) (envelope-from FreeBSD@shaneware.biz) Received: from ipmail03.adl2.internode.on.net (ipmail03.adl2.internode.on.net [150.101.137.141]) by mx1.freebsd.org (Postfix) with ESMTP id AB4DD755B1 for ; Thu, 14 Dec 2017 06:03:11 +0000 (UTC) (envelope-from FreeBSD@shaneware.biz) Received: from ppp121-45-66-21.bras1.adl6.internode.on.net (HELO leader.local) ([121.45.66.21]) by ipmail03.adl2.internode.on.net with ESMTP; 14 Dec 2017 16:28:01 +1030 Subject: Re: FreeBSD amd64 GENERIC kernel To: blubee blubeeme , freebsd-multimedia@freebsd.org References: From: Shane Ambler Message-ID: Date: Thu, 14 Dec 2017 16:27:59 +1030 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-AU Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Dec 2017 06:03:12 -0000 On 14/12/2017 01:22, blubee blubeeme wrote: > What sources do kernel modules pull in? > > I'm looking at the generic kernel config for am64: > > # Sound support > device sound # Generic sound driver (required) > device snd_cmi # CMedia CMI8338/CMI8738 > device snd_csa # Crystal Semiconductor CS461x/428x > device snd_emu10kx # Creative SoundBlaster Live! and Audigy > device snd_es137x # Ensoniq AudioPCI ES137x > device snd_hda # Intel High Definition Audio > device snd_ich # Intel, NVidia and other ICH AC'97 Audio > device snd_via8233 # VIA VT8233x Audio > > > The device "sound" is required, does that mean if I totally uncomment out > all the device including sound, then the machine won't boot? > > Does required mean a breaking kernel or just no sound? Required means any of the following snd_* devices require it to build. Commenting all devices you have listed results in a kernel that allows the module from audio/oss to be loaded. Having experimented with this a few days ago - while the sound and snd_* loadable modules are built, they are also permanently linked into the generic kernel which means we can't unload them after startup or prevent them loading in loader.conf, so to use the audio/oss kernel module a custom kernel needs to be built with these disabled. It is also possible to add WITHOUT_MODULES=sound snd_cmi snd_csa snd_emu10kx snd_es137x snd_hda snd_ich snd_via8233 to /etc/make.conf. Note that this leads to a generic kernel without sound that can be confusing later when you have forgotten. I would recommend using the custom kernel config with a descriptive name "ident NO_SOUND" so that later you know why sound stops working. I like to keep generic installed as kernel and give custom kernels different names - make buildkernel KERNCONF=NO_SOUND make installkernel KERNCONF=NO_SOUND KODIR=/boot/kernel.no_sound Add kernel="kernel.no_sound" to loader.conf to load it at boot. Add kernels="kernel,kernel.no_sound" to easily choose between them in the boot screen. I must admit to a lack of documentation regarding the install and use of audio/oss. While I didn't get far with config, I can contribute the above to installation. -- FreeBSD - the place to B...Software Developing Shane Ambler