Re: [TSN RFC v2 0/9] TSN driver for the kernel

2016-12-17 Thread Henrik Austad
teration, that would be the ravb-driver (which is an AVB capable NIC), but it does not include much in the way of AVB-support *In* kernel. Sorry about that! Since then, the iMX7 from NXP has arrived, and this also has HW-support for TSN, but not in the kernel AFAICT. So, the next issue I plan to tackle, is how I do buffers, the current approach where tsn_core allocates memory is on its way out and I'll let the shim (which means alsa/v4l2) will provide a buffer. Then I'll start looking at qdisc. Thanks! -- Henrik Austad signature.asc Description: Digital signature

Re: [TSN RFC v2 5/9] Add TSN header for the driver

2016-12-17 Thread Henrik Austad
ding a compressed video format" and then the shim/tsn_core will ship out the frames over the network - and then you need to set TSN_CVF as subtype in each header. That does not that mean you should do H.264 encode/decode *in* the kernel Perhaps this is better placed in include/uapi/tsn.h so that userspace and kernel share the same header? -- Henrik Austad signature.asc Description: PGP signature

Re: [TSN RFC v2 0/9] TSN driver for the kernel

2016-12-16 Thread Henrik Austad
On Fri, Dec 16, 2016 at 01:20:57PM -0500, David Miller wrote: > From: Greg > Date: Fri, 16 Dec 2016 10:12:44 -0800 > > > On Fri, 2016-12-16 at 18:59 +0100, hen...@austad.us wrote: > >> From: Henrik Austad > >> > >> > >> The driver is d

Re: [alsa-devel] [very-RFC 0/8] TSN driver for the kernel

2016-06-23 Thread Henrik Austad
Or do I also need to run phc2sys in order to sync the system-time to PTP-time? Note that this is for outgoing traffic, Rx should perhaps use the timestamp in skb. Hooking into ktime_get() instead of directly to the PTP-subsystem (if that is even possible) makes it a lot easier to debug when running this in a VM as it doesn't *have* to use PTP-time when I'm crashing a new kernel :) Thanks! -- Henrik Austad signature.asc Description: Digital signature

Re: [alsa-devel] [very-RFC 0/8] TSN driver for the kernel

2016-06-20 Thread Henrik Austad
ounds like it is doable to achieve something useful. Looks like I will be looking into what to put in the .trigger-handler in the ALSA shim and experimenting with this to see how it make sense to connect it from the TSN-stream. Thanks! -- Henrik Austad signature.asc Description: Digital signature

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-20 Thread Henrik Austad
On Sun, Jun 19, 2016 at 11:45:47PM +0900, Takashi Sakamoto wrote: > (remove C.C. to lkml. This is not so major feature.) > > On Jun 19 2916 07:45, Henrik Austad wrote: > >snip > > > >802.1Q gives you low latency through the network, but more importantly, no > >

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-20 Thread Henrik Austad
On Sun, Jun 19, 2016 at 11:46:29AM +0200, Richard Cochran wrote: > On Sun, Jun 19, 2016 at 12:45:50AM +0200, Henrik Austad wrote: > > edit: this turned out to be a somewhat lengthy answer. I have tried to > > shorten it down somewhere. it is getting late and I'm

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-18 Thread Henrik Austad
send just enough data, and that is why the gPTP domain is so important. 802.1Q gives you low latency through the network, but more importantly, no dropped frames. gPTP gives you a central reference to time. > [1] [alsa-lib][PATCH 0/9 v3] ctl: add APIs for control element set > http://mailman.alsa-project.org/pipermail/alsa-devel/2016-June/109274.html > [2] IEEE 1722-2011 > http://ieeexplore.ieee.org/servlet/opac?punumber=5764873 > [3] 5.5 Timing and Synchronization > op. cit. > [4] 1394 Open Host Controller Interface Specification > http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/ohci_11.pdf I hope this cleared some of the questions -- Henrik Austad signature.asc Description: Digital signature

Re: [very-RFC 7/8] AVB ALSA - Add ALSA shim for TSN

