< pinchartl> welcome to the multimedia group chat meeting
< pinchartl> Topic 1. Status Check for the Multimedia Tasks	        [18:03]
< pinchartl> * Geert
<pinchartl> Since last meeting:
<pinchartl> - Alternative version to support ov7725 sensors on
	    r8a7742-iwg21d-q7-dbcm
<pinchartl> No feedback from Prabhakar
<pinchartl> Until next meeting: None
<pinchartl> Issues and blockers: None
<pinchartl> geertu: any comment ?
<geertu> pinchartl: no comments					        [18:04]
<geertu> will ping Prabhakar
<pinchartl> I haven't followed, why was an alternative version needed ? is
	    there anything we need to discuss ?
<geertu> pinchartl: The original patch was not very flexible. The user can mix
	 and match cameras on all 4 interfaces, so I wanted to support that.
								        [18:05]
<pinchartl> ok
<pinchartl> thanks
<pinchartl> * Jacopo
<pinchartl> Since last meeting:
<pinchartl> - RDACM21 support merged (in v5.12 ;D ) with a bit of pushing [1]
<pinchartl> - Eagle GMSL DT integration sent
<pinchartl> - GMSL reliability testing
<pinchartl> Run hundreds of boot cycles test to assest GMSL initialization
	    reliability abusing Kieran's remote lab :)
<pinchartl> [PATCH 00/16] media: i2c: GMSL reliability improvements
<pinchartl> Until next meeting:
<pinchartl> - Investigate Mauro's request to make max9271 an i2c driver
<pinchartl> - periject BSP ticket patch sweep
<pinchartl> - Investigate IMR patches in the new ticket
<pinchartl> Issues and blockers: None
<pinchartl> jmondi: any comment ?
<jmondi> not really, we can discuss mauro's request
<pinchartl> I'll add it to discussion points			        [18:06]
<pinchartl> thanks
<jmondi> and I will have questions for japeri about IMR, but that's better
	 handled by email
<pinchartl> * Kieran
<pinchartl> Since last meeting:
<pinchartl> - Identified CMA memory leak introduced in v5.11-rcX
<pinchartl> Issue bisected, reported, and fix tested.
<pinchartl> - GMSL testing and review
<pinchartl> - V3U received, and set up - and running on BristolBoardFarm
<pinchartl> Access already provided to Geert and Jacopo. Others can be set up,
<pinchartl> please ask.
<pinchartl> - Initial testing on V3U
<pinchartl> - Looked into GMSL2 and cabling requirements for V3U
<pinchartl> Until next meeting:
<pinchartl> - Further testing and completion of the V3U VSP/DU integration
<pinchartl> Issues and blockers: None
<pinchartl> kbingham: any comment ?
<kbingham> That will do ;-)
<pinchartl> thanks
<pinchartl> * Laurent
<pinchartl> Since last meeting:
<pinchartl> - Improved V4L2 async notifier API
<pinchartl> - Resumed V4L2 multiplexed streams development
<pinchartl> - GMSL2 planning discussions			        [18:07]
<pinchartl> - Found distributor for GMSL2 quad HFM cables
<pinchartl> - Shipped V3U board to Kieran
<pinchartl> Morimoto-san isn't our only paperwork person anymore.
<pinchartl> Until next meeting:
<pinchartl> - Follow up on 3D LUT API proposal for DRM/KMS
<pinchartl> - Periject triage for display
<pinchartl> - GMSL2 planning
<pinchartl> Issues and blockers: None
<pinchartl> any question ?
<moriperi> Nice paperwork :)
<kbingham> You mean you are also the paperwork guy?
<kbingham> I had to pay VAT on the import but no duties and customs, so I
	   think your paperwork was successful ;-)
<pinchartl> * Morimoto-san					        [18:09]
<pinchartl> Since last meeting:
<pinchartl> - Posting ALSA SoC cleanup patches
<pinchartl> It is almost in the final stage, finally.
<pinchartl> - Brush up new sound card driver
<pinchartl> - Request new sound test command to Ulrich		        [18:10]
<pinchartl> Ulrich has previously created a sound test, but it stopped working
	    at
