lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <s4596421-sr43-893r-o90r-86nr588sp32q@xreary.bet>
Date: Thu, 3 Jul 2025 09:48:11 +0200 (CEST)
From: Jiri Kosina <jikos@...nel.org>
To: Cristian Ciocaltea <cristian.ciocaltea@...labora.com>
cc: Roderick Colenbrander <roderick.colenbrander@...y.com>, 
    Benjamin Tissoires <bentiss@...nel.org>, 
    Henrik Rydberg <rydberg@...math.org>, kernel@...labora.com, 
    linux-input@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 00/11] HID: playstation: Add support for audio jack
 handling on DualSense

On Wed, 25 Jun 2025, Cristian Ciocaltea wrote:

> The Sony DualSense wireless controller (PS5) provides an internal mono
> speaker, in addition to the 3.5mm jack socket for headphone output and
> headset microphone input.  However, the default audio output path is set
> to headphones, regardless of whether they are actually inserted or not.
> 
> This patch series aims to improve the audio support when operating in
> USB mode, by implementing the following changes:
> 
> * Detect when the plugged state of the audio jack changes and toggle
>   audio output between headphones and internal speaker, as required.
>   The latter is achieved by essentially routing the right channel of the
>   audio source to the mono speaker.
> 
> * Adjust the speaker volume since its default level is too low and,
>   therefore, cannot generate any audible sound.
> 
> * Register a dedicated input device for the audio jack and use it to
>   report all headphone and headset mic insert events.
> 
> It's worth noting the latter is necessary since the controller complies
> with v1.0 of the USB Audio Class spec (UAC1) and, therefore, cannot
> advertise any jack detection capability.
> 
> However, this feature can be implemented in the generic USB audio driver
> via quirks, i.e. by configuring an input handler to receive hotplug
> events from the HID driver.  That's exactly what has been accomplished
> via the "ALSA: usb-audio: Support jack detection on Sony DualSense"
> patchset [1], which has been already merged and should be available in
> v6.17.
> 
> Unrelated to the above, also provide a few driver cleanup patches, e.g.
> make use of bitfields macros, simplify locking, fix coding style.
> 
> [1] https://lore.kernel.org/all/20250526-dualsense-alsa-jack-v1-0-1a821463b632@collabora.com/
> 
> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@...labora.com>
> ---
> Changes in v2:
> - Updated cover letter including a reference to the usb-audio patch series
> - Updated 'HID: playstation: Make use of bitfield macros' patch to drop
>   DS_STATUS_CHARGING_SHIFT and use FIELD_GET() for battery status ops
> - Replaced 'HID: playstation: Rename DualSense input report status
>   field' with 'HID: playstation: Redefine DualSense input report status
>   field' changing data type to a 3-byte array instead of renaming the
>   struct member (Roderick)
> - Updated 'HID: playstation: Support DualSense audio jack hotplug
>   detection' according to Roderick's feedback:
>  * Used DS_STATUS1_ prefixes for the plugged status register and rename
>    its bits to match the datasheet
>  * Defined MIC_VOLUME_ENABLE bit of DS_OUTPUT_VALID_FLAG0 register
>  * Renamed the newly introduced audio controls members in struct
>    dualsense_output_report_common: headphone_volume, speaker_volume,
>    mic_volume, audio_control, audio_control2
> - Restricted audio jack hotplug detection and event reporting to USB
>   operation mode only, since Bluetooth audio is currently not supported
>   and it might have a negative impact on the battery life (Roderick)
> - Rebased series onto next-20250624
> - Link to v1: https://lore.kernel.org/r/20250526-dualsense-hid-jack-v1-0-a65fee4a60cc@collabora.com

Just for the record -- I like the v2, and am inclined to merge it, but 
would prefer doing that with Roderick's Ack, so I am waiting for a bit 
here.

Thanks,

-- 
Jiri Kosina
SUSE Labs


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