2016-06-15 Thread Henrik Austad
On Wed, Jun 15, 2016 at 01:49:08PM +0200, Richard Cochran wrote: > Now that I understand better... > > On Sun, Jun 12, 2016 at 01:01:35AM +0200, Henrik Austad wrote: > > Userspace is supposed to reserve bandwidth, find StreamID etc. > > > > To use as a Talker: >

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-15 Thread Henrik Austad
On Wed, Jun 15, 2016 at 09:04:41AM +0200, Richard Cochran wrote: > On Tue, Jun 14, 2016 at 10:38:10PM +0200, Henrik Austad wrote: > > Whereas I want to do > > > > aplay some_song.wav > > Can you please explain how your patches accomplish this? In short: modprobe

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-14 Thread Henrik Austad
On Tue, Jun 14, 2016 at 08:26:15PM +0200, Richard Cochran wrote: > On Tue, Jun 14, 2016 at 11:30:00AM +0200, Henrik Austad wrote: > > So loop data from kernel -> userspace -> kernelspace and finally back to > > userspace and the media application? > > Huh? I wonder wh

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-14 Thread Henrik Austad
On Mon, Jun 13, 2016 at 09:32:10PM +0200, Richard Cochran wrote: > On Mon, Jun 13, 2016 at 03:00:59PM +0200, Henrik Austad wrote: > > On Mon, Jun 13, 2016 at 01:47:13PM +0200, Richard Cochran wrote: > > > Which driver is that? > > > > drivers/net/ethernet/renesas/ &g

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-14 Thread Henrik Austad
too far along but we probably don't want > another mechanism to map hw queues/tcs/etc if the existing interfaces > work or can be extended to support this. Sure, I get that, as long as the complexity for setting up a link doesn't go through the roof :) Thanks! -- Henrik Austad signature.asc Description: Digital signature

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-13 Thread Henrik Austad
On Mon, Jun 13, 2016 at 01:47:13PM +0200, Richard Cochran wrote: > Henrik, Hi Richard, > On Sun, Jun 12, 2016 at 01:01:28AM +0200, Henrik Austad wrote: > > There are at least one AVB-driver (the AV-part of TSN) in the kernel > > already, > > Which driver is that? driv

Re: [very-RFC 6/8] Add TSN event-tracing

2016-06-13 Thread Henrik Austad
On Sun, Jun 12, 2016 at 10:22:01PM -0400, Steven Rostedt wrote: > On Sun, 12 Jun 2016 23:25:10 +0200 > Henrik Austad wrote: > > > > > +#include > > > > +#include > > > > +/* #include */ > > > > + > > > > +/* FIXME: update t

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-12 Thread Henrik Austad
On Sun, Jun 12, 2016 at 07:43:34PM +0900, Takashi Sakamoto wrote: > On Jun 12 2016 17:31, Henrik Austad wrote: > > On Sun, Jun 12, 2016 at 01:30:24PM +0900, Takashi Sakamoto wrote: > >> On Jun 12 2016 12:38, Takashi Sakamoto wrote: > >>> In your patcset, there's

Re: [very-RFC 6/8] Add TSN event-tracing

2016-06-12 Thread Henrik Austad
On Sun, Jun 12, 2016 at 12:58:03PM -0400, Steven Rostedt wrote: > On Sun, 12 Jun 2016 01:01:34 +0200 > Henrik Austad wrote: > > > From: Henrik Austad > > > > This needs refactoring and should be updated to use TRACE_CLASS, but for > > now it provides a fair d

Re: [very-RFC 5/8] Add TSN machinery to drive the traffic from a shim over the network

2016-06-12 Thread Henrik Austad
On Sun, Jun 12, 2016 at 12:35:10AM -0700, Joe Perches wrote: > On Sun, 2016-06-12 at 00:22 +0200, Henrik Austad wrote: > > From: Henrik Austad > > > > In short summary: > > > > * tsn_core.c is the main driver of tsn, all new links go through > >   here and

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-12 Thread Henrik Austad
sn_buffer_write_net() and tsn_buffer_read_net() > are involved in this discussion. You can see ALSA developers' struggle > in USB audio device class drivers and (of cource) IEC 61883-1/6 drivers.) Ah, good point. Any particular parts of the USB-subsystem I should start looking a

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-12 Thread Henrik Austad
lications. > https://github.com/takaswie/alsa-firewire-report Thanks, I'll dig into that, much appreciated > (But I confirm that the report includes my misunderstandings in clause > 3.4 and 6.2. need more time...) ok, good to know Thank you for your input, very much appreicated! -- Henrik Austad signature.asc Description: Digital signature

[very-RFC 4/8] Add TSN header for the driver

2016-06-11 Thread Henrik Austad
From: Henrik Austad This defines the general TSN headers for network packets, the shim-interface and the central 'tsn_list' structure. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- include/linux/tsn.h | 806

[very-RFC 0/8] TSN driver for the kernel

2016-06-11 Thread Henrik Austad
orks-ish What remains - tie to (g)PTP properly, currently using ktime_get() for presentation time - get time from shim into TSN and vice versa - let shim create/manage buffer Henrik Austad (8): TSN: add documentation TSN: Add the standard formerly known as AVB to the kernel Adding TSN-

[very-RFC 6/8] Add TSN event-tracing