<pinchartl> some point. A new test has been requested (which may be a simpler
	    tool).
<pinchartl> Until next meeting:
<pinchartl> - Port ALSA cleanup patches
<pinchartl> - Brush up new sound card driver
<pinchartl> Issues and Blockers: None
<pinchartl> moriperi: any comment ?
<moriperi> nothing, thanks
<pinchartl> thank you
<pinchartl> * Niklas
<pinchartl> Since last meeting:
<pinchartl> [PATCH v2 0/4] rcar-csi2: Update handling of transfer error
<pinchartl> Until next meeting:
<pinchartl> - Sort out pending patches and triage periject
<pinchartl> - Start VIN, CSI-2 and ISP capture prototype for V3U
<pinchartl> Issues and blockers: None
<pinchartl> neg: any comment ?
<neg> I have no comments at this time :-)
<pinchartl> thanks :-)						        [18:11]
<pinchartl> * Ulrich
<pinchartl> Since last meeting: None
<pinchartl> Until next meeting:
<pinchartl> - atest improvements
<pinchartl> Add support for more than 2 channels and sample sizes != 16 bits.
<pinchartl> Issues and blockers: None
<pinchartl> uli__: any comment ?
<uli__> moriperi: is the dependency on libsndfile a problem for your use case?
<uli__> if so, i can add it to the repo and statically link it, or use
	something else altogether				        [18:12]
<uli__> i'd just like to know before i continue
<pinchartl> I've captured that in the notes, let's move on until Morimoto-san
	    finds his keyboard again :-)			        [18:14]
<pinchartl> Topic 2. Discussions
<pinchartl> - GMSL2 cables
<moriperi> uli__: I'm not sure which one is related to the previous atest
<pinchartl> we now have a relatively cheap option for GMSL2 cable
<pinchartl> damm: we need an answer from you on this topic
<uli__> moriperi: the new atest uses libsndfile to read/write files
<moriperi> I'm using buildroot mainly. It is useful for me if new one works on
	   it.							        [18:15]
<uli__> should be ok then. i'll check, though.			        [18:16]
<uli__> thanks
<moriperi> thanks
<pinchartl> and while waiting for Magnus to get the keyboard back from
	    Morimoto-san,
<pinchartl> - I2C driver for MAX9271
<pinchartl> jmondi: feel free to speak
<damm> hi guys, so for the cables, can you tell us the estimated total cost
       here?							        [18:17]
<damm> that way mori/shimo can give ack/nack			        [18:18]
<jmondi> pinchartl: I'll let the cable discussion end first :)
<kbingham> ~$200 per board plus shipping, ?
<pinchartl> damm:
	    https://www.avnet.com/shop/us/products/avnet-engineering-services/l02-027-1000-z-zzzz-v2-3074457345635644755/
<damm> sorry i dont recall the total number of boards
<kbingham> 1 here, and don't you have one damm ?
<pinchartl> $69 / cable + shipping				        [18:19]
<pinchartl> up to 3 cables per V3U
<damm> yeah and some board is in transit
<damm> so 3 boards and 3 cables - a total of 10 would suffice?
<pinchartl> it should, yes					        [18:20]
<damm> so shall we make two orders of 6 cables to have a bit of failover?
<damm> or four orders of 3 cables
<kbingham> it probably makes sense to get cables ordered directly to where
	   they are needed.
<pinchartl> it would likely be cheaper for each board owner to buy their own
	    cables
<damm> or one order of 12 =)
<pinchartl> otherwise we'll have to ship them ourselves, and that's usually
	    more expensive
<damm> ok lets decide that
<pinchartl> so green light for Kieran to order 3 cables ?	        [18:21]
<damm> from my side for sure
<pinchartl> and invoicing it to Jinzai ? :-)
<damm> i'll make sure to order cables for the other ones
<damm> good question =)						        [18:22]
<damm> do we have any multimedia member that has a contract with opensource
       ab?
<neg> We do :-)							        [18:23]
<damm> if so the cost can just be added to the invoice
<neg> Silly question, do the RDACM2{0,1} modules fit the new cables ?
<pinchartl> neg: yes they do
<damm> is it possible for neg and pinchartl to figure out the money situation
       if neg sends an invoice?					        [18:24]
