[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 4/4] xen/uart: enable parsing ACPI SPCR on x86


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Thu, 26 Mar 2026 12:52:51 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=ui4DDCaRwVdHZQGY8AVngJOpBcIYzJwB4M+DvQ+RgNo=; b=jhdKH2n5vUGoMXUYIYTtL93VGgw/wIqid0Ida+xkHwXC/6Dj8iZJ/4Z6k3k45flS1wwgmYfV1apo9E3DIaxMxhYVuh2ZTriPt1Qsou0+8Tq9FQq7bCNO2tm2f9SX4T8zbGABJDjAS6PMeL4hPkOqzzTKCzv9TJEoLyOOG5yg6UCC0uLQL+uvDt4bCrJVFcRxTY2lOt2WQh1o6imcdw3u7pIjB+uubJzwy00EK2hKS2zmRQ0djiPAP2IBZjCjhKjAIRB0L6mPsoRChSgXUtbZ4yr0MyO3qTU2sO2y7OK7rpPETaIBPLIjGDpzImll6TE+AyWkobH5l7PZeYmRQCmD/g==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=EgG70xPInaS8cHWe9Qn2gkDKn9dWTiDowd925x2kUqiR61rTqQnrXlNNz13mbSSzS3mJ9LkP5bQ9Th6JFQwMRu3yvfCr1X2m6xPJp4cmM2VWHn5I8d9o6Jin6npN2+v/sBKI7eZsSljFPevG0M/bALAgTKQ92YNTclFnAAbJAZVayp/0ELySn5zTtBSDx2X+Wch6AAK+lG3bZT7xKJxPF9pIP05N699+fbMXnbvPPWefngZW/v3WWDissPl691LQavAxdymRKS+yw8VDmTrs6TUfvcBhqyTCcPBqdkxOlmaRM9/tcxg6kkBtYyiQXwyIsBdUu++/cA6R+8KRCixxSg==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=citrix.com header.i="@citrix.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Roger Pau Monne <roger.pau@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 26 Mar 2026 12:53:02 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 26/03/2026 12:48 pm, Jan Beulich wrote:
> On 26.03.2026 13:11, Andrew Cooper wrote:
>> On 25/03/2026 2:58 pm, Roger Pau Monne wrote:
>>> Introduce extra logic to allow parsing ACPI tables extra early, and use it
>>> to parse the ACPI SPCR table and obtain the serial configuration.
>>>
>>> This is gated to the "acpi" device type being set in "com1" on the Xen
>>> command line.  Note that there can only be one serial device described in
>>> the SPCR, so limit it's usage to com1 exclusively for the time being.
>>>
>>> I can't test the interrupt information parsing on my system, as the
>>> interrupt is set to GSI with a value of 0xff, which is outside of the range
>>> of GSIs available on the system.  I've also assumed that the interrupt
>>> being 0xff is used to signal not interrupt setup (just like the Interrupt
>>> Pin register on PCI headers).
>>>
>>> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
>>> ---
>>> WIP/RFC, not sure whether there's interest in attempting to pursue this
>>> further on x86.  So far the device I have is also exposed on the PCI bus
>>> aside from SPCR, so using com1=device=amt also works to detect it.
>>>
>>> Posting it kind of early to know whether I should try to polish it for
>>> submission or we are happy with not having this on x86.
>> I think we should be using SPCR/DBG2 when available.  Getting serial
>> configuration right is always tricky, and we might as well use the help
>> that Microsoft have forced the OEM/firmware world to provide.
>>
>> But, I think it should be automatic when the user asked for any kind of
>> serial.  e.g. console=com1 with no com1 configuration.  The point of
>> these tables is to provide an enumeration mechanism where none
>> previously existed.
> Hmm. In the PC world COM<n> have well-known configurations unless anything
> else is provided. With multiple serial ports in a system, which one SPCR
> describes also would be (largely) unknown.

Xen's COM1/2 already do do far more than the PC world.  But ok then, we
invent a new "serial".

My point is, there should be a way to say "please use serial as
described by the system", and it shouldn't even require knowing that the
description is in APCI.

~Andrew



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.