On 3/23/23 10:58, Greg Kroah-Hartman wrote:
On Thu, Mar 23, 2023 at 07:17:40AM +0000, Vaittinen, Matti wrote:
On 3/22/23 20:57, Greg Kroah-Hartman wrote:
On Wed, Mar 22, 2023 at 03:48:00PM +0200, Matti Vaittinen wrote:
Hi Greg,
Thanks for looking at this.
On 3/22/23 14:07, Greg Kroah-Hartman wrote:
On Wed, Mar 22, 2023 at 11:05:55AM +0200, Matti Vaittinen wrote:
The biggest thing for me is that I don't like the idea of creating own 'test
device' in <add subsystem here> while we already have some in DRM (or
others). Thus, I do see value in adding generic helpers for supporting
running KUnit tests on devm_* APIs. Hence it'd be good to have _some_
support for it.
I agree, let's use a virtual device and a virtual bus (you can use the
auxbus code for this as that's all there for this type of thing)
Hm. The auxiliary_devices require parent. What would be the best way to
deal with that in KUnit tests?
If you use NULL as the parent, it goes into the root.
As far as I read this is not the case with auxiliary devices. Judging
the docs they were intended to be representing some part of a (parent)
device. I see the auxiliary_device_init() has explicit check for parent
being populated:
int auxiliary_device_init(struct auxiliary_device *auxdev)
{
struct device *dev = &auxdev->dev;
if (!dev->parent) {
pr_err("auxiliary_device has a NULL dev->parent\n");
return -EINVAL;
}
As I wrote in another mail, I thought of using a root_device for this
IIO test as was suggested by David. To tell the truth, implementing a
kunit bus device is starting to feel a bit overwhelming... I started
just adding a driver for a light sensor, ended up adding a helper for
IIO gain-time-scale conversions and I am slightly reluctant to going the
extra-extra mile of adding some UT infrastructure in the context of this
driver work...
Well, let's see. Maybe I change my mind after a good night's sleep :)
Yours,
-- Matti
--
Matti Vaittinen
Linux kernel developer at ROHM Semiconductors
Oulu Finland
~~ When things go utterly wrong vim users can always type :help! ~~