Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp193428imm; Thu, 10 May 2018 18:28:27 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqcDveeRWiMpKw3G3K9KFt1lr1CQHhVEn7wUlygPY+Y2L+gQJ2OQyyRXRLh11BOPjR7hQwa X-Received: by 2002:a62:f20d:: with SMTP id m13-v6mr3492245pfh.170.1526002107695; Thu, 10 May 2018 18:28:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526002107; cv=none; d=google.com; s=arc-20160816; b=PNOu5Y7ZFO494o3HQn0UKK/jrJ+2E2M9TIzVeaiGh8uFHO2f17+dwLtYWnk3PkG4p6 vIsA3+4nblYMJFhGHwJuiKNIQsu/xOjjoRMY/7HWZnW1vizjLQIglA2dhiPnHfT9szNw U1k+OeDjgiLAE2pSgVTtE6xpWVZLEUWHp27Hz+fkGMJ0rRNzn8v2otQ1KdqQLb4pp2Uo y/YsNFZzGU8OSO5crgpWfBjQeuJ/SxIpnLZLAX+RL67DDRq8d7O44EzhinT8WbNd5yc5 jcXBBBfisJurkrKCw+HZeAjVO1B4qGwfvbYJ+uHsBl16RrBF9ddlJCP9yT2ezKIBnRMG 4ytQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=++tcN3ttiTXFSGrgEbQD15diISC2Gp7mS2pzYbVqzlg=; b=l6KMy9odW49VlFcPnYDmlTlLbB0Ary9jBpz+Gph/72XQEESF1ySpmJ2mh9TjRIZgm0 HRKlhAf/1us7fqgEW/jGP82LwptKC61Whu4RY4/T/9BQK83/SOcm8PyMFXDtJl78QghR 8uXPgJB52sj/Co9TXvn/jIrZEGx6tMW/73hJ5fUqunKA+8U92mGwsjkfRZyVUg4ULGiE 6omT0cDQzZwNUgA3u/rGq1/TQ5NwOdgXTc+kKOcZg9eghpgUq/bB1ySiEoUyd7Gs+XV7 q0cWoAdOQPW4HWkPEmOjcNNRRuSsioaCF9O6FpalFU2bRSK3w+jSn5PH2l66a3gF1QAK 88Vw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b19-v6si2017745pfh.358.2018.05.10.18.28.13; Thu, 10 May 2018 18:28:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751943AbeEKB2D (ORCPT + 99 others); Thu, 10 May 2018 21:28:03 -0400 Received: from smtp-proxy004.phy.lolipop.jp ([157.7.104.45]:35613 "EHLO smtp-proxy004.phy.lolipop.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750830AbeEKB2C (ORCPT ); Thu, 10 May 2018 21:28:02 -0400 Received: from smtp-proxy004.phy.lolipop.lan (HELO smtp-proxy004.phy.lolipop.jp) (172.19.44.45) (smtp-auth username m12129643-o-takashi , mechanism plain) by smtp-proxy004.phy.lolipop.jp (qpsmtpd/0.82) with ESMTPA; Fri, 11 May 2018 10:28:00 +0900 Received: from 127.0.0.1 (127.0.0.1) by smtp-proxy004.phy.lolipop.jp (LOLIPOP-Fsecure); Fri, 11 May 2018 10:28:00 +0900 (JST) X-Virus-Status: clean(LOLIPOP-Fsecure) Subject: Re: [PATCH v5 00/13] ALSA: hda/ca0132: Patch Series for Recon3Di and Sound Blaster Z Support To: Connor McAdams Cc: Jaroslav Kysela , Takashi Iwai , =?UTF-8?Q?J=c3=a9r=c3=a9my_Lefaure?= , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org References: <1525800015-2920-1-git-send-email-conmanx360@gmail.com> From: Takashi Sakamoto Message-ID: <95282579-08c1-bf71-e303-9fa8efb1873f@sakamocchi.jp> Date: Fri, 11 May 2018 10:27:59 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <1525800015-2920-1-git-send-email-conmanx360@gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On May 9 2018 02:20, Connor McAdams wrote: > This patchset adds support for the Sound Blaster Z and the Recon3Di. > > In order to figure out how to get these cards to work, I made a program called > QemuHDADump[1], which uses the trace function of qemu to see interactions with > the memory mapped pci BAR space of the card being used in the virtual machine. > With this, I obtain the CORB buffer location to get the command verbs, and then > dump them each time the buffer rolls over. This program may be useful for fixing > other HDA related driver issues where there is no documentation for the device. > > So far, I have been able to get all features supported on the Sound Blaster Z > and the Recon3Di. All output and input effects work, all inputs and outputs > work, and just about anything else I can think of. I have also added new > controls in order to select the new inputs and outputs, as well as controls to > change the effect levels and presets. > > I have also added the ability to use firmware taken from the Windows drivers of > both the Sound Blaster Z and Recon3Di. I am trying to get into contact with > Creative to get permission to redistribute these along with the current > file included with the Chromebook, but they have not been very responsive. > Luckily, the cards work with the Chromebook firmware just fine, although I > believe there has to be a reason they have different firmware in Windows. I > will not link to the firmwares here, but if you look up my thread on Creative > Labs forums, you will find the link to download the firmwares there. > > I am willing to help get the other non-working cards such as the ZxR and the > newer AE-5 working too, but I will need someone willing to run QemuHDADump in a > virtual machine in order to get the commands. > > So, in summary: > -This patchset makes the cards work better than they did before (they really > didn't work before) > > -This patchset leaves the original chromebook related stuff alone. > > Thanks. > > [1] https://github.com/Conmanx360/QemuHDADump > > Bugs: > ------------------------------------------------------------------------------- > Recon3Di: (Reported by Mariusz Ceier) > ******************* > -Occasionally switching between rear and front mic breaks the input until > computer is shutdown or put to sleep. > > -Surround Sound works, but is inconsistent. Sometimes, just updating the volume > fixes it, and sometimes, it requires a restart. > > Sound Blaster Z: > ******************* > -none that I'm aware of. > > > Version changes: > ------------------------------------------------------------------------------- > v1: > ******************* > -Massive patch formatting failure, please ignore v1. > > v2: > ******************* > -Fixed patch formatting failure. > > v3: > ******************* > -Fixed mem_base unmap, instead of checking for QUIRK_SBZ on exit, have it check > if the area is mapped, and if it is, unmap it. Also make it unmap after all > other commands are finished. > > -Change notification of failure to map mem_base from codec_dbg to codec_warn, > and use codec_info to tell the user that their card might have been incorrectly > identified as a Sound Blaster Z. > > -Remove commented out commands in sbz_exit_chip function, only reintroduce them > when their functions are defined. > > v4: > ******************* > -Split patch into smaller pieces. > > -Added const to alt_out_presets array. > > -Fixed command that was commented out and only put it in when > it was actually used. > > v5: > ******************* > -Fixed issue identified by kbuild test robot, where patch 12 didn't compile > individually. > > Connor McAdams (13): > ALSA: hda/ca0132: R3Di and SBZ quirk entires + alt firmware loading > ALSA: hda/ca0132: Add pincfg for SBZ + R3Di, add fp hp auto-detect > ALSA: hda/ca0132: Add PCI region2 iomap for SBZ > ALSA: hda/ca0132: Add extra exit functions for R3Di and SBZ > ALSA: hda/ca0132: add extra init functions for r3di + sbz > ALSA: hda/ca0132: update core functions for sbz + r3di > ALSA: hda/ca0132: add dsp setup related commands for the sbz > ALSA: hda/ca0132: Add dsp setup + gpio functions for r3di > ALSA: hda/ca0132: add the ability to set src_id on scp commands > ALSA: hda/ca0132: add alt_select_in/out for R3Di + SBZ > ALSA: hda/ca0132: Add DSP Volume set and New mixers for SBZ + R3Di > ALSA: hda/ca0132: add ca0132_alt_set_vipsource > ALSA: hda/ca0132: Add new control changes for SBZ + R3Di > > sound/pci/hda/patch_ca0132.c | 3057 ++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 2941 insertions(+), 116 deletions(-) I reviewed the above patches. Reviewed-by: Takashi Sakamoto There're some points to improve such like read-only memory objects, and I'll post some patches for them after merging this patchset. Thanks Takashi Sakamoto