mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Zijun Hu <quic_zijuhu@quicinc.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	<linux-kernel@vger.kernel.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Danilo Krummrich <dakr@kernel.org>, Lyude Paul <lyude@redhat.com>
Cc: "Alexander Lobakin" <aleksander.lobakin@intel.com>,
	"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Jonathan Cameron" <Jonathan.Cameron@huawei.com>,
	"Liam Girdwood" <lgirdwood@gmail.com>,
	"Lukas Wunner" <lukas@wunner.de>,
	"Mark Brown" <broonie@kernel.org>,
	"Maíra Canal" <mairacanal@riseup.net>,
	"Robin Murphy" <robin.murphy@arm.com>,
	"Simona Vetter" <simona.vetter@ffwll.ch>,
	linux-usb@vger.kernel.org, rust-for-linux@vger.kernel.org
Subject: Re: [PATCH v3 1/8] driver core: add a faux bus for use when a simple device/bus is needed
Date: Fri, 7 Feb 2025 10:54:38 +0800	[thread overview]
Message-ID: <e9c3f622-0126-4cea-984c-29e77209ae30@quicinc.com> (raw)
In-Reply-To: <2025020623-chemo-amends-102a@gregkh>

On 2/7/2025 1:38 AM, Greg Kroah-Hartman wrote:
> +#include "base.h"
> +
> +#define MAX_FAUX_NAME_SIZE	256	/* Max size of a faux_device name */

Remove this macro?

> ++ */

<snip>

> +struct faux_device *faux_device_create_with_groups(const char *name,
> +						   const struct faux_device_ops *faux_ops,
> +						   const struct attribute_group **groups)
> +{
> +	struct device *dev;
> +	struct faux_object *faux_obj;
> +	struct faux_device *faux_dev;
> +	int name_size;

Remove @name_size?

> +	int ret;
> +
> +	name_size = strlen(name);
> +	if (name_size > MAX_FAUX_NAME_SIZE)
> +		return NULL;
> +

Remove above block related to @name_size

> +	faux_obj = kzalloc(sizeof(*faux_obj) + name_size + 1, GFP_KERNEL);

faux_obj = kzalloc(sizeof(*faux_obj), GFP_KERNEL);

> +	if (!faux_obj)
> +		return NULL;
> +
> +	/* Save off the callbacks so we can use them in the future */
> +	faux_obj->faux_ops = faux_ops;
> +
> +	/* Initialize the device portion and register it with the driver core */
> +	faux_dev = &faux_obj->faux_dev;
> +	dev = &faux_dev->dev;
> +
> +	device_initialize(dev);
> +	dev->release = faux_device_release;
> +	dev->parent = &faux_bus_root;
> +	dev->bus = &faux_bus_type;
> +	dev->groups = groups;
> +	dev_set_name(dev, "%s", name);
> +
> +	ret = device_add(dev);
> +	if (ret) {
> +		pr_err("%s: device_add for faux device '%s' failed with %d\n",
> +		       __func__, name, ret);
> +		put_device(dev);
> +		return NULL;
> +	}
> +
> +	return faux_dev;
> +}
> +EXPORT_SYMBOL_GPL(faux_device_create_with_groups);

<snip>

> ++int __init faux_bus_init(void)
> +{
> +	int ret;
> +
> +	ret = device_register(&faux_bus_root);
> +	if (ret) {
> +		put_device(&faux_bus_root);
> +		return ret;
> +	}
> +
> +	ret = bus_register(&faux_bus_type);
> +	if (ret)
> +		goto error_bus;
> +
> +	ret = driver_register(&faux_driver);
> +	if (ret)
> +		goto error_driver;
> +
> +	return ret;

return 0;

> +
> +error_driver:
> +	bus_unregister(&faux_bus_type);
> +
> +error_bus:
> +	device_unregister(&faux_bus_root);
> +	return ret;
> +}

<snip>

  parent reply	other threads:[~2025-02-07  2:55 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-06 17:38 [PATCH v3 0/8] Driver core: Add faux bus devices Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 1/8] driver core: add a faux bus for use when a simple device/bus is needed Greg Kroah-Hartman
2025-02-06 18:08   ` Thomas Weißschuh
2025-02-06 20:07     ` Lyude Paul
2025-02-07  9:13       ` Greg Kroah-Hartman
2025-02-07  9:15     ` Greg Kroah-Hartman
2025-02-07  2:54   ` Zijun Hu [this message]
2025-02-07  9:16     ` Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 2/8] regulator: dummy: convert to use the faux device interface Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 3/8] x86/microcode: move away from using a fake platform device Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 4/8] wifi: cfg80211: " Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 5/8] tlclk: convert to use faux_device Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 6/8] misc: lis3lv02d: " Greg Kroah-Hartman
2025-02-06 17:38 ` [PATCH v3 7/8] drm/vgem/vgem_drv " Greg Kroah-Hartman
2025-02-06 20:04   ` Lyude Paul
2025-02-06 17:38 ` [PATCH v3 8/8] drm/vkms: " Greg Kroah-Hartman
2025-02-06 20:03   ` Lyude Paul
2025-02-07  9:16     ` Greg Kroah-Hartman
2025-02-07 16:59   ` Louis Chauvet
2025-02-08  7:12     ` Greg Kroah-Hartman
2025-02-08  8:37       ` Louis Chauvet
2025-02-08  8:49         ` Greg Kroah-Hartman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e9c3f622-0126-4cea-984c-29e77209ae30@quicinc.com \
    --to=quic_zijuhu@quicinc.com \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=aleksander.lobakin@intel.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=bhelgaas@google.com \
    --cc=broonie@kernel.org \
    --cc=dakr@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=lyude@redhat.com \
    --cc=mairacanal@riseup.net \
    --cc=rafael@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=simona.vetter@ffwll.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®