From patchwork Tue Oct 25 01:20:19 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 9393935 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id AF7BF60231 for ; Tue, 25 Oct 2016 03:43:25 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9C997292B9 for ; Tue, 25 Oct 2016 03:43:25 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 90D6F292BB; Tue, 25 Oct 2016 03:43:25 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_NONE, T_DKIM_INVALID autolearn=no version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7BCF7292B9 for ; Tue, 25 Oct 2016 03:43:24 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id E22FC266E5E; Tue, 25 Oct 2016 05:43:22 +0200 (CEST) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id BD437266C4B; Tue, 25 Oct 2016 05:40:58 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 5286C266DF7; Tue, 25 Oct 2016 03:20:31 +0200 (CEST) Received: from relmlie4.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by alsa0.perex.cz (Postfix) with ESMTP id D88A2266C4B for ; Tue, 25 Oct 2016 03:20:24 +0200 (CEST) Received: from unknown (HELO relmlir3.idc.renesas.com) ([10.200.68.153]) by relmlie4.idc.renesas.com with ESMTP; 25 Oct 2016 10:20:22 +0900 Received: from relmlac4.idc.renesas.com (relmlac4.idc.renesas.com [10.200.69.24]) by relmlir3.idc.renesas.com (Postfix) with ESMTP id B8AF149445; Tue, 25 Oct 2016 10:20:22 +0900 (JST) Received: by relmlac4.idc.renesas.com (Postfix, from userid 0) id B09CF480A7; Tue, 25 Oct 2016 10:20:22 +0900 (JST) Received: from relmlac4.idc.renesas.com (localhost [127.0.0.1]) by relmlac4.idc.renesas.com (Postfix) with ESMTP id A93A8480A6; Tue, 25 Oct 2016 10:20:22 +0900 (JST) Received: from relmlii1.idc.renesas.com [10.200.68.65] by relmlac4.idc.renesas.com with ESMTP id LAA28756; Tue, 25 Oct 2016 10:20:22 +0900 X-IronPort-AV: E=Sophos;i="5.22,559,1449500400"; d="scan'";a="223278983" Received: from mail-pu1apc01lp0018.outbound.protection.outlook.com (HELO APC01-PU1-obe.outbound.protection.outlook.com) ([65.55.88.18]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA; 25 Oct 2016 10:20:21 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=MN9P+RVPmyNZqff0hpGVb3q3KnxoveK+oBQFJgR/BEU=; b=nrvpQjfdBh7kDSz6AU/Z39LysyWdV+UzDrWUN58hVVePajysEp62d/YahrPC11EHcA0SWsAlJTodiJzTgF7lbBP8uX7rdjfXZmgnYfm/MB11qwrudd5A4sjy9H1gxxYeIG4xNwez8IRoKpdNqjr4ALhl8eKotb0jLzjTRjZ2gb8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by HK2PR0601MB1444.apcprd06.prod.outlook.com (10.165.182.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.679.12; Tue, 25 Oct 2016 01:20:19 +0000 Message-ID: <87twc1b5d9.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown , Lars-Peter In-Reply-To: <87vawhb5el.wl%kuninori.morimoto.gx@renesas.com> References: <87vawhb5el.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Tue, 25 Oct 2016 01:20:19 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: OS2PR0101CA0032.jpnprd01.prod.outlook.com (10.167.173.170) To HK2PR0601MB1444.apcprd06.prod.outlook.com (10.165.182.150) X-MS-Office365-Filtering-Correlation-Id: 91ee35f8-9a4f-47a9-36d7-08d3fc7515d2 X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 2:1Zto3KBCEwEG5op4f++Ke/7Fv6mmd862wQo/YXeTm/OvVf7/1spzIeWN4AC+N7Ksn52tz4aqKOWHJzmti/LwNpQt6xnL2Z3p4INXLnP2+awvHOVKL4Z5RLYtNt40MKLmSiTGuB1hqZSIdpytQfOKEdv7pDVSYw/csueGVcddWrqBLDJaRBxvDcDhd04Rpxvr/L53Pvr6EylFXXROArNjow==; 3:KSBIvHresj/PTP8qW4BF7KHBbCOgp1nTghDE/+MzJDEFNbo9fSUrhL/EK0MbfnFd+0fQ0okQOOJH29svpjrNCmW3mFANhympfFnmGnZA73Ksk2P7eQogqt9KEedZ1lEZe+6TyNd6tFwmbT5YQxCFGQ== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HK2PR0601MB1444; X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 25:ub4f7qbTUPiu0SjOnDPQpp9CCKgcprfxIlkT3PnSmoxw8aJwePTVt7s4bRmnVhld2BiV9EDeCTBLffv+IH+3touIYFGdq4Spx5GgAaZnRpARylc1+rTSclFVlEtit1Cx1hcp7WG/uoLSasqkj1aidD7LYmS8L4MJf6xYWUyh5CHlQ4+BQeAXF6tFeEbHpKp0Y0a6CbdtLKgC9beMATi+J7w5nutaB5/T/EpWexKuEoNAxccywtm64CgQ6gJlfhJ4pmzeTK0+z8TBzZLe1hXlGV3HCVFwk4/am/bk0LMF0kVoFwGB2/xMIe77OyrSJMeYkTfBOaKnPkQSkxvYynN3ude2o6EBSY/oJYLtQq+F6bb8dM4S2p5zWI5NE9d177Ok3Hux/ZCVvbQVF4l+ED0KdGTb0TqlyBIScaa+zZogZbXgyUw5jArHCV0flUGvmrIALjXnFbH9oVX2DQd561u5yWBRdlbzw3wbTtTW4n13ZlDPgJWOQje9/C8wE/u9h3hpbfySz15/A2yAOtEEctnyobygbI2DzTBdsAtX65pnwGFz+ivt+4hHuDNB25AhWVJFHn5cyyS3ja7OMARnYlxQ2RmOI2Aaq85e22YQk3Z5HjrBTdUQFqtFordFIsA1PmugoH5nPIvZG9obbgvLnUTOx5i0jCJsh34Jn+R+vdlNnWWq+Bj6Oqe6N+PgoiBQeG6rxaEBsVyc3u6Ifqlq9b1nog== X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 31:JZGLhVrzv3lslMBRu+M/UjezROVH6Ronw3CMZ4lLtya4hvPMnrvjpww0NkCKpriS7pArYXYgFTLyyaDZ4W5mmvy0c8YkyxBaLQHECfWUzbjBHaO7nZwbIGLzYhoM5wyqjEuPdA1Vlp4CtjPLjNRF28prB4MO1H2uxzvT+76qDRyWq/I84MEqPjYzcQfyttqneY7jzSsjoi6jeVjKIzKgLgT1BzZnB6VV8A0C+XpOKuP9BwhXKHfDwTNuV8GDjAGGcbclcXXcnASxE50iVeGJV8A6CfFJAk4yw2/MOnN1J5o=; 20:447LYKdDMWYFw6e3CIahjrlXt5RMxeDI0vXhT278kwpnpUHc64J/h1JLNrYe1xs8mx2KMYNEaBRJ2lL5ex1b1ocrr8IxTWHP3b3bicypdWJ8/h7Pt9Eta+P4w2teY7t6ER14CYq2dtvnyU3Fq0md6KJ4VEKx2dQIMO39S6FNVtiBY0E3uvWQ+tQq6KM07NjVf4i1WROvByyzdneiSkNABbEkmhuaIzBWML/xpvQkX5PgD2gCW9VmZibjfL2HQI5e52l7gIuJcN7kpFyCVQI5L3a+8OcsOn3nMYIh8/guDh9/dqfH9lneQessVjlfg1HQkLN2+1ixeKVB1WYm49yk9XxmJLxRIB1AZk9cC9VuetbjPUrXIn/TXxR/EYyUBvES+4ksnMhD7/ch1wkEMqKjQ2rkd3ZV6jrExxmdv4nHTzLrPf93QydbJlBNkfaORMQ2QZVuI1AVXWYibzYrU6LLKLcxHVE062OQgnnD4NVxZ1XFAW6EAFkpN654jSW4i7qb X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026); SRVR:HK2PR0601MB1444; BCL:0; PCL:0; RULEID:; SRVR:HK2PR0601MB1444; X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 4:jgr4ILbNN3qtzegiPvt7bL1QV1MPQf+Sh6cvNjz07NYlCUoYGhHde1qoG1oPTgCTsOsoD5d6zCm3ox262W+crnrB3TFJ5wZ6TfgnjoKbNbbL+3rPRzbWFkt2c8wLe5nZyGWcwpsyICL+sCuUfgd8GHABlP0jhQfkQx9T2IEL81Kc675WnEoxQr/dJKvRjE/HO9EYD2Nb+FcgaVdJPSalnQ3AflJygLg2/1WnGPh5ipGB6edZUMsPS0mDYKrmHkEo8Zblx/VkHhqHgIn6u2Q4lSKia8q3jGxdehiaEYkSKVN4lar2YNG4wSdI+rrrc4Brkhc4dYkcKjPQRlk1wKodJ5sgLVl9hmwo/GmNr8/xm43qL2ogeQkP3mgbIpynrLeeUMJea9G14q/Gr3JYc3svUfMTbg9RUQ/g4Nsuy0uLJYI= X-Forefront-PRVS: 01068D0A20 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(19580395003)(83506001)(229853001)(53416004)(42186005)(105586002)(69596002)(7846002)(106356001)(2950100002)(4326007)(86362001)(77096005)(575784001)(50986999)(76176999)(54356999)(8676002)(81166006)(47776003)(33646002)(81156014)(189998001)(2906002)(5001770100001)(3846002)(23726003)(36756003)(6116002)(586003)(66066001)(97736004)(4001350100001)(68736007)(5660300001)(305945005)(92566002)(101416001)(7736002)(19580405001)(50466002)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:HK2PR0601MB1444; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HK2PR0601MB1444; 23:cmkIJEE4okcuvdlIVzoeQC1RCY4vBK9cS/PJJ/F?= =?us-ascii?Q?izQ+KnBw3YxdIEmTLgiVrsU0tanRJxykjyFKpW6Ii9pQuBWLqS3RLOUIFAg2?= =?us-ascii?Q?hwNkv+xt6q95l+fX6caU1AvhPPMAXzOct/7s4cy6Jnxzr56/LXgk3PYRA6M+?= =?us-ascii?Q?JkgoZml4qNdtd9t4KCIeGTOwf/sTjHEXm1f0ML/5cRN7Ke9fT+Y9NbakxRxD?= =?us-ascii?Q?o7xkLZi9idnMoQhPEearGP9pEI2vyGWM27AQ7wiRcVXtkn1n6Oqh+yxZRRpr?= =?us-ascii?Q?/u2+xHegop6rkiM1NV3ZReUOZ6MD5h37dsrBGH4ltCCzOghkTKsGV9HK2hU+?= =?us-ascii?Q?xte3VhvUSOtxGKPZrDSVQOqdhDQ6qKu8lMI4Sh2/ZmasoNWp58LpliEGYKvU?= =?us-ascii?Q?ejoYfVUHiqi6o31T6GQ00opRzlcbFBv8HWFzEf5FPiPcoEzeWWcExHqsbIqq?= =?us-ascii?Q?KeG1tYR+Igfcs1VjyD82Si9Xxc2bFe0hnM4gi73TW4Ie+FFid4NS/xNgITCf?= =?us-ascii?Q?ccHeT3wBSZclop+vg6cGXm76HTtpdghwBqB4gqCIJo094tjW+6Y+QJAc828W?= =?us-ascii?Q?1dH+HUxWtqfdYtaVMRR6Djs+KgN8FZOu5SwA9y+KyX/vBV0RxIsIWdFX329P?= =?us-ascii?Q?gRhA12NvYzRS6MrjcVT5KB3lgNHe2zSuterTU+2QcNmKUqaIQTbdbECJ80AB?= =?us-ascii?Q?XcjgFxx/IdLQ/ALfzvPhskzAxm4zNzNVzZhIKHU8DQG9XGetkVuWi16oIWLR?= =?us-ascii?Q?r3WKw55I+t60zf0cRN/RmS8mbkCqpcUufqr7c2jJElcmBsfAD4RdKHZox8cT?= =?us-ascii?Q?BTzQxw3Pat+dLKl5Om1uDiEtFpmONmHVBB6rMNmayJ5XKHq9H/fSujkXRW67?= =?us-ascii?Q?coLa9LOTFolp+hzAE80E6oM5A1+2UJO41Qhd8jojZEaeNV/Gzsn4yNbP0qXG?= =?us-ascii?Q?PlX8Zidda8DQ6CBORyHEifkqbqGNvVIilbLunZTxSy/0WhK83qoLWesonjDp?= =?us-ascii?Q?N2FAZdkW56AvAsel7yg+pn3FMqN2WtaS4jpdt3UQj7ir+5vyVQ2Iob2ijJi4?= =?us-ascii?Q?VTDyHHZFvnoxjpwkuUzVopXfYbwPcIIJqGtt6/Lt0mAqaj/caZg/Azl+3PDB?= =?us-ascii?Q?fn5368D4J1IEKj8+UAit9GN+VwOxPsZrOtN4ia1k5wJP0wRGxbkmEQIOrI+a?= =?us-ascii?Q?pCsPEy/WKebgRtlvUkPY8x+YtU6IDAMTFl4ZX?= X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 6:hI2HYeOEfGFOgFrrdUdglvvokofrxqlTzepYY9eCGO55oXNS7O7r4x59DILB5S8Klos10f2lG3sEuQW7Xot6pl4qxlW44cZkoFRpNLVhDpxzh76nCOQefqwADW7xr6m+i2XLIi569cZ5kozZRt7H2HWM+zk+G5F0XgaB9tZe07yBo8tcXdSxc3uJ8LCM1kh2GapHhimZYfPxS4KF/RwcZCd0KL2aF8qThnykSfJ/WYQ5TDGDHejeErJvStlqt1vfGrEEGAu6Zd3fXY1nekS4hzatYiaonuTVNiwR3WoMN54u+Nl2X41HW8ZyMlXXI+u+CxvITuJfjA77HKkUraP5ffRBtXmPngDp5hNA1K5gM/c=; 5:/u24WklwkmsVdUOUiea5ONsHRofaBWTKUBsqA32HrF3G+GXuio8+yRRpA33OK0alkuJaV3fFYN8TPtz3HGuNUbxnrYx/YvA0VSLD6niCDucWR2Q4Aj7M7G5MzR39B03BRigXdck2XryPMVHn6fwXpw==; 24:TsjsWebbwq1BPw8FZ5mGRgtGPXYXT5g3V1gqHKC/pHVD4CQnjPbjlW4GV6zYp64UZ14pjcKDnL3XPBJmhMGyRvYOqV8GyDkNcWcJk3kV1/Q= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HK2PR0601MB1444; 7:8Z8y96/NDoXqwuTgM3PpOYT8nJ6ZyKmYKWCn3XfbTbINi276aLKCSHVlAXibW0ZnoHDn0PpsCR16kSJY1kAxyM2/tLUAqS3wqo4hmHsghnDwRb8XFFh5k41i1SQ0/oAX2Ufl68W7r/6HXa7f04Kj6sDD3mpVXJRsllZnOopk/b4x9drO0+8iIs2vKCNT0ffifPwJHmOG0g2eAY+LYPpl/Spu0yuN+iqJK7AD764kr92kGGc5avcoEiRtj4YZD8lQd6sCnRCsOkVFNTbUg3Z6posFaGub7tnR2Ghu9/dX6C/u5wRSZ72vcsRZwuh1wpzt8L480YUkAMRkflRSDhGHe8sK8tq2tCjWWeOPGiB5TdU=; 20:ObXX+trl4jkNe+oISEJ+kxtJuMa2TZvyEN71iHbBqNIrDWQDxoCSAcAEQ7hYE8uzGmPC25WPMKppernU7odUAr4aIlaJUvotKkDoZJV2ICILTTABcIJGwMP51G6LCqblc+T9K7EBooZqqfaCctAlNamBLKZPQSw6ShreW6Y/7ZE= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2016 01:20:19.1608 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR0601MB1444 Cc: Linux-ALSA , Simon Subject: [alsa-devel] [PATCH 1/2] ASoC: core: add component_dev_list on Card X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP From: Kuninori Morimoto Current Card has Codec list (= codec_dev_list), but Codec will be removed in the future. Because of this reason, this patch adds new Component list in Card. In the same time, current Card has AUX list (= aux_comp_list). This patch replaces it by Component list and new flag (= has_auxliary) too Signed-off-by: Kuninori Morimoto --- include/sound/soc.h | 7 ++++--- sound/soc/soc-core.c | 21 ++++++++++++++++----- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/include/sound/soc.h b/include/sound/soc.h index 1ed9371..69f2ebf 100644 --- a/include/sound/soc.h +++ b/include/sound/soc.h @@ -807,9 +807,10 @@ struct snd_soc_component { unsigned int ignore_pmdown_time:1; /* pmdown_time is ignored at stop */ unsigned int registered_as_component:1; + unsigned int has_auxiliary:1; /* for auxiliary component of the card */ struct list_head list; - struct list_head list_aux; /* for auxiliary component of the card */ + struct list_head card_list; struct snd_soc_dai_driver *dai_drv; int num_dai; @@ -1148,7 +1149,6 @@ struct snd_soc_card { */ struct snd_soc_aux_dev *aux_dev; int num_aux_devs; - struct list_head aux_comp_list; const struct snd_kcontrol_new *controls; int num_controls; @@ -1171,6 +1171,7 @@ struct snd_soc_card { /* lists of probed devices belonging to this card */ struct list_head codec_dev_list; + struct list_head component_dev_list; struct list_head widgets; struct list_head paths; @@ -1544,7 +1545,7 @@ static inline void snd_soc_initialize_card_lists(struct snd_soc_card *card) INIT_LIST_HEAD(&card->widgets); INIT_LIST_HEAD(&card->paths); INIT_LIST_HEAD(&card->dapm_list); - INIT_LIST_HEAD(&card->aux_comp_list); + INIT_LIST_HEAD(&card->component_dev_list); } static inline bool snd_soc_volsw_is_stereo(struct soc_mixer_control *mc) diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index c0bbcd9..2a00b5e 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c @@ -1076,6 +1076,8 @@ static void soc_remove_component(struct snd_soc_component *component) if (component->codec) list_del(&component->codec->card_list); + list_del(&component->card_list); + if (component->remove) component->remove(component); @@ -1448,6 +1450,8 @@ static int soc_probe_component(struct snd_soc_card *card, if (component->codec) list_add(&component->codec->card_list, &card->codec_dev_list); + list_add(&component->card_list, &card->component_dev_list); + return 0; err_probe: @@ -1706,7 +1710,8 @@ static int soc_bind_aux_dev(struct snd_soc_card *card, int num) } component->init = aux_dev->init; - list_add(&component->list_aux, &card->aux_comp_list); + component->has_auxiliary = 1; + return 0; err_defer: @@ -1722,7 +1727,10 @@ static int soc_probe_aux_devices(struct snd_soc_card *card) for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST; order++) { - list_for_each_entry(comp, &card->aux_comp_list, list_aux) { + list_for_each_entry(comp, &card->component_dev_list, card_list) { + if (!comp->has_auxiliary) + continue; + if (comp->driver->probe_order == order) { ret = soc_probe_component(card, comp); if (ret < 0) { @@ -1746,11 +1754,14 @@ static void soc_remove_aux_devices(struct snd_soc_card *card) for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST; order++) { list_for_each_entry_safe(comp, _comp, - &card->aux_comp_list, list_aux) { + &card->component_dev_list, card_list) { + + if (!comp->has_auxiliary) + continue; + if (comp->driver->remove_order == order) { soc_remove_component(comp); - /* remove it from the card's aux_comp_list */ - list_del(&comp->list_aux); + comp->has_auxiliary = 0; } } }