<neg> Sure we figure it
<pinchartl> so is the recommendation for Niklas to order the cables with
	    Kieran's address as the destination ?
<damm> interesting
<pinchartl> that minimzes paperwork
<damm> i'd like to route them through a french speaking country to reduce
       potential complexity					        [18:25]
<damm> just kidding
<pinchartl> can't help with that I'm afraid, Finland is still not French
	    speaking despite my efforts
<neg> I was hoping to hand carry them thru the Caribbeans
<jmondi> I can throw the italian postal service in the mix if you want to
	 reduce the potential shipment complexity
<damm> i think niklas can decide to ship them wherever he wants	        [18:26]
<neg> Guess I can pick the French side of St Marten
<damm> just give a receipt with the invoice
<neg> damm: Will do
<damm> that should solve the cable situation for EU side?
<damm> thanks
<pinchartl> yep
<damm> neg: let me know what you end up ordering		        [18:27]
<pinchartl> jmondi: back to MAX9271
<neg> damm: Sure, aim is to get 3 cables directly shipped to kbingham
<jmondi> sure							        [18:28]
<jmondi> well, you know the issue
<jmondi> (apart from me breaking -next two times :)
<kbingham> only twice ?
<jmondi> in a row!
<pinchartl> anything to discuss ? or will you just investigate first ?
<jmondi> quick recap: Mauro wants the max9271 to be made a full i2c driver
								        [18:29]
<jmondi> with the camera modules instantiating a new i2c device for that, and
	 communication with the serializer implemented used a regular kAPI
<jmondi> instead of function calls
<jmondi> I don't see any real gain if not pleasing him, but I understand the
	 current design is 'unusual'				        [18:30]
<jmondi> ack to investigate on that side ?
<pinchartl> I think it would make sense to have such a design for cameras that
	    are saner (no MCU). investigating what could be done in that case
	    is a good idea					        [18:31]
<pinchartl> then the investigation could be pushed to see if we could also
	    address the rdacm20 and rdacm21
<pinchartl> or if we need to keep the current architecture for those
<pinchartl> does it make sense ?
<jmondi> the part that worries me is the reprogramming of the i2c address more
	 than the MCU						        [18:32]
<pinchartl> the goal of the investigation is to figure out if there are
	    blockers :-)					        [18:33]
<jmondi> and the fact that to configure the gmsl specific paramters the
	 current v4l2-subdev kAPI might not be enough
<jmondi> so yeah, trying to see how it pans out makes sense imho
<pinchartl> the V4L2 subdev API could be extended if needed
<pinchartl> let's investigate to see what would be needed	        [18:34]
<jmondi> yep
<pinchartl> and then we can decide if it's worth the effort
<pinchartl> still on the topic of GMSL
<pinchartl> jmondi: you have reported three issues last time:
<pinchartl> - MAX9271 probe issue (where reprogramming the chip wasn't enough
	    to recover from failures)
<pinchartl> - RDACM20 startup (circular dependency between regulator and GPIO
	    controller)						        [18:35]
<pinchartl> - RDACM20 startup delay (which seemed not to be needed on Eagle)
<pinchartl> have those been investigated and/or solved ?
<jmondi> yes, investigate for sure				        [18:36]
<jmondi> it's in the "GMSL reliability
<jmondi> sorry, "GMSL reliability testing" part
<jmondi> the series I've sent tries to reduce the part of initialization which
	 is run without noise immunit protection activated
<jmondi> and even if not perfect, on a 50 boot cycle tests I had 6 failures
	 iirc							        [18:37]
<pinchartl> that's way too high
<jmondi> it was 20%
<pinchartl> and I'm not sure if noise immunity is really the culprit here
<pinchartl> are you in an environment so noisy that the camera would fail in
	    12% of the tests ? :-)				        [18:38]
<jmondi> ask Kieran, board is in his lab :)
<jmondi> remember powering goes through the same cables that transport data
<geertu> jmondi: Does the driver notice the failure? Can it retry? Does it
	 succeed on retry?					        [18:39]
