From patchwork Tue Aug 1 02:05:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Randy Dunlap X-Patchwork-Id: 128986 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:918b:0:b0:3e4:2afc:c1 with SMTP id s11csp2442152vqg; Mon, 31 Jul 2023 21:54:19 -0700 (PDT) X-Google-Smtp-Source: APBJJlGi/QtJt4Ew2pG2yz0S0D98EBSMwNOKizsm+OQJni/KDjiiua/SYERUkaqWYqrbD1Vmrppc X-Received: by 2002:a17:906:10cd:b0:99b:f52a:bf6 with SMTP id v13-20020a17090610cd00b0099bf52a0bf6mr7673291ejv.6.1690865659222; Mon, 31 Jul 2023 21:54:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690865659; cv=none; d=google.com; s=arc-20160816; b=qTNdVeiOeBEh8/dwbFO+28/QfMNnhTDBTdExHFPgj9LnsiWrdzoZMlHMfTxxeRi0XH xWiSENGnk8YkXQVE0z8DUwAIRug84eSf8y8yi5ZtcdwdiKmIbVJFzEfNmY/ad0z2+Ixi cASTcFWHCuoE1qTRu4f7XCv/HegBSgZlzHAh9rW2YLOHNAgTuAJSCUYuRkpTtcgXkcYG LsFtYcUOJMZvwBnW6pNzIC7tvbyot3PlDrddCIkj16VKENfK7ZM1EYExbTHJ0GvjfW6y bZzR60dnuhG2tjm7xYC08CmAfbtumr3fHcrZGgcJ9i2IL/4fe01FACNKtlWXKFDrD7Pj MTvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=Xvt/xwua6bcASM1QffveSr2Oz/t1oOxs0Q1x3BG3TmI=; fh=ix/qGwugQyy9DIiXMrBe9LCjlioyNt04GdJe+fD/djs=; b=p6IHLWHeLAnZE0EtuYai45bMEV3V11m9RMeZhCSvSCFGiN11UBs81mmAYYqdbz8lrb idBkdpcHj273hXcdfhWxSvJ1979fqtKwuj7z8yTjd9npFxUs4sQpL1IcjTo22O9yXTz6 SHUz5hrCkSGCtWyfFE9pLiHPjOioCK3pvAfYBSNSLh2dBDd+QJHaUhp7tYMoSs+mD/IF F9EWNNTZPZic/m//b4OYKIeHgTUF2dLT4nZINjQxZfTbVvCvKMfMwUQhBMpZSIDVGc0E QdBVSXJCnhV2YgQx8L7FT0dDGynGvMBb+TMDYrgFt+7meyq4MTRP+vGGnO/Em/9sHAh8 ymlQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20210309 header.b=wNvmIpRj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i22-20020a170906265600b0098e1bbc2cffsi8337260ejc.958.2023.07.31.21.53.55; Mon, 31 Jul 2023 21:54:19 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20210309 header.b=wNvmIpRj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229984AbjHACFd (ORCPT + 99 others); Mon, 31 Jul 2023 22:05:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50688 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229379AbjHACFa (ORCPT ); Mon, 31 Jul 2023 22:05:30 -0400 Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8C94A19B4; Mon, 31 Jul 2023 19:05:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=Xvt/xwua6bcASM1QffveSr2Oz/t1oOxs0Q1x3BG3TmI=; b=wNvmIpRjv7p5MBH/DB1MCEpT02 02Msdg8qGOfw+BgXo7QxBOJAeJKTAMMVMdbTs3xGSu1ijQHjD66WwkfKhE6KHmmsr1s4KqhY5HgaP /ZJd1b642RFD6jsiUZm3B8//0ub6f4Dm1irCCzvtyWQ4rbxzAqSQVrkV4lgphCQOoIA3VxcyEAj8j 1QODoXkttHad9Hk7kWMwbRpDMsxsOy/WUIUQ5ysw4QD2ZjjdziXjaZfUUjnr9NjlkMqSrm5sg0JQA 1pfsVgC+2MGtrHD+x1a5ifMqweIvspT3Ae0hbfJPpfV6o6sJIlDzpuXgF/nJQGA7DH9JmbXm6QOJs xxrbAsfQ==; Received: from [2601:1c2:980:9ec0::2764] (helo=bombadil.infradead.org) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qQel2-000BCw-37; Tue, 01 Aug 2023 02:05:09 +0000 From: Randy Dunlap To: linux-kernel@vger.kernel.org Cc: Randy Dunlap , kernel test robot , Richard Weinberger , Anton Ivanov , Johannes Berg , linux-um@lists.infradead.org, Tejun Heo , Takashi Iwai , Jaroslav Kysela , Masahiro Yamada , Nathan Chancellor , Nick Desaulniers , Nicolas Schier , linux-kbuild@vger.kernel.org, alsa-devel@alsa-project.org Subject: [PATCH v4] um/drivers: fix hostaudio build errors Date: Mon, 31 Jul 2023 19:05:07 -0700 Message-ID: <20230801020507.30392-1-rdunlap@infradead.org> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1773001149266275541 X-GMAIL-MSGID: 1773001149266275541 Use "select"s to ensure that the required kconfig symbols are set as expected. Drop HOSTAUDIO since it is now equivalent to UML_SOUND. Allow SOUND with UML regardless of HAS_IOMEM. Otherwise there is a kconfig warning for unmet dependencies. (This was not an issue when SOUND was defined in arch/um/drivers/Kconfig. I have done 50 randconfig builds and didn't find any issues.) This fixes build errors when CONFIG_SOUND is not set: ld: arch/um/drivers/hostaudio_kern.o: in function `hostaudio_cleanup_module': hostaudio_kern.c:(.exit.text+0xa): undefined reference to `unregister_sound_mixer' ld: hostaudio_kern.c:(.exit.text+0x15): undefined reference to `unregister_sound_dsp' ld: arch/um/drivers/hostaudio_kern.o: in function `hostaudio_init_module': hostaudio_kern.c:(.init.text+0x19): undefined reference to `register_sound_dsp' ld: hostaudio_kern.c:(.init.text+0x31): undefined reference to `register_sound_mixer' ld: hostaudio_kern.c:(.init.text+0x49): undefined reference to `unregister_sound_dsp' and this kconfig warning: WARNING: unmet direct dependencies detected for SOUND Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Fixes: d886e87cb82b ("sound: make OSS sound core optional") Signed-off-by: Randy Dunlap Reported-by: kernel test robot Closes: lore.kernel.org/r/202307141416.vxuRVpFv-lkp@intel.com Cc: Richard Weinberger Cc: Anton Ivanov Cc: Johannes Berg Cc: linux-um@lists.infradead.org Cc: Tejun Heo Cc: Takashi Iwai Cc: Jaroslav Kysela Cc: Masahiro Yamada Cc: Nathan Chancellor Cc: Nick Desaulniers Cc: Nicolas Schier Cc: linux-kbuild@vger.kernel.org Cc: alsa-devel@alsa-project.org --- v2: don't delete the HOSTAUDIO Kconfig entry (Masahiro) v3: drop HOSTAUDIO and use CONFIG_UML_SOUND for it in Makefile (Takashi); add SOUND depends on "|| UML" to HAS_IOMEM v4: use depends on instead of select for SOUND (Masahiro); use Closes: instead of Link: arch/um/drivers/Kconfig | 16 +++------------- arch/um/drivers/Makefile | 2 +- sound/Kconfig | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) diff -- a/arch/um/drivers/Kconfig b/arch/um/drivers/Kconfig --- a/arch/um/drivers/Kconfig +++ b/arch/um/drivers/Kconfig @@ -111,24 +111,14 @@ config SSL_CHAN config UML_SOUND tristate "Sound support" + depends on SOUND + select SOUND_OSS_CORE help This option enables UML sound support. If enabled, it will pull in - soundcore and the UML hostaudio relay, which acts as a intermediary + the UML hostaudio relay, which acts as a intermediary between the host's dsp and mixer devices and the UML sound system. It is safe to say 'Y' here. -config SOUND - tristate - default UML_SOUND - -config SOUND_OSS_CORE - bool - default UML_SOUND - -config HOSTAUDIO - tristate - default UML_SOUND - endmenu menu "UML Network Devices" diff -- a/sound/Kconfig b/sound/Kconfig --- a/sound/Kconfig +++ b/sound/Kconfig @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0-only menuconfig SOUND tristate "Sound card support" - depends on HAS_IOMEM + depends on HAS_IOMEM || UML help If you have a sound card in your computer, i.e. if it can say more than an occasional beep, say Y. diff -- a/arch/um/drivers/Makefile b/arch/um/drivers/Makefile --- a/arch/um/drivers/Makefile +++ b/arch/um/drivers/Makefile @@ -54,7 +54,7 @@ obj-$(CONFIG_UML_NET) += net.o obj-$(CONFIG_MCONSOLE) += mconsole.o obj-$(CONFIG_MMAPPER) += mmapper_kern.o obj-$(CONFIG_BLK_DEV_UBD) += ubd.o -obj-$(CONFIG_HOSTAUDIO) += hostaudio.o +obj-$(CONFIG_UML_SOUND) += hostaudio.o obj-$(CONFIG_NULL_CHAN) += null.o obj-$(CONFIG_PORT_CHAN) += port.o obj-$(CONFIG_PTY_CHAN) += pty.o