Date: Mon, 14 Jul 2014 04:44:15 +0300 From: Alexander Motin <mav@FreeBSD.org> To: Adrian Chadd <adrian@freebsd.org>, Mark Johnston <markj@freebsd.org> Cc: "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org> Subject: Re: svn commit: r268584 - head/sys/dev/sound/pci/hda Message-ID: <53C335EF.2090606@FreeBSD.org> In-Reply-To: <CAJ-Vmo=hsK6k6VPcig69srL%2BV_AO5yQo4z%2B2XycvGB6_fRwSGg@mail.gmail.com> References: <201407131031.s6DAVTja093433@svn.freebsd.org> <CAJ-Vmo=hsK6k6VPcig69srL%2BV_AO5yQo4z%2B2XycvGB6_fRwSGg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 13.07.2014 21:50, Adrian Chadd wrote: > So I have an X230 and a T400 - both require fiddling of the default > sound unit sysctl when I want to use headphones. > > Does this above patch outline what I need to do to get it working dynamically? As a quick and easy solution -- quite likely yes. Proper general solution for all of those laptops, and not only, would be to rewrite the concept of default unit in sound(4) to allow it be switched during playback/record, and separately for playback/record paths. HDA driver is already able to provide all information about connected devices, number of their channels, etc, but there is just nothing above it to use that information. :( > On 13 July 2014 03:31, Mark Johnston <markj@freebsd.org> wrote: >> Author: markj >> Date: Sun Jul 13 10:31:29 2014 >> New Revision: 268584 >> URL: http://svnweb.freebsd.org/changeset/base/268584 >> >> Log: >> Add a headphone redirection quirk for the Lenovo G580. >> >> MFC after: 1 week >> >> Modified: >> head/sys/dev/sound/pci/hda/hdaa_patches.c >> head/sys/dev/sound/pci/hda/hdac.h >> >> Modified: head/sys/dev/sound/pci/hda/hdaa_patches.c >> ============================================================================== >> --- head/sys/dev/sound/pci/hda/hdaa_patches.c Sun Jul 13 09:34:59 2014 (r268583) >> +++ head/sys/dev/sound/pci/hda/hdaa_patches.c Sun Jul 13 10:31:29 2014 (r268584) >> @@ -350,7 +350,8 @@ hdac_pin_patch(struct hdaa_widget *w) >> (subid == LENOVO_X1_SUBVENDOR || >> subid == LENOVO_X220_SUBVENDOR || >> subid == LENOVO_T420_SUBVENDOR || >> - subid == LENOVO_T520_SUBVENDOR)) { >> + subid == LENOVO_T520_SUBVENDOR || >> + subid == LENOVO_G580_SUBVENDOR)) { >> switch (nid) { >> case 25: >> patch = "as=1 seq=15"; >> >> Modified: head/sys/dev/sound/pci/hda/hdac.h >> ============================================================================== >> --- head/sys/dev/sound/pci/hda/hdac.h Sun Jul 13 09:34:59 2014 (r268583) >> +++ head/sys/dev/sound/pci/hda/hdac.h Sun Jul 13 10:31:29 2014 (r268584) >> @@ -241,6 +241,7 @@ >> #define LENOVO_T430S_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21fb) >> #define LENOVO_T520_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21cf) >> #define LENOVO_T530_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x21f6) >> +#define LENOVO_G580_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0x3977) >> #define LENOVO_ALL_SUBVENDOR HDA_MODEL_CONSTRUCT(LENOVO, 0xffff) >> >> /* Samsung */ >> > -- Alexander Motin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53C335EF.2090606>