[PATCH v6 01/10] drivers/char: allow using both dbgp=xhci and dbgp=ehci

2022-09-02 Thread Marek Marczykowski-Górecki
Signed-off-by: Marek Marczykowski-Górecki --- Changes in v6: - keep dbgp=xhci, but use custom_param() to parse multiple values separately - modify ehci-dbgp to use custom_param() too - change console=dbc to console=xhci, as 'dbc' doesn't appear in any other option anymore - update comment

Re: [PATCH v2 0/3] xen-blk{front,back}: Fix the broken semantic and flow of feature-persistent

2022-09-01 Thread Marek Marczykowski-Górecki
trivial (always disabling persistent grants), and to make testing > of > my proposed fix from others easier. Hope to get someone's test results or > code > review of this patchset even before I fix my test setup problem. I can confirm it fixes the issue, thanks! Tested-by:

Re: “Backend has not unmapped grant” errors

2022-08-29 Thread Marek Marczykowski-Górecki
On Mon, Aug 29, 2022 at 02:55:55PM +0200, Juergen Gross wrote: > On 28.08.22 07:15, Demi Marie Obenour wrote: > > On Wed, Aug 24, 2022 at 08:11:56AM +0200, Juergen Gross wrote: > > > On 24.08.22 02:20, Marek Marczykowski-Górecki wrote: > > > > On Tue, Aug 23, 202

Re: [PATCH v5 1/9] drivers/char: separate dbgp=xhci to dbc=xhci option

2022-08-29 Thread Marek Marczykowski-Górecki
On Mon, Aug 29, 2022 at 01:49:30PM +0200, Marek Marczykowski-Górecki wrote: > On Fri, Aug 26, 2022 at 04:20:52PM +0200, Jan Beulich wrote: > > On 26.08.2022 13:46, Marek Marczykowski-Górecki wrote: > > > On Thu, Aug 25, 2022 at 05:44:54PM +0200, Jan Beulich wrote: > > >&

Re: [PATCH v5 1/9] drivers/char: separate dbgp=xhci to dbc=xhci option

2022-08-29 Thread Marek Marczykowski-Górecki
On Fri, Aug 26, 2022 at 04:20:52PM +0200, Jan Beulich wrote: > On 26.08.2022 13:46, Marek Marczykowski-Górecki wrote: > > On Thu, Aug 25, 2022 at 05:44:54PM +0200, Jan Beulich wrote: > >> On 22.08.2022 17:27, Marek Marczykowski-Górecki wrote: > >>> This allows conf

Re: [PATCH v5 1/9] drivers/char: separate dbgp=xhci to dbc=xhci option

2022-08-26 Thread Marek Marczykowski-Górecki
On Thu, Aug 25, 2022 at 05:44:54PM +0200, Jan Beulich wrote: > On 22.08.2022 17:27, Marek Marczykowski-Górecki wrote: > > This allows configuring EHCI and XHCI consoles separately, > > simultaneously. > > > > Suggested-by: Jan Beulich > > But was I maybe co

Re: “Backend has not unmapped grant” errors

2022-08-23 Thread Marek Marczykowski-Górecki
;trusted" - XSA-403). I have confirmed it's the frontend version that matters. Running older frontend kernel with 5.15.61 backend results in persistent grants enabled (and both frontend and backend xenstore "feature-persistent" entries are "1" in this case). -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab signature.asc Description: PGP signature

[PATCH v5 9/9] drivers/char: fix handling cable re-plug in XHCI console driver

2022-08-22 Thread Marek Marczykowski-Górecki
(there is always one pending TRB for input). Extract doorbell ringing into separate function to avoid duplication. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/xhci-dbc.c | 18 -- 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/xen/drivers/char/xhci-dbc.c b/xen

[PATCH v5 8/9] drivers/char: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-08-22 Thread Marek Marczykowski-Górecki
s to write something on the same page - like anoter xcap), but makes Xen's use safe. In practice, as of Linux 5.18, it seems to work without issues. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v5: - drop CONFIG_XHCI_SHARE - make XHCI_SHARE_HWDOM = 0 - use parse_boolean - add com

[PATCH v5 7/9] drivers/char: add RX support to the XHCI driver

2022-08-22 Thread Marek Marczykowski-Górecki
ill be "short packet" most of the time, as the TRB length is about maximum size, not required size. Signed-off-by: Marek Marczykowski-Górecki Acked-by: Jan Beulich --- Changes in v4: - adjust return types - add some const New patch in v3 --- docs/misc/xen-command-line.pandoc | 4 +

[PATCH v5 0/9] Add Xue - console over USB 3 Debug Capability

2022-08-22 Thread Marek Marczykowski-Górecki
: Andrew Cooper Cc: George Dunlap Cc: Jan Beulich Cc: Julien Grall Cc: Stefano Stabellini Cc: Wei Liu Cc: "Roger Pau Monné" Cc: Paul Durrant Cc: Kevin Tian Cc: Connor Davis Marek Marczykowski-Górecki (9): drivers/char: separate dbgp=xhci to dbc=xhci option console: support multi