<pinchartl> yes, and that's by design
<pinchartl> it's supposed to work
<geertu> It's coax, so it should be fairly immune to noise
<pinchartl> geertu: it's the first issue I've listed, retrying doesn't work
<pinchartl> or didn't work at least
<jmondi> geertu: the driver notices the failure, but the error seems to be
	 unrecoverable
<pinchartl> jmondi: are the three issues still affecting us then ?
<jmondi> I've never been able to recover a failure on identifying max9271
								        [18:40]
<jmondi> also, the time between power-on and power-off seems to play a role
<jmondi> pinchartl: failure in identifying max9271 are still not recoverable,
	 but I haven't seen any with the new design
<jmondi> the circular dependency on regulator and GPIO controller has been
	 solved with a gpio hog as it was done in Kieran's early integration
								        [18:41]
<pinchartl> didn't you say you saw 6 failures in 50 boots ?
<jmondi> the startup delay on Salvator-x is not needed
<kbingham> I love that the startup delay is no longer needed.
<kbingham> (Though very curious how we'll handle that in the full 8 camera
	   case)						        [18:42]
<jmondi> pinchartl: yes, but there might be different failures :) max9271
	 identification, image sensor programming, ISP id reading
<jmondi> currently I got most failures on a single camera, always the same
	 one, so it might as well be HW related
<pinchartl> the startup delay seems *very* fishy. we know there's an MCU that
	    issues I2C transactions. if we open the I2C link over GMSL before
	    the MCU is done, how can this work ?
<jmondi> I tried also reading the MCU content and tried to estimante the delay
	 it takes to startup, which is not documented		        [18:43]
<neg> IIRC the delay was also needed as the boot sequence for H3 ES1.0 setup
      was that the daughterboard should be powerd on after the main board
<jmondi> for 1.5 seconds I cannot access the MCU, but that might be due to the
	 i2c traffic it generates				        [18:44]
<jmondi> I don't know how an 8 seconds delay was estimated in first place
<pinchartl> jmondi: does this mean the delay can be reduced to 1.5s instead of
	    8s, but is still needed ?				        [18:45]
<jmondi> no, I removed delay ocmpletely				        [18:46]
<jmondi> completely
<pinchartl> how is it supposed to work if you start programming the MAX9271
	    while the MCU is also programming it ?
<jmondi> the MCU sends 3 messages to the serializer at startup	        [18:47]
<pinchartl> how do you ensure it doesn't race with the driver programming the
	    MAX9271 ?
<jmondi> the camera gets powered by a gpio hog as soon as the gpio controller
	 is registered						        [18:48]
<jmondi> which happens before we get to open channels one by one
<pinchartl> that sounds like a hack
<jmondi> there's no synchronization, but it doesn't seem worse than an
	 arbitrary delay
<jmondi> rdamc20 is very stable
<jmondi> rdacm21 is less stable
<pinchartl> we'll need to handle power management of cameras	        [18:49]
<pinchartl> keeping them powered on all the time isn't an option
<pinchartl> with a gpio hog we can't control them at runtime
<jmondi> that goes back to the fact we can't control the GPIO that powers the
	 camera with a regulator
<jmondi> due to the circular dependncy
<pinchartl> it's an issue on this platform, yes			        [18:50]
<pinchartl> but there are other GMSL boards where the power to the camera is
	    controlled by a regulator that is actually controllable :-)
<pinchartl> and on some systems, the power to each camera is controllable
	    individually
<jmondi> I think Salvator-X is one of them			        [18:51]
<jmondi> not on out platforms, but I guess it's possible
<pinchartl> not something we have to support right now, but we need to make
	    sure we don't go in a direction that will prevent this from being
	    implemented
<jmondi> ok, I don't think there's anything preventing it from happening
								        [18:53]
<pinchartl> ok
<pinchartl> anything else to discuss ?				        [18:54]
<neg> Not from me
<jmondi> not here
<pinchartl> let's adjourn the meeting then			        [18:55]
<pinchartl> thank you everybody for attending
<pinchartl> have a nice day
<jmondi> thanks
<shimoday> thanks
<neg> Thanks all, have nice day/evening
<shimoday> have a nice day. bye!