Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ****************************************************************************
     11  ****************************************************************************/
     12 #ifndef _ATTRIBUTE_CONTAINER_H_
     13 #define _ATTRIBUTE_CONTAINER_H_
     14 
     15 #include <linux/device.h>
     16 #include <linux/list.h>
     17 #include <linux/klist.h>
     18 #include <linux/spinlock.h>
     19 
     20 struct attribute_container {
     21  struct list_head node;
     22  struct klist containers;
     23  struct class *class;
     24  struct class_device_attribute **attrs;
     25  int (*match)(struct attribute_container *, struct device *);
     26 #define ATTRIBUTE_CONTAINER_NO_CLASSDEVS 0x01
     27  unsigned long flags;
     28 };
     29 
     30 struct attribute_container *attribute_container_classdev_to_container(struct class_device *);
     31 struct class_device *attribute_container_find_class_device(struct attribute_container *, struct device *);
     32 struct class_device_attribute **attribute_container_classdev_to_attrs(const struct class_device *classdev);
     33 
     34 #endif
     35