2016-06-11 Thread Henrik Austad
From: Henrik Austad This needs refactoring and should be updated to use TRACE_CLASS, but for now it provides a fair debug-window into TSN. Cc: "David S. Miller" Cc: Steven Rostedt (maintainer:TRACING) Cc: Ingo Molnar (maintainer:TRACING) Signed-off-by: Henrik Austad --- inc

[very-RFC 5/8] Add TSN machinery to drive the traffic from a shim over the network

2016-06-11 Thread Henrik Austad
From: Henrik Austad In short summary: * tsn_core.c is the main driver of tsn, all new links go through here and all data to/form the shims are handled here core also manages the shim-interface. * tsn_configfs.c is the API to userspace. TSN is driven from userspace and a link is created

[very-RFC 1/8] TSN: add documentation

2016-06-11 Thread Henrik Austad
From: Henrik Austad Describe the overall design behind the TSN standard, the TSN-driver, requirements to userspace and new functionality introduced. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- Documentation/TSN/tsn.txt | 147

[very-RFC 2/8] TSN: Add the standard formerly known as AVB to the kernel

2016-06-11 Thread Henrik Austad
that the core TSN driver can use this when configuring a new NIC or setting up a new link. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- include/linux/netdevice.h | 32 net/Kconfig | 1 + net/tsn/Kconfig

[very-RFC 8/8] MAINTAINERS: add TSN/AVB-entries

2016-06-11 Thread Henrik Austad
From: Henrik Austad Not sure how relevant this is other than making a point about maintaining it. Signed-off-by: Henrik Austad --- MAINTAINERS | 14 ++ 1 file changed, 14 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index ed42cb6..ef5d926 100644 --- a/MAINTAINERS +++ b

[very-RFC 7/8] AVB ALSA - Add ALSA shim for TSN

2016-06-11 Thread Henrik Austad
From: Henrik Austad This exposes a *very* rudimentary and simplistic ALSA driver that hooks into TSN to create a device for userspace. It currently only supports 44.1/48kHz sampling, 2ch, S16_LE Userspace is supposed to reserve bandwidth, find StreamID etc. To use as a Talker: mkdir /config

[very-RFC 3/8] Adding TSN-driver to Intel I210 controller

2016-06-11 Thread Henrik Austad
er is *not* stable, it is still a work in progress. Cc: Jeff Kirsher Cc: intel-wired-...@lists.osuosl.org Cc: "David S. Miller" Signed-off-by: Henrik Austad --- drivers/net/ethernet/intel/Kconfig| 18 ++ drivers/net/ethernet/intel/igb/Makefile | 2 +- drivers/net/ethe

Re: [very-RFC 5/8] Add TSN machinery to drive the traffic from a shim over the network

2016-06-11 Thread Henrik Austad
clearing up netdev-typo -H On Sun, Jun 12, 2016 at 12:22:18AM +0200, Henrik Austad wrote: > From: Henrik Austad > > In short summary: > > * tsn_core.c is the main driver of tsn, all new links go through > here and all data to/form the shims are handled here > core

Re: [very-RFC 4/8] Add TSN header for the driver

2016-06-11 Thread Henrik Austad
Clearing up netdev-typo -H On Sun, Jun 12, 2016 at 12:22:17AM +0200, Henrik Austad wrote: > From: Henrik Austad > > This defines the general TSN headers for network packets, the > shim-interface and the central 'tsn_list' structure. > > Cc: "David S. Miller

Re: [very-RFC 3/8] Adding TSN-driver to Intel I210 controller

2016-06-11 Thread Henrik Austad
clearing up netdev-typo -H On Sun, Jun 12, 2016 at 12:22:16AM +0200, Henrik Austad wrote: > This adds support for loading the igb.ko module with tsn > capabilities. This requires a 2-step approach. First enabling TSN in > .config, then load the module with use_tsn=1. > > Once ena

Re: [very-RFC 4/8] Add TSN header for the driver

2016-06-11 Thread Henrik Austad
Clearing up netdev-typo -H On Sun, Jun 12, 2016 at 12:22:17AM +0200, Henrik Austad wrote: > From: Henrik Austad > > This defines the general TSN headers for network packets, the > shim-interface and the central 'tsn_list' structure. > > Cc: "David S. Miller

Re: [very-RFC 2/8] TSN: Add the standard formerly known as AVB to the kernel

2016-06-11 Thread Henrik Austad
clearing up netdev-typo On Sun, Jun 12, 2016 at 12:22:15AM +0200, Henrik Austad wrote: > TSN provides a mechanism to create reliable, jitter-free, low latency > guaranteed bandwidth links over a local network. It does this by > reserving a path through the network. Support for TSN must

Re: [very-RFC 1/8] TSN: add documentation

