Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1606312pxb; Mon, 11 Oct 2021 09:21:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyDvt9sMc8xQ/GeBcUnsoaiFPfqIl99LsFnpSDncUdW0LxHWAoVutS6BPdiiraSb1JF2ve1 X-Received: by 2002:a17:906:270e:: with SMTP id z14mr26452311ejc.414.1633969267450; Mon, 11 Oct 2021 09:21:07 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1633969267; cv=pass; d=google.com; s=arc-20160816; b=G0i7H5nPAq+XvC0OOKG02peZr2I/v+eG0jfIx2aMA1TE6s120yD+uYsZO7ZgAaIsm4 tpXaNuVNnLLCNAc6bQDQg4Bx6C2Roy9MaV4rar4/ICG8epiGXvQFuWza2lQ/UTWuZ/yM tNktXbtmep5OrWFpjzrBo7yI/G84/x29suRyVBmi0RqCe/KeG7EkC6WOFlcIbu85VUzy SBdMz2/p7aTq2+cvJoGTH2I1fAwdR6SKGls8/IVMWqgQ0ffo5oq1+Jmry/MykHAku0EV XXMySJH/8IqISxjsxtupKbBuNgNrt+YVfZGjBiGgY1Mmozv5lW55BrfttqRuRucJorC+ zzIg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-language:in-reply-to:user-agent:date:message-id:from :references:cc:to:subject:dkim-signature; bh=BZiLSZd5gI0xbxSmL3i0Kfx3wb+ajEfUfax68v3dvAw=; b=GxvLfFxYUQXH8vXL7EA45gOAyLXdE8MFW55udbxxOhiavwSsFAcE+C3dtIwhNMlyBl 2ZFNZANLr9w0RAORAmQG6fsOWf8/q6z9qMSqDzy1A8lj3vRKW1b9bFhbeZRWBmWQpYU5 JYVEMvSvl7FCV/5inEyzyaXivgqGA6TtaKcj7NilmAyUyZ4nljExT3fLW9ZClNmG056+ 4UmzZUvQtntInIOoLuL/LM2W2Hv/lpSIwILPJ9pZOGTqIAZMjJlrNFlXw28oA+uw0Sw3 tXF7eYvfMsVbMSc0ERm6vKixGDNfj1zGn96pVTn36dq4j45Es2duZddXruzKIaObobgt TiKg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b="JQur6/gZ"; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 13si11235808ejr.788.2021.10.11.09.20.42; Mon, 11 Oct 2021 09:21:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b="JQur6/gZ"; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230444AbhJKL1I (ORCPT + 99 others); Mon, 11 Oct 2021 07:27:08 -0400 Received: from mail-mw2nam10on2049.outbound.protection.outlook.com ([40.107.94.49]:24160 "EHLO NAM10-MW2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S236227AbhJKL1H (ORCPT ); Mon, 11 Oct 2021 07:27:07 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JEO4RzFCavzoRoqEBKklnYTemF4n5j3qihsU3aPKegf8q6x+WHteVlC1MkUkE824yH+T0gs3x5wHGU3uz+m0wm0CwN3m2f87IDbl3m7vJJ/IrVdMuunswaIL3vG7uqiM8u/7apyz/m7f/mpUKQ758bCu4dTDkis8OCWBL3+dtpAPdyRFKiF1EsIOIroTe06qFiT0q7EogJ9dZ20W0ykC8iATiWygJpXMhRQZ2ykkeGVU+ZgwdUM0j14LlhmTod/swXnewFTwWOv9mTr5Cx9VROCrvZRfwystork7fCKGNaiHrME2AZIMbxrkY5cqCZTGauaBn8OMKn4FCvN+jeVB3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=BZiLSZd5gI0xbxSmL3i0Kfx3wb+ajEfUfax68v3dvAw=; b=LVdugOb0hmxy460tC8oVSM66c56Ov19axwq5H+3t8BmzWlw/CsW6bqBJZCjA9IIrW8tfUB5PEbC40fZJ4DOrQVLu0ffTsjAHlrzC9uMSE076TZYLFd4lNSmvsx078bHl4dj573JMkXIz0SOOT5usvZn38UQRI77ipbfMmwgweZFr0/oWooDPoM41CtLrZWWUy7cBchd2c1cVZ+f88zgavynm+P661Mb1lL9LtYPGX+WWGLyLrpAAT5rDMSecIxQhuBVmsfhRZ0bCeoE9D5NZH9YU55gXyi+g/YHV5CKzx9JL+9EruQnc2dcE1ROqiZzUEYVuUbc9blBTtH0FQyyqcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BZiLSZd5gI0xbxSmL3i0Kfx3wb+ajEfUfax68v3dvAw=; b=JQur6/gZhHo1/eZVya1s5FDgV2HoCcto/VKs3mmW8/P9QIjwI1eCVDzP+NqIBrmPNQpANApu+OjO+pxRbB8J8HsPQodJqR31/el06bZT+wIUSEdlKPy3mVrrVXRCdwixbHI85NG/guFC+V9NYLEmCF4lx9rhMLiAl7sKDjONncU= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=amd.com; Received: from DM6PR12MB4123.namprd12.prod.outlook.com (2603:10b6:5:21f::23) by DM5PR12MB1849.namprd12.prod.outlook.com (2603:10b6:3:107::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.22; Mon, 11 Oct 2021 11:25:05 +0000 Received: from DM6PR12MB4123.namprd12.prod.outlook.com ([fe80::e887:8ff6:34b5:99b3]) by DM6PR12MB4123.namprd12.prod.outlook.com ([fe80::e887:8ff6:34b5:99b3%9]) with mapi id 15.20.4587.026; Mon, 11 Oct 2021 11:25:05 +0000 Subject: Re: [PATCH 02/13] ASoC: amd: add Yellow Carp ACP PCI driver To: "Gong, Richard" , "broonie@kernel.org" , "alsa-devel@alsa-project.org" Cc: "Deucher, Alexander" , "Hiregoudar, Basavaraj" , "Dommati, Sunil-kumar" , "Limonciello, Mario" , Liam Girdwood , Jaroslav Kysela , Takashi Iwai , open list References: <20211011055621.13240-1-Vijendar.Mukunda@amd.com> <20211011055621.13240-3-Vijendar.Mukunda@amd.com> From: "Mukunda,Vijendar" Message-ID: <95e0a6c8-c4fa-6471-d19b-27fd8e5599f7@amd.com> Date: Mon, 11 Oct 2021 17:13:50 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-ClientProxiedBy: PN2PR01CA0082.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c01:23::27) To DM6PR12MB4123.namprd12.prod.outlook.com (2603:10b6:5:21f::23) MIME-Version: 1.0 Received: from [10.129.9.123] (165.204.159.251) by PN2PR01CA0082.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c01:23::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.20 via Frontend Transport; Mon, 11 Oct 2021 11:25:01 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1919a799-0838-41cc-f6d2-08d98ca9c659 X-MS-TrafficTypeDiagnostic: DM5PR12MB1849: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:626; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qccWs/BWAGUkN94WJ2nUSvZL/unBVqLQYtMDr2O91hFpsXejr2Wixr6plxItLrohsrN7sjpY/15oHnu323D20DEVyXyZ6UqLHQ1aYt51+DOw+WIM7yCJ/2le96cYOlHtxN/zM8EAK0fiL2c8Sx7b7EMQGQwZCw/KUkYhz/9mEhn1WDR8NKkc6gMlfLpTYVuUzkBN56POKkO89EbFJQBNb1N8ra1Jyms56ErkCV/GWtN0+3v0ZKivSuLbUqHcv5rcuhr3Pa0bC6XP5dkE561BBMAcE1JI1bfHUx1HzdQkwp2l9zqHbEHfShtxXMNapTRw01NxVVM9pSY1CNeBacv3UIST9FGGFM7b0lG+D+YdnLJy+PZYn3U8pEQCQkNCVxtsn224u3VSIG99N9m/0Y41HJKJDFQKnff27NwLUPC+JGGV1Z21h0Qpb6ZnQXt+UB8kkotyWIVX5fydXc6icI6HK1f9pUhtVMg7we2c6EF/GoeiYsazw2/io4qE6lfwD8Xzmm3+y8wYtmGc23ghT7mYnztioPdwry3mrKvdIOGf1yJv1lhaSI4IrPPsoOGsUE7p0dBEsMaG6sNPCwrfNpPHjYBDjGXCxmbIHuQJoiL6/Gf7YbhbGe+Zl/tkmMldFnoxCz6Dx4UctDWp964DoiV5Ar0OLQHKv21cpM50LLCXZd/jr0baS+U1uGik0Nl9nK/4VN5xDLNbhlKNJUcr0BM0h3NJZ2oLiaxexqn/B4Kt/O940fDuGL2pLBC0FH1KcJFo X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB4123.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(66556008)(66476007)(83380400001)(31686004)(86362001)(66946007)(31696002)(2616005)(956004)(36756003)(2906002)(53546011)(186003)(4326008)(6486002)(8676002)(508600001)(5660300002)(8936002)(26005)(316002)(54906003)(110136005)(16576012)(6666004)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y1E5OGo4WXZuSURVZTl5YWkxUm9UOGNsSjBWK3gvWitHTTg1NSs0OVVSVG53?= =?utf-8?B?dXhWRVQ0bzQxNzlveWh3cTNBZmsvTVFrakQ4azFjTXpla0hKRkxhK1JEK1VT?= =?utf-8?B?NlkxNTAzdUJmSVEwZm1vZDI2U2tyME9zZVlERXUwbUs0eUxXMUlSd1N2QXZ3?= =?utf-8?B?MTl1QllzRFp6cFVrQlpWMVJMbnNuVEorWlB3UDJ4a3RLL2FUbitsOU9CMUVi?= =?utf-8?B?V3lCa3NobCthZlArYTVCYWNKZWNsajByRDJ1U0FXYmhWeHhkenVJQzl5Tnp6?= =?utf-8?B?dG9za25kSWNuZlBndXhrT0lPbG1NRHJSNDBVYnFhTGxHMGFhcFJYRzlHR2t6?= =?utf-8?B?ZkJZZW1CdnoyeC91SlI0UlJZTlAzeHFLaTUyS2FHeXcyYWE3eE1XbDJoUDB5?= =?utf-8?B?cmlKZC8vcHhqSzcvMlBORjQ0aHB4LytQL3VoNXp6eEFpUE9rTDR0Zk9UVysv?= =?utf-8?B?UmRScWM5ejBlc2tCVVlXY0htbkdkT2dZTS9NeEs1SGxDNVRjYTV6cEtCd0V3?= =?utf-8?B?YzBhYzdRZFNBYWkwVGdmN1ppemlDQk1jTFFZckJKVFB5amN6UXR0U216MG14?= =?utf-8?B?TkUycjBUZTUrVUQwT0wrd29LeUVQWHZqeXJRamJrUUhQa08yZGJoR1ZwcTlM?= =?utf-8?B?b3d1aEdRdXdxRG40SzBtUnpNTDdrdWEzaHVvbEdHOTlxUUh2Nm1Db1BNM3Y0?= =?utf-8?B?NjZZVnBqWUZVSmdiYkFnTThOVXhnYXZ1VWg0M1IvNnBlMERHOCtpSytGUXJh?= =?utf-8?B?WXBwaUp2bkczanUvYjNFK0VaU3dDZjBUY3JVci9RNVJVNUxnaWd0R05qbXdr?= =?utf-8?B?ZTlnU2V1c21GRDdYS2hscEkwcHh2MDl5cDFvam8vd0ZRcEYxaCtzNGNsUXZY?= =?utf-8?B?QXVGMXlGOTZmK1YzV2p0NVZ1Q05mUW02K2tJZFZhRWt6N042SWdtTkF5OEpo?= =?utf-8?B?cENPUzJNVU9RYWRuZWhld2t2S3FFSVIwMXR6WExadFNzRk5nTUU3RnVsL0xT?= =?utf-8?B?cVpPZk9LZy91blQxOHFMOGZjMUlOZnhEZEN2RGJLdFlHZk9VQ3Zmb0JUMWIz?= =?utf-8?B?dWhzbEZUUDJ4Y0lEbGRtV1VHVkMrQTR4Q2FLUThLbVNyeEhranZTdTBZYS9H?= =?utf-8?B?UFVueEszZjlIbzdLSTk1QzBOY1g2V09LMmpPNjdsaGsrRG1TTEtkQXdoMFNi?= =?utf-8?B?ZlZORWd0T0NCZnJ3TjZBdWF2RTFkcENreldHeHhsRVgvdFhUVk9GMHR2MGl5?= =?utf-8?B?d2RwNTNFWHhGb3pBRXJwejBpRndyNUhGdks0UjJZMjc4bWI5N1VXVGNqY2VV?= =?utf-8?B?NmVQT2UxNkpKRHgrTGdxNE5vbkdxRXJKcm5nYm9tb3J5UE5mZUFGczFaLzdE?= =?utf-8?B?cENRRFhoRHAvLzVBbWJkZXNUdFduU2VMTHpWQXR5QmFYVDA4U3RtMk5QeHVE?= =?utf-8?B?QURRc0IzTkFIUnhXc2RwdFRnSnQ2VHJkbnhJWnhJUTIzc2pXOTZWNHQvM05v?= =?utf-8?B?TkRwc3BkcXh5Q0tOaU5SWlRNV0RoTVRZYVJ3VjRvSDJla3doOXFKVllMZjZ3?= =?utf-8?B?UGNab1RUcWpodGtQalRhcXM2MTgwQStXNEZZSXo1bWZEbS9KZEQzVU5hdkps?= =?utf-8?B?VTRraXRoN2E4WHlVVm9MQnY1ZjVNejh5c09MaTZoVDZ4Wjl0R0lUNmg2UE4w?= =?utf-8?B?VFRLTFBUcWIwcEVvTGV4TWlUSXhZSW5RaVk4akx3enRMYlhTd3pYMVE3SnVS?= =?utf-8?Q?jeHRr2j7UvcHpOus49Hln64Ou841hQxtR8Gu0Ta?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1919a799-0838-41cc-f6d2-08d98ca9c659 X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB4123.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2021 11:25:05.5688 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JR8oXakqCYnZtPJrKOyQsYMu6C3YpchB5Omy9Gnw1zQfygv0moM3oHn1NhhwsD41uma1L65EooYQja5RfU+gng== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1849 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/11/21 4:31 PM, Gong, Richard wrote: > > On 10/11/2021 12:56 AM, Vijendar Mukunda wrote: >> ACP is a PCI audio device. >> This patch adds PCI driver to bind to this device and get >> PCI resources. >> >> Signed-off-by: Vijendar Mukunda >> --- >>   sound/soc/amd/yc/acp6x.h     | 21 +++++++++ >>   sound/soc/amd/yc/pci-acp6x.c | 89 ++++++++++++++++++++++++++++++++++++ >>   2 files changed, 110 insertions(+) >>   create mode 100644 sound/soc/amd/yc/acp6x.h >>   create mode 100644 sound/soc/amd/yc/pci-acp6x.c >> >> diff --git a/sound/soc/amd/yc/acp6x.h b/sound/soc/amd/yc/acp6x.h >> new file mode 100644 >> index 000000000000..62a05db5e34c >> --- /dev/null >> +++ b/sound/soc/amd/yc/acp6x.h >> @@ -0,0 +1,21 @@ >> +/* SPDX-License-Identifier: GPL-2.0+ */ > Use // here Will fix it and post the new version. >> +/* >> + * AMD ALSA SoC PDM Driver >> + * >> + * Copyright (C) 2021 Advanced Micro Devices, Inc. All rights reserved. >> + */ >> + >> +#include "acp6x_chip_offset_byte.h" >> + >> +#define ACP_DEVICE_ID 0x15E2 >> +#define ACP6x_PHY_BASE_ADDRESS 0x1240000 >> + >> +static inline u32 acp6x_readl(void __iomem *base_addr) >> +{ >> +    return readl(base_addr - ACP6x_PHY_BASE_ADDRESS); >> +} >> + >> +static inline void acp6x_writel(u32 val, void __iomem *base_addr) >> +{ >> +    writel(val, base_addr - ACP6x_PHY_BASE_ADDRESS); >> +} >> diff --git a/sound/soc/amd/yc/pci-acp6x.c b/sound/soc/amd/yc/pci-acp6x.c >> new file mode 100644 >> index 000000000000..2965e8b00314 >> --- /dev/null >> +++ b/sound/soc/amd/yc/pci-acp6x.c >> @@ -0,0 +1,89 @@ >> +// SPDX-License-Identifier: GPL-2.0+ > It's correct to use // here. >> +// >> +// AMD Renoir ACP PCI Driver >> +// >> +//Copyright 2021 Advanced Micro Devices, Inc. >> + > Use /*  */ rather than // Will fix it and post the new version. -Vijendar >> +#include >> +#include >> +#include >> + >> +#include "acp6x.h" >> + >> +struct acp6x_dev_data { >> +    void __iomem *acp6x_base; >> +}; >> + >> +static int snd_acp6x_probe(struct pci_dev *pci, >> +               const struct pci_device_id *pci_id) >> +{ >> +    struct acp6x_dev_data *adata; >> +    int ret; >> +    u32 addr; >> + >> +    /* Yellow Carp device check */ >> +    if (pci->revision != 0x60) >> +        return -ENODEV; >> + >> +    if (pci_enable_device(pci)) { >> +        dev_err(&pci->dev, "pci_enable_device failed\n"); >> +        return -ENODEV; >> +    } >> + >> +    ret = pci_request_regions(pci, "AMD ACP3x audio"); >> +    if (ret < 0) { >> +        dev_err(&pci->dev, "pci_request_regions failed\n"); >> +        goto disable_pci; >> +    } >> + >> +    adata = devm_kzalloc(&pci->dev, sizeof(struct acp6x_dev_data), >> +                 GFP_KERNEL); >> +    if (!adata) { >> +        ret = -ENOMEM; >> +        goto release_regions; >> +    } >> + >> +    addr = pci_resource_start(pci, 0); >> +    adata->acp6x_base = devm_ioremap(&pci->dev, addr, >> +                     pci_resource_len(pci, 0)); >> +    if (!adata->acp6x_base) { >> +        ret = -ENOMEM; >> +        goto release_regions; >> +    } >> +    pci_set_master(pci); >> +    pci_set_drvdata(pci, adata); >> +    return 0; >> +release_regions: >> +    pci_release_regions(pci); >> +disable_pci: >> +    pci_disable_device(pci); >> + >> +    return ret; >> +} >> + >> +static void snd_acp6x_remove(struct pci_dev *pci) >> +{ >> +    pci_release_regions(pci); >> +    pci_disable_device(pci); >> +} >> + >> +static const struct pci_device_id snd_acp6x_ids[] = { >> +    { PCI_DEVICE(PCI_VENDOR_ID_AMD, ACP_DEVICE_ID), >> +    .class = PCI_CLASS_MULTIMEDIA_OTHER << 8, >> +    .class_mask = 0xffffff }, >> +    { 0, }, >> +}; >> +MODULE_DEVICE_TABLE(pci, snd_acp6x_ids); >> + >> +static struct pci_driver yc_acp6x_driver  = { >> +    .name = KBUILD_MODNAME, >> +    .id_table = snd_acp6x_ids, >> +    .probe = snd_acp6x_probe, >> +    .remove = snd_acp6x_remove, >> +}; >> + >> +module_pci_driver(yc_acp6x_driver); >> + >> +MODULE_AUTHOR("Vijendar.Mukunda@amd.com"); >> +MODULE_DESCRIPTION("AMD ACP Yellow Carp PCI driver"); >> +MODULE_LICENSE("GPL v2");