On Thu, Jan 10, 2013 at 04:40:19PM -0700, Toshi Kani wrote:
> +/*
> + * Hot-plug device information
> + */

Again, stop it with the "generic" hotplug term here, and everywhere
else.  You are doing a very _specific_ type of hotplug devices, so spell
it out.  We've worked hard to hotplug _everything_ in Linux, you are
going to confuse a lot of people with this type of terms.

> +union shp_dev_info {
> +     struct shp_cpu {
> +             u32             cpu_id;
> +     } cpu;

What is this?  Why not point to the system device for the cpu?

> +     struct shp_memory {
> +             int             node;
> +             u64             start_addr;
> +             u64             length;
> +     } mem;

Same here, why not point to the system device?

> +     struct shp_hostbridge {
> +     } hb;
> +
> +     struct shp_node {
> +     } node;

What happened here with these?  Empty structures?  Huh?

> +};
> +
> +struct shp_device {
> +     struct list_head        list;
> +     struct device           *device;

No, make it a "real" device, embed the device into it.

But, again, I'm going to ask why you aren't using the existing cpu /
memory / bridge / node devices that we have in the kernel.  Please use
them, or give me a _really_ good reason why they will not work.

> +     enum shp_class          class;
> +     union shp_dev_info      info;
> +};
> +
> +/*
> + * Hot-plug request
> + */
> +struct shp_request {
> +     /* common info */
> +     enum shp_operation      operation;      /* operation */
> +
> +     /* hot-plug event info: only valid for hot-plug operations */
> +     void                    *handle;        /* FW handle */
> +     u32                     event;          /* FW event */

What is this?

greg k-h
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to