Hi, On Fri, Apr 15, 2022 at 5:54 PM Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> wrote: > > >>> * They rely on there being exactly 1 AUX device, or we make it a rule > >>> that we wait for all AUX devices to probe (?) > >> > >> Is the backlight a separate device on an AUX bus? Judging from > >> drm_panel_dp_aux_backlight(), it isn't. I assumed that aux bus is just > >> a point-to-point bus, so there is always a single client. > > > > Define "device". ;-) > > "a device on the AUX bus" = the device, which lists dp_aux_bus_type as > dev->bus_type. Right. So I guess I was thinking that we _could_ have modeled the backlight as a device which lists dp_aux_bus_type as dev->bus_type. AKA: 1. We could have had a second node in the sc7180-trogdor-homestar device tree under the DP controller for the DP AUX backlight. 2. Instead of manually calling drm_panel_dp_aux_backlight() from panel-edp.c and panel-samsung-atna33xc20.c the backlight could have just probed on its own. 3. In the device tree, the panel could have had a link to the backlight's phandle which would have made the existing drm_panel_of_backlight() "just work" and we wouldn't have needed the manual call to drm_panel_dp_aux_backlight(). Oh. But. Maybe. Not. We couldn't really have done that because we would have been able to do the DP AUX transactions for the backlight without powering on the panel. So we couldn't really have probed them separately. OK, you guys win this round. ;-) > > It's a seperate "struct device" from a Linux point of view since it's > > a backlight class device. Certainly it's highly correlated to the > > display, but one can conceptually think of them as different devices, > > sorta. ;-) > > > > I actually dug a tiny bit more into the whole "touchscreen over aux". > > I guess DP 1.2 has a standard of "USB over DP AUX". No idea how that > > would be modeled, of course. > > Ugh. Do you have any details of the standard itself? Like how does it > looks like from the host point of view. And if the AUX is required to be > powered for this USB bus to work? > > In other words: if we were to model it at this moment, would it be the > child of the panel device (like backlight) or a separate device sitting > on the same AUX bus? I spent a bunch of time searching and I couldn't find more than a reference, like "hey we came up with this idea and we're gonna write down in the spec that you could totally do USB over the AUX channel, but ummmm, we haven't actually implemented it yet". ;-) I certainly could be wrong, but all of the references I could find were distinctly lacking in details or pointers to other docs w/ more info. ...but while searching I _did_ find a lot of details (in the eDP 1.4 spec) about "Multi-touch over AUX". That looks like something that's actually more well thought out and maybe even implemented somewhere.