[PATCH v5 6/9] drivers/char: mark DMA buffers as reserved for the XHCI

2022-08-22 Thread Marek Marczykowski-Górecki
, prevent anything else being placed on those pages by adding artificial padding. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v5: - add missing alignment Changes in v3: - adjust for xhci-dbc rename - do not raise MAX_USER_RMRR_PAGES - adjust alignment of DMA buffers --- xen/drivers/char/xhci

[PATCH v5 5/9] IOMMU/AMD: wire common device reserved memory API

2022-08-22 Thread Marek Marczykowski-Górecki
Register common device reserved memory similar to how ivmd= parameter is handled. Signed-off-by: Marek Marczykowski-Górecki Acked-by: Jan Beulich --- Changes in v3: - use variable initializer - use pfn_to_paddr() --- xen/drivers/passthrough/amd/iommu_acpi.c | 21 + 1 file

[PATCH v5 4/9] IOMMU/VT-d: wire common device reserved memory API

2022-08-22 Thread Marek Marczykowski-Górecki
Re-use rmrr= parameter handling code to handle common device reserved memory. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - make MAX_USER_RMRR_PAGES applicable only to user-configured RMRR --- xen/drivers/passthrough/vtd/dmar.c | 201 +- 1 file

[PATCH v5 2/9] console: support multiple serial console simultaneously

2022-08-22 Thread Marek Marczykowski-Górecki
-by: Marek Marczykowski-Górecki --- Changes in v4: - use unsigned int for loop counters - other minor changes Changes in v3: - adjust console_steal() for multiple consoles too - add MAX_SERCONS to kconfig - add warning about sync_console impact - add warning if too many consoles are configured - log

[PATCH v5 3/9] IOMMU: add common API for device reserved memory

2022-08-22 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v5: - fix indentation, keep full "reserved_device_memory" for consistency with iommu_get_reserved_device_memory Changes in v4: - mark functions as __init - use pci_sbdf_t type Changes in v3:

[PATCH v5 1/9] drivers/char: separate dbgp=xhci to dbc=xhci option

2022-08-22 Thread Marek Marczykowski-Górecki
This allows configuring EHCI and XHCI consoles separately, simultaneously. Suggested-by: Jan Beulich Signed-off-by: Marek Marczykowski-Górecki --- new in v5 --- docs/misc/xen-command-line.pandoc | 18 -- xen/drivers/char/serial.c | 6 ++ xen/drivers/char/xhci-dbc.c

Re: [Xen-devel] Xen crash after S3 suspend - Xen 4.13 and newer

2022-08-22 Thread Marek Marczykowski-Górecki
On Mon, Aug 22, 2022 at 11:53:50AM +0200, Jan Beulich wrote: > On 21.08.2022 18:14, Marek Marczykowski-Górecki wrote: > > On Sat, Oct 09, 2021 at 06:28:17PM +0200, Marek Marczykowski-Górecki wrote: > >> On Sun, Jan 31, 2021 at 03:15:30AM +0100, Marek Marczykowski-Górecki wrote:

Re: [Xen-devel] Xen crash after S3 suspend - Xen 4.13 and newer

2022-08-21 Thread Marek Marczykowski-Górecki
On Sat, Oct 09, 2021 at 06:28:17PM +0200, Marek Marczykowski-Górecki wrote: > On Sun, Jan 31, 2021 at 03:15:30AM +0100, Marek Marczykowski-Górecki wrote: > > On Tue, Sep 29, 2020 at 05:27:48PM +0200, Jürgen Groß wrote: > > > On 29.09.20 17:16, Marek Marczykowski-Górecki wrote: &

Re: [PATCH v4 11/11] drivers/char: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-08-17 Thread Marek Marczykowski-Górecki
On Wed, Aug 17, 2022 at 05:08:35PM +0200, Jan Beulich wrote: > On 13.08.2022 03:39, Marek Marczykowski-Górecki wrote: > > --- a/docs/misc/xen-command-line.pandoc > > +++ b/docs/misc/xen-command-line.pandoc > > @@ -724,7 +724,7 @@ Available alternatives, with their meaning, are

[PATCH v4 11/11] drivers/char: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-08-12 Thread Marek Marczykowski-Górecki
s to write something on the same page - like anoter xcap), but makes Xen's use safe. In practice, as of Linux 5.18, it seems to work without issues. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v4: - minor fix for cmdline parsing - make sharing opt-in build time, with option marked as EX

[PATCH v4 09/11] drivers/char: mark DMA buffers as reserved for the XHCI

2022-08-12 Thread Marek Marczykowski-Górecki
, prevent anything else being placed on those pages by adding artificial padding. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - adjust for xhci-dbc rename - do not raise MAX_USER_RMRR_PAGES - adjust alignment of DMA buffers --- xen/drivers/char/xhci-dbc.c | 42

[PATCH v4 07/11] IOMMU/VT-d: wire common device reserved memory API

