1. 04 Jan, 2003 3 commits
    • Patrick Mochel's avatar
      driver model: clean up struct bus_type a bit. · 46dbdc4e
      Patrick Mochel authored
      - Remove devices list, in favor of using the list in the subordinate
        devices subsystem.
      - Rename devsubsys to 'devices' and drvsubsys to 'drivers'.
      - Use bus's rwsem when iterating over drivers, instead of the 
        subordinate driver subsystem's. (We use that one when adding the 
        driver, and binding it to devices).
      46dbdc4e
    • Patrick Mochel's avatar
      kobject: Introduce struct kobj_type. · 23066070
      Patrick Mochel authored
      This is the first step in morphing struct subsystem into something meaningful.
      
      A subsystem is defined simply as a list of kobjects of a certain type, which
      is far too generic. A subsystem should be representative of a large entity
      of code (i.e. a subsystem of the kernel), not just a simple list. 
      
      This changeset:
      
      - Creates struct kobj_type, a descriptor of the type a kobject is embedded
        in.
      
      - Extracts the fields that are specific to a particular object type from
        struct subsystem and puts them in struct kobj_type, which are
        - the object's release method.
        - the sysfs operations for the object type.
        - the default attributes of the object type.
      
      - Adds ptr to struct kobject to point to its type descriptor. 
      
      - Converts the existing subsystem definitions to define struct kobj_type. 
      
      
      struct kobj_type's are not registered, as they do not have any explicit
      representation in the object hierarchy, nor do they have any fields that
      need runtime initialization. 
      
      A kobject's ktype should be set when it is registered, like its subsystem.
      Note this obviates the need for defining a struct subsystem when an object
      type does not need to be kept in a global list. 
      23066070
    • Patrick Mochel's avatar
  2. 03 Jan, 2003 1 commit
  3. 02 Jan, 2003 36 commits