2016-06-11 Thread Henrik Austad
On Sat, Jun 11, 2016 at 03:49:42PM -0700, David Miller wrote: > From: Henrik Austad > Date: Sun, 12 Jun 2016 00:47:28 +0200 > > > What would be the best approach? Resend series to netdev@vger? I don't want > > to spam too many lists either. > > Resend to all t

Re: [very-RFC 1/8] TSN: add documentation

2016-06-11 Thread Henrik Austad
On Sun, Jun 12, 2016 at 12:22:14AM +0200, Henrik Austad wrote: > From: Henrik Austad Clearing up the netdev-typo > > Describe the overall design behind the TSN standard, the TSN-driver, > requirements to userspace and new functionality introduced. > > Cc: "David S. M

Re: [very-RFC 0/8] TSN driver for the kernel

2016-06-11 Thread Henrik Austad
On Sun, Jun 12, 2016 at 12:22:13AM +0200, Henrik Austad wrote: > Hi all Sorry.. I somehow managed to mess up the address to netdev, so if you feel like replying to this, use this as it has the correct netdev-address. again, sorry > (series based on v4.7-rc2) > > This is a *very* e

Re: [very-RFC 1/8] TSN: add documentation

2016-06-11 Thread Henrik Austad
ld be the best approach? Resend series to netdev@vger? I don't want to spam too many lists either. -- Henrik Austad signature.asc Description: Digital signature

[very-RFC 7/8] AVB ALSA - Add ALSA shim for TSN

2016-06-11 Thread Henrik Austad
From: Henrik Austad This exposes a *very* rudimentary and simplistic ALSA driver that hooks into TSN to create a device for userspace. It currently only supports 44.1/48kHz sampling, 2ch, S16_LE Userspace is supposed to reserve bandwidth, find StreamID etc. To use as a Talker: mkdir /config

[very-RFC 5/8] Add TSN machinery to drive the traffic from a shim over the network

2016-06-11 Thread Henrik Austad
From: Henrik Austad In short summary: * tsn_core.c is the main driver of tsn, all new links go through here and all data to/form the shims are handled here core also manages the shim-interface. * tsn_configfs.c is the API to userspace. TSN is driven from userspace and a link is created

[very-RFC 2/8] TSN: Add the standard formerly known as AVB to the kernel

2016-06-11 Thread Henrik Austad
that the core TSN driver can use this when configuring a new NIC or setting up a new link. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- include/linux/netdevice.h | 32 net/Kconfig | 1 + net/tsn/Kconfig

[very-RFC 8/8] MAINTAINERS: add TSN/AVB-entries

2016-06-11 Thread Henrik Austad
From: Henrik Austad Not sure how relevant this is other than making a point about maintaining it. Signed-off-by: Henrik Austad --- MAINTAINERS | 14 ++ 1 file changed, 14 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index ed42cb6..ef5d926 100644 --- a/MAINTAINERS +++ b

[very-RFC 0/8] TSN driver for the kernel

2016-06-11 Thread Henrik Austad
- tie to (g)PTP properly, currently using ktime_get() for presentation time - get time from shim into TSN and vice versa - let shim create/manage buffer Henrik Austad (8): TSN: add documentation TSN: Add the standard formerly known as AVB to the kernel Adding TSN-driver to Intel I210 contr

[very-RFC 3/8] Adding TSN-driver to Intel I210 controller

2016-06-11 Thread Henrik Austad
er is *not* stable, it is still a work in progress. Cc: Jeff Kirsher Cc: intel-wired-...@lists.osuosl.org Cc: "David S. Miller" Signed-off-by: Henrik Austad --- drivers/net/ethernet/intel/Kconfig| 18 ++ drivers/net/ethernet/intel/igb/Makefile | 2 +- drivers/net/ethe

[very-RFC 1/8] TSN: add documentation

2016-06-11 Thread Henrik Austad
From: Henrik Austad Describe the overall design behind the TSN standard, the TSN-driver, requirements to userspace and new functionality introduced. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- Documentation/TSN/tsn.txt | 147

[very-RFC 4/8] Add TSN header for the driver

2016-06-11 Thread Henrik Austad
From: Henrik Austad This defines the general TSN headers for network packets, the shim-interface and the central 'tsn_list' structure. Cc: "David S. Miller" Signed-off-by: Henrik Austad --- include/linux/tsn.h | 806

[very-RFC 6/8] Add TSN event-tracing

2016-06-11 Thread Henrik Austad
From: Henrik Austad This needs refactoring and should be updated to use TRACE_CLASS, but for now it provides a fair debug-window into TSN. Cc: "David S. Miller" Cc: Steven Rostedt (maintainer:TRACING) Cc: Ingo Molnar (maintainer:TRACING) Signed-off-by: Henrik Austad --- inc