2022-08-12 Thread Marek Marczykowski-Górecki
Re-use rmrr= parameter handling code to handle common device reserved memory. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - make MAX_USER_RMRR_PAGES applicable only to user-configured RMRR --- xen/drivers/passthrough/vtd/dmar.c | 201 +- 1 file

[PATCH v4 00/11] Add Xue - console over USB 3 Debug Capability

2022-08-12 Thread Marek Marczykowski-Górecki
: "Roger Pau Monné" Cc: Paul Durrant Cc: Kevin Tian Cc: Connor Davis Connor Davis (1): drivers/char: Add support for USB3 DbC debugger Marek Marczykowski-Górecki (10): drivers/char: reset XHCI ports when initializing dbc drivers/char: add support for selecting specific xhci dr

[PATCH v4 01/11] drivers/char: Add support for USB3 DbC debugger

2022-08-12 Thread Marek Marczykowski-Górecki
ot use static initializer, without reserving (at least) a whole page page in .data (or more, when combined with other structures). Signed-off-by: Connor Davis Signed-off-by: Marek Marczykowski-Górecki --- Changes in v4: - adjust alignments - check if BAR0 is initialized by the firmware - some mo

[PATCH v4 05/11] console: support multiple serial console simultaneously

2022-08-12 Thread Marek Marczykowski-Górecki
-by: Marek Marczykowski-Górecki --- Changes in v4: - use unsigned int for loop counters - other minor changes Changes in v3: - adjust console_steal() for multiple consoles too - add MAX_SERCONS to kconfig - add warning about sync_console impact - add warning if too many consoles are configured - log

[PATCH v4 04/11] drivers/char: make serial_parse_handle take const argument

2022-08-12 Thread Marek Marczykowski-Górecki
It doesn't modify it, and it will be necessary in a subsequent patch. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/serial.c | 2 +- xen/include/xen/serial.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/drivers/char/serial.c b/xen/drivers/char

[PATCH v4 02/11] drivers/char: reset XHCI ports when initializing dbc

2022-08-12 Thread Marek Marczykowski-Górecki
Reset ports, to force host system to re-enumerate devices. Otheriwse it will require the cable to be re-plugged, or will wait in the "configuring" state indefinitely. Trick and code copied from Linux: drivers/usb/early/xhci-dbc.c:xdbc_start()->xdbc_reset_debug_port() Signed-

[PATCH v4 10/11] drivers/char: add RX support to the XHCI driver

2022-08-12 Thread Marek Marczykowski-Górecki
ill be "short packet" most of the time, as the TRB length is about maximum size, not required size. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v4: - adjust return types - add some const New patch in v3 --- docs/misc/xen-command-line.pandoc | 4 +- xen/drive

[PATCH v4 08/11] IOMMU/AMD: wire common device reserved memory API

2022-08-12 Thread Marek Marczykowski-Górecki
Register common device reserved memory similar to how ivmd= parameter is handled. Signed-off-by: Marek Marczykowski-Górecki Acked-by: Jan Beulich --- Changes in v3: - use variable initializer - use pfn_to_paddr() --- xen/drivers/passthrough/amd/iommu_acpi.c | 21 + 1 file

[PATCH v4 06/11] IOMMU: add common API for device reserved memory

2022-08-12 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v4: - mark functions as __init - use pci_sbdf_t type Changes in v3: - adjust code style --- xen/drivers/passthrough/iommu.c | 45 ++- xen/include/xen/iommu.h | 13

[PATCH v4 03/11] drivers/char: add support for selecting specific xhci

2022-08-12 Thread Marek Marczykowski-Górecki
Handle parameters similar to dbgp=ehci. Implement this by not resettting dbc->sbdf again in dbc_init_xhc(), but using a value found there if non-zero. Additionally, add xue->xhc_num to select n-th controller. Signed-off-by: Marek Marczykowski-Górecki Reviewed-by: Jan Beulich --- Changes

Re: Reg. Tee init fail...

2022-08-10 Thread Marek Marczykowski-Górecki
, 0x0, ring_size); rb_mgr->ring_start = start_addr; rb_mgr->ring_size = ring_size; - rb_mgr->ring_pa = __psp_pa(start_addr); + rb_mgr->ring_pa = virt_to_machine(start_addr).maddr; mutex_init(_mgr->mutex); return 0; @@ -129,7 +130,7 @@ static int tee_init_ri

getting gitlab pipeline status

2022-08-06 Thread Marek Marczykowski-Górecki
to add such check... -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab signature.asc Description: PGP signature

Re: [PATCH v3 09/10] drivers/char: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 10:15:59AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > That's possible, because the capability was designed specifically to > > allow separate driver handle it, in parallel to unmodified xhci driver > > (sepa

Re: [PATCH v3 04/10] console: support multiple serial console simultaneously

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 09:41:09AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > Previously only one serial console was supported at the same time. Using > > console=com1,dbgp,vga silently ignored all but last serial console (in > >

Re: [PATCH v3 10/10] driver/char: add RX support to the XHCI driver

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 02:38:26PM +0200, Jan Beulich wrote: > On 05.08.2022 11:58, Marek Marczykowski-Górecki wrote: > > On Fri, Aug 05, 2022 at 10:38:13AM +0200, Jan Beulich wrote: > >> On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > >>> @@ -45

Re: [PATCH v3 08/10] drivers/char: mark DMA buffers as reserved for the XHCI

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 09:05:27AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > @@ -1046,13 +1047,20 @@ static struct uart_driver dbc_uart_driver = { > > .flush = dbc_uart_flush, > > }; > > > > -static struct

Re: [PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 11:54:06AM +0200, Jan Beulich wrote: > On 05.08.2022 11:51, Marek Marczykowski-Górecki wrote: > > On Fri, Aug 05, 2022 at 09:23:32AM +0200, Jan Beulich wrote: > >> On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > >>> +static struct xhc

Re: [PATCH v3 10/10] driver/char: add RX support to the XHCI driver

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 10:38:13AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > @@ -440,6 +442,16 @@ static void xhci_trb_norm_set_ioc(struct xhci_trb *trb) > > trb->ctrl |= 0x20; > > } > > > > +static uint64

Re: [PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-08-05 Thread Marek Marczykowski-Górecki
On Fri, Aug 05, 2022 at 09:23:32AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > +static uint64_t dbc_work_ring_size(const struct dbc_work_ring *ring) > > +{ > > +if ( ring->enq >= ring->deq ) > > +

Re: [PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-08-04 Thread Marek Marczykowski-Górecki
On Thu, Aug 04, 2022 at 04:36:35PM +0200, Jan Beulich wrote: > On 04.08.2022 16:28, Marek Marczykowski-Górecki wrote: > > On Thu, Aug 04, 2022 at 04:21:01PM +0200, Jan Beulich wrote: > >> L"Xen" looks sufficiently readable to me. We use this all over the > >&

Re: [PATCH v3 05/10] IOMMU: add common API for device reserved memory

2022-08-04 Thread Marek Marczykowski-Górecki
On Thu, Aug 04, 2022 at 04:25:38PM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > --- a/xen/drivers/passthrough/iommu.c > > +++ b/xen/drivers/passthrough/iommu.c > > @@ -651,6 +651,51 @@ bool_t iommu_has_feature(struct domain *d, en

Re: [PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-08-04 Thread Marek Marczykowski-Górecki
On Thu, Aug 04, 2022 at 04:21:01PM +0200, Jan Beulich wrote: > On 04.08.2022 15:43, Marek Marczykowski-Górecki wrote: > > I need to keep this structure somewhere DMA-reachable for the device (as > > in - included in appropriate IOMMU context). Patch 8/10 is doing it. And >

Re: [PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-08-04 Thread Marek Marczykowski-Górecki
On Thu, Aug 04, 2022 at 02:57:49PM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > +/* Defines the size in bytes of TRB rings as 2^DBC_TRB_RING_ORDER * 4096 */ > > +#ifndef DBC_TRB_RING_ORDER > > +#define DBC_TRB_RING_ORDER 4 >

Re: [libvirt PATCH] libxl: Fix build with recent Xen that introduces new disk backend type

2022-08-02 Thread Marek Marczykowski-Górecki
ppen from time to time, and will be annoyed for people on involved in specific code part at all. As a short term fix, maybe Xen's CI can build libvirt with -Wno-error=switch-enum? -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab signature.asc Description: PGP signature

Re: [PATCH v3 00/10] Add Xue - console over USB 3 Debug Capability

2022-07-26 Thread Marek Marczykowski-Górecki
On Tue, Jul 26, 2022 at 08:18:40AM +0200, Jan Beulich wrote: > On 26.07.2022 05:23, Marek Marczykowski-Górecki wrote: > > This is integration of https://github.com/connojd/xue into mainline Xen. > > This patch series includes several patches that I made in the process, some &

[PATCH v3 10/10] driver/char: add RX support to the XHCI driver

2022-07-25 Thread Marek Marczykowski-Górecki
ill be "short packet" most of the time, as the TRB length is about maximum size, not required size. Signed-off-by: Marek Marczykowski-Górecki --- New patch in v3 --- docs/misc/xen-command-line.pandoc | 4 +- xen/drivers/char/xhci-dbc.c | 121 +++- 2 files

[PATCH v3 09/10] drivers/char: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-07-25 Thread Marek Marczykowski-Górecki
elf, using `dbgp=xhci,share=hwdom` or `=any` allows other ports to be used by either only dom0 or any dom0 that get this PCI device assigned. In any case, to avoid Linux messing with the DbC, mark this MMIO area as read-only. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - adjust fo

[PATCH v3 08/10] drivers/char: mark DMA buffers as reserved for the XHCI

2022-07-25 Thread Marek Marczykowski-Górecki
, prevent anything else being placed on those pages by adding artificial padding. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - adjust for xhci-dbc rename - do not raise MAX_USER_RMRR_PAGES - adjust alignment of DMA buffers --- xen/drivers/char/xhci-dbc.c | 42

[PATCH v3 07/10] IOMMU/AMD: wire common device reserved memory API

2022-07-25 Thread Marek Marczykowski-Górecki
Register common device reserved memory similar to how ivmd= parameter is handled. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - use variable initializer - use pfn_to_paddr() --- xen/drivers/passthrough/amd/iommu_acpi.c | 21 + 1 file changed, 21 insertions

[PATCH v3 06/10] IOMMU/VT-d: wire common device reserved memory API

2022-07-25 Thread Marek Marczykowski-Górecki
Re-use rmrr= parameter handling code to handle common device reserved memory. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - make MAX_USER_RMRR_PAGES applicable only to user-configured RMRR --- xen/drivers/passthrough/vtd/dmar.c | 201 +- 1 file

[PATCH v3 05/10] IOMMU: add common API for device reserved memory

2022-07-25 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - adjust code style --- xen/drivers/passthrough/iommu.c | 45 ++- xen/include/xen/iommu.h | 13 ++- 2 files changed, 58 insertions(+) diff --git a/xen

[PATCH v3 03/10] drivers/char: add support for selecting specific xhci

2022-07-25 Thread Marek Marczykowski-Górecki
Handle parameters similar to dbgp=ehci. Implement this by not resettting dbc->sbdf again in dbc_init_xhc(), but using a value found there if non-zero. Additionally, add xue->xhc_num to select n-th controller. Signed-off-by: Marek Marczykowski-Górecki Reviewed-by: Jan Beulich --- Changes

[PATCH v3 04/10] console: support multiple serial console simultaneously

2022-07-25 Thread Marek Marczykowski-Górecki
-by: Marek Marczykowski-Górecki --- Changes in v3: - adjust console_steal() for multiple consoles too - add MAX_SERCONS to kconfig - add warning about sync_console impact - add warning if too many consoles are configured - log issue with PCI spec parsing --- docs/misc/xen-command-line.pandoc | 4

[PATCH v3 02/10] drivers/char: reset XHCI ports when initializing dbc

2022-07-25 Thread Marek Marczykowski-Górecki
Reset ports, to force host system to re-enumerate devices. Otheriwse it will require the cable to be re-plugged, or will wait in the "configuring" state indefinitely. Trick and code copied from Linux: drivers/usb/early/xhci-dbc.c:xdbc_start()->xdbc_reset_debug_port() Signed-

[PATCH v3 00/10] Add Xue - console over USB 3 Debug Capability

2022-07-25 Thread Marek Marczykowski-Górecki
r USB3 DbC debugger Marek Marczykowski-Górecki (9): drivers/char: reset XHCI ports when initializing dbc drivers/char: add support for selecting specific xhci console: support multiple serial console simultaneously IOMMU: add common API for device reserved memory IOMMU/VT-d: wire com

[PATCH v3 01/10] drivers/char: Add support for USB3 DbC debugger

2022-07-25 Thread Marek Marczykowski-Górecki
n be disabled build time to reclaim this memory. Signed-off-by: Connor Davis Signed-off-by: Marek Marczykowski-Górecki --- Changes in v3: - rename to xhci-dbc - add empty stub for xhci_dbc_uart_init(), to avoid #ifdef in setup.c - use PCI_BASE_ADDRESS_MEM_MASK - make strings init more readable - a

Re: [PATCH v2 8/9] xue: mark DMA buffers as reserved for the device

2022-07-20 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 01:51:06PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > +/* > > + * Don't place anything else on this page - it will be > > + * DMA-reachable by the USB controller. > > + */ >

Re: [PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-20 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 01:58:25PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > +static int xue_init_dbc(struct xue *xue) > > +{ > > +uint64_t erdp = 0; > > +uint64_t out = 0; > > +uint64_t in = 0; > >

Re: [PATCH v2 8/9] xue: mark DMA buffers as reserved for the device

2022-07-18 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 01:51:06PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > The important part is to include those buffers in IOMMU page table > > relevant for the USB controller. Otherwise, DbC will stop working as > > soo

Re: [PATCH v2 9/9] xue: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-07-18 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 02:06:07PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > That's possible, because the capability was designed specifically to > > allow separate driver handle it, in parallel to unmodified xhci driver > > (sepa

Re: [PATCH v2 4/9] console: support multiple serial console simultaneously

2022-07-18 Thread Marek Marczykowski-Górecki
On Wed, Jul 13, 2022 at 11:39:07AM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > Previously only one serial console was supported at the same time. Using > > console=com1,dbgp,vga silently ignored all but last serial console (in > >

Re: [PATCH v2 7/9] IOMMU/AMD: wire common device reserved memory API

2022-07-18 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 12:22:36PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > --- a/xen/drivers/passthrough/amd/iommu_acpi.c > > +++ b/xen/drivers/passthrough/amd/iommu_acpi.c > > @@ -1078,6 +1078,20 @@ static inline bool_t

Re: [PATCH v2 5/9] IOMMU: add common API for device reserved memory

2022-07-18 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 12:17:53PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > +}; > > +static unsigned int __initdata nr_extra_reserved_ranges; > > +static struct extra_reserved_range __initdata > > extra_reserved_range

Re: [PATCH v2 5/9] IOMMU: add common API for device reserved memory

2022-07-18 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 12:17:53PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > --- a/xen/drivers/passthrough/iommu.c > > +++ b/xen/drivers/passthrough/iommu.c > > @@ -651,6 +651,46 @@ bool_t iommu_has_feature(struct domain *d, en

Re: [PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-18 Thread Marek Marczykowski-Górecki
On Tue, Jul 12, 2022 at 05:59:51PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > --- a/docs/misc/xen-command-line.pandoc > > +++ b/docs/misc/xen-command-line.pandoc > > @@ -721,10 +721,15 @@ Available alternative

Re: [PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-16 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 01:58:25PM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > +static int xue_init_dbc(struct xue *xue) > > +{ > > +uint64_t erdp = 0; > > +uint64_t out = 0; > > +uint64_t in = 0; > >

Re: [PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-16 Thread Marek Marczykowski-Górecki
On Thu, Jul 14, 2022 at 08:05:28AM +0200, Jan Beulich wrote: > On 06.07.2022 17:32, Marek Marczykowski-Górecki wrote: > > +struct xue { > > +struct xue_dbc_reg *dbc_reg; > > +struct xue_dbc_ctx *dbc_ctx; > > +struct xue_erst_segment *dbc_erst; > > +

Re: [PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-07 Thread Marek Marczykowski-Górecki
On Wed, Jul 06, 2022 at 05:32:06PM +0200, Marek Marczykowski-Górecki wrote: > diff --git a/xen/drivers/char/Kconfig b/xen/drivers/char/Kconfig > index e5f7b1d8eb8a..d12b2205dafc 100644 > --- a/xen/drivers/char/Kconfig > +++ b/xen/drivers/char/Kconfig > @@ -74,3 +74,12 @@

[PATCH v2 2/9] xue: reset XHCI ports when initializing dbc

2022-07-06 Thread Marek Marczykowski-Górecki
Reset ports, to force host system to re-enumerate devices. Otheriwse it will require the cable to be re-plugged, or will wait in the "configuring" state indefinitely. Trick and code copied from Linux: drivers/usb/early/xhci-dbc.c:xdbc_start()->xdbc_reset_debug_port() Signed-

[PATCH v2 6/9] IOMMU/VT-d: wire common device reserved memory API

2022-07-06 Thread Marek Marczykowski-Górecki
Re-use rmrr= parameter handling code to handle common device reserved memory. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/vtd/dmar.c | 201 +- 1 file changed, 119 insertions(+), 82 deletions(-) diff --git a/xen/drivers/passthrough/vtd

[PATCH v2 9/9] xue: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-07-06 Thread Marek Marczykowski-Górecki
awful hack - re-enabling bus mastering behind dom0's backs. Linux driver does similar thing - see drivers/usb/early/xhci-dbc.c:xdbc_handle_events(). To avoid Linux messing with the DbC, mark this MMIO area as read-only. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/

[PATCH v2 8/9] xue: mark DMA buffers as reserved for the device

2022-07-06 Thread Marek Marczykowski-Górecki
, prevent anything else being placed on those pages by adding artificial padding. Using this API for DbC pages requires raising MAX_USER_RMRR_PAGES. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/xue.c | 43 --- xen/drivers/passthrough/vtd/dmar.c

[PATCH v2 7/9] IOMMU/AMD: wire common device reserved memory API

2022-07-06 Thread Marek Marczykowski-Górecki
Register common device reserved memory similar to how ivmd= parameter is handled. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/amd/iommu_acpi.c | 16 1 file changed, 16 insertions(+) diff --git a/xen/drivers/passthrough/amd/iommu_acpi.c b/xen/drivers

[PATCH v2 0/9] Add Xue - console over USB 3 Debug Capability

2022-07-06 Thread Marek Marczykowski-Górecki
Cc: "Roger Pau Monné" Cc: Paul Durrant Cc: Kevin Tian Cc: Connor Davis Connor Davis (1): drivers/char: Add support for Xue USB3 debugger Marek Marczykowski-Górecki (8): xue: reset XHCI ports when initializing dbc xue: add support for selecting specific xhci console: suppor

[PATCH v2 4/9] console: support multiple serial console simultaneously

2022-07-06 Thread Marek Marczykowski-Górecki
of MAX_SERCONS (4) is arbitrary, inspired by the number of SERHND_IDX values. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/console.c | 58 ++- 1 file changed, 45 insertions(+), 13 deletions(-) diff --git a/xen/drivers/char/console.c b/xen

[PATCH v2 1/9] drivers/char: Add support for Xue USB3 debugger

2022-07-06 Thread Marek Marczykowski-Górecki
me to reclaim this memory. Signed-off-by: Connor Davis Signed-off-by: Marek Marczykowski-Górecki --- Changes in v2: - drop #pragma pack - fix indentation in Kconfig - minor style fixes - use cache_flush() - mark init functions as __init, and return bool - fix PCI_SBDF usage, use constants from pci

[PATCH v2 3/9] xue: add support for selecting specific xhci

2022-07-06 Thread Marek Marczykowski-Górecki
Handle parameters similar to dbgp=ehci. Implement this by not resettting xhc_cf8 again in xue_init_xhc(), but using a value found there if non-zero. Additionally, add xue->xhc_num to select n-th controller. Signed-off-by: Marek Marczykowski-Górecki --- Changes in v2: - unsigned int xhc_

[PATCH v2 5/9] IOMMU: add common API for device reserved memory

2022-07-06 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/iommu.c | 40 ++- xen/include/xen/iommu.h | 11 +- 2 files changed, 51 insertions(+) diff --git a/xen/drivers/passthrough/iommu.c b/xen

Re: [PATCH v1 01/10] drivers/char: Add support for Xue USB3 debugger

2022-07-04 Thread Marek Marczykowski-Górecki
On Mon, Jul 04, 2022 at 08:05:06AM +0200, Jan Beulich wrote: > On 03.07.2022 14:17, Marek Marczykowski-Górecki wrote: > > On Thu, Jun 23, 2022 at 11:29:31AM +0200, Jan Beulich wrote: > >> On 22.06.2022 17:47, Marek Marczykowski-Górecki wrote: > >>> On Wed, Jun 15,

Re: [PATCH v1 01/10] drivers/char: Add support for Xue USB3 debugger

2022-07-03 Thread Marek Marczykowski-Górecki
On Thu, Jun 23, 2022 at 11:29:31AM +0200, Jan Beulich wrote: > On 22.06.2022 17:47, Marek Marczykowski-Górecki wrote: > > On Wed, Jun 15, 2022 at 04:25:54PM +0200, Jan Beulich wrote: > >> On 07.06.2022 16:30, Marek Marczykowski-Górecki wrote: > >>> +

Re: [PATCH v1 01/10] drivers/char: Add support for Xue USB3 debugger

2022-06-22 Thread Marek Marczykowski-Górecki
On Wed, Jun 15, 2022 at 04:25:54PM +0200, Jan Beulich wrote: > On 07.06.2022 16:30, Marek Marczykowski-Górecki wrote: > > From: Connor Davis > > --- /dev/null > > +++ b/xen/drivers/char/xue.c > > @@ -0,0 +1,957 @@ > > +/* > > + * drivers/char/xue.c > &

[PATCH v1 10/10] xue: allow driving the rest of XHCI by a domain while Xen uses DbC

2022-06-07 Thread Marek Marczykowski-Górecki
awful hack - re-enabling bus mastering behind dom0's backs. Linux driver does similar thing - see drivers/usb/early/xhci-dbc.c:xdbc_handle_events(). To avoid Linux messing with the DbC, mark this MMIO area as read-only. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/

[PATCH v1 05/10] console: support multiple serial console simultaneously

2022-06-07 Thread Marek Marczykowski-Górecki
of MAX_SERCONS (4) is arbitrary, inspired by the number of SERHND_IDX values. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/console.c | 58 ++- 1 file changed, 45 insertions(+), 13 deletions(-) diff --git a/xen/drivers/char/console.c b/xen

[PATCH v1 07/10] IOMMU/VT-d: wire common device reserved memory API

2022-06-07 Thread Marek Marczykowski-Górecki
Re-use rmrr= parameter handling code to handle common device reserved memory. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/vtd/dmar.c | 201 +- 1 file changed, 119 insertions(+), 82 deletions(-) diff --git a/xen/drivers/passthrough/vtd

[PATCH v1 08/10] IOMMU/AMD: wire common device reserved memory API

2022-06-07 Thread Marek Marczykowski-Górecki
Register common device reserved memory similar to how ivmd= parameter is handled. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/amd/iommu_acpi.c | 16 1 file changed, 16 insertions(+) diff --git a/xen/drivers/passthrough/amd/iommu_acpi.c b/xen/drivers

[PATCH v1 03/10] xue: add support for selecting specific xhci

2022-06-07 Thread Marek Marczykowski-Górecki
Handle parameters similar to dbgp=ehci. Implement this by not resettting xhc_cf8 again in xue_init_xhc(), but using a value found there if non-zero. Additionally, add xue->xhc_num to select n-th controller. Signed-off-by: Marek Marczykowski-Górecki --- docs/misc/xen-command-line.pandoc |

[PATCH v1 01/10] drivers/char: Add support for Xue USB3 debugger

2022-06-07 Thread Marek Marczykowski-Górecki
s Signed-off-by: Marek Marczykowski-Górecki --- xen/arch/x86/Kconfig | 1 +- xen/arch/x86/include/asm/fixmap.h | 4 +- xen/arch/x86/setup.c | 1 +- xen/drivers/char/Kconfig | 7 +- xen/drivers/char/Makefile | 1 +- xen/drivers/char/xue.c

[PATCH v1 02/10] xue: reset XHCI ports when initializing dbc

2022-06-07 Thread Marek Marczykowski-Górecki
Reset ports, to force host system to re-enumerate devices. Otheriwse it will require the cable to be re-plugged, or will wait in the "configuring" state indefinitely. Trick and code copied from Linux: drivers/usb/early/xhci-dbc.c:xdbc_start()->xdbc_reset_debug_port() Signed-

[PATCH v1 04/10] ehci-dbgp: fix selecting n-th ehci controller

2022-06-07 Thread Marek Marczykowski-Górecki
The ehci number was parsed but ignored. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/ehci-dbgp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/drivers/char/ehci-dbgp.c b/xen/drivers/char/ehci-dbgp.c index 16c8ff394d5c..92c588ec0aa3 100644 --- a/xen

[PATCH v1 00/10] Add Xue - console over USB 3 Debug Capability

2022-06-07 Thread Marek Marczykowski-Górecki
rt for Xue USB3 debugger Marek Marczykowski-Górecki (9): xue: reset XHCI ports when initializing dbc xue: add support for selecting specific xhci ehci-dbgp: fix selecting n-th ehci controller console: support multiple serial console simultaneously IOMMU: add common API for device reser

[PATCH v1 09/10] xue: mark DMA buffers as reserved for the device

2022-06-07 Thread Marek Marczykowski-Górecki
, prevent anything else being placed on those pages by adding artificial padding. Using this API for DbC pages requires raising MAX_USER_RMRR_PAGES. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/xue.c | 45 --- xen/drivers/passthrough/vtd/dmar.c

[PATCH v1 06/10] IOMMU: add common API for device reserved memory

2022-06-07 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/iommu.c | 40 ++- xen/include/xen/iommu.h | 11 +- 2 files changed, 51 insertions(+) diff --git a/xen/drivers/passthrough/iommu.c b/xen

Re: [RFC PATCH 01/12] drivers/char: Add support for Xue USB3 debugger

2022-06-06 Thread Marek Marczykowski-Górecki
On Mon, Jun 06, 2022 at 12:57:26PM -0400, Tamas K Lengyel wrote: > On Mon, Jun 6, 2022 at 10:10 AM Tamas K Lengyel > wrote: > > > > On Mon, Jun 6, 2022 at 10:03 AM Marek Marczykowski-Górecki > > wrote: > > > > > > On Mon, Jun 06, 2022

Re: [RFC PATCH 01/12] drivers/char: Add support for Xue USB3 debugger

2022-06-06 Thread Marek Marczykowski-Górecki
ntroller: Intel Corporation Tiger Lake-LP Thunderbolt 4 NHI #0 (rev 01) 00:14.0 USB controller: Intel Corporation Tiger Lake-LP USB 3.2 Gen 2x1 xHCI Host Controller (rev 20) So, I need dbgp=xue2 or dbgp=xue@pci00:14.0. -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab signature.asc Description: PGP signature

Re: [RFC PATCH 00/12] Add Xue - console over USB 3 Debug Capability

2022-06-06 Thread Marek Marczykowski-Górecki
On Mon, Jun 06, 2022 at 01:18:45PM +, Andrew Cooper wrote: > On 06/06/2022 04:40, Marek Marczykowski-Górecki wrote: > > This is integration of https://github.com/connojd/xue into mainline Xen. > > This patch series includes several patches that I made in the process, some &

[RFC PATCH 12/12] xue: allow driving the reset of XHCI by a domain while Xen uses DbC

2022-06-05 Thread Marek Marczykowski-Górecki
awful hack - re-enabling bus mastering behind dom0's backs. Linux driver does similar thing - see drivers/usb/early/xhci-dbc.c:xdbc_handle_events(). To avoid Linux messing with the DbC, mark this MMIO area as read-only. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/char/

[RFC PATCH 11/12] xue: prevent dom0 (or other domain) from using the device

2022-06-05 Thread Marek Marczykowski-Górecki
Mark config space of the device as read-only, to prevent dom0 (or others) re-configuring the USB controller while it's used as a debug console. This isn't strictly necessary, as the xhci and xhci-dbc drivers can co-exists, but that's a simpler option. Signed-off-by: Marek Marczykowski-Górecki

[RFC PATCH 07/12] IOMMU: add common API for device reserved memory

2022-06-05 Thread Marek Marczykowski-Górecki
yet which IOMMU driver will be used. Signed-off-by: Marek Marczykowski-Górecki --- xen/drivers/passthrough/iommu.c | 40 ++- xen/include/xen/iommu.h | 11 +- 2 files changed, 51 insertions(+) diff --git a/xen/drivers/passthrough/iommu.c b/xen

<    1   2   3   4   5   6   7   8   9   10   >