Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
ce8e83b3
Commit
ce8e83b3
authored
Jun 09, 2003
by
Patrick Mochel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[driver model] Remove system device definitions from device.h
Should have been in earlier changeset. D'oh.
parent
c81d6bf0
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
0 additions
and
72 deletions
+0
-72
include/linux/device.h
include/linux/device.h
+0
-72
No files found.
include/linux/device.h
View file @
ce8e83b3
...
...
@@ -352,78 +352,6 @@ extern struct device * get_device(struct device * dev);
extern
void
put_device
(
struct
device
*
dev
);
/* drivers/base/sys.c */
/**
* System devices follow a slightly different driver model.
* They don't need to do dynammic driver binding, can't be probed,
* and don't reside on any type of peripheral bus.
* So, we represent and treat them a little differently.
*
* We still have a notion of a driver for a system device, because we still
* want to perform basic operations on these devices.
*
* We also support auxillary drivers binding to devices of a certain class.
*
* This allows configurable drivers to register themselves for devices of
* a certain type. And, it allows class definitions to reside in generic
* code while arch-specific code can register specific drivers.
*
* Auxillary drivers registered with a NULL cls are registered as drivers
* for all system devices, and get notification calls for each device.
*/
struct
sys_device
;
struct
sysdev_class
{
struct
list_head
drivers
;
/* Default operations for these types of devices */
int
(
*
shutdown
)(
struct
sys_device
*
);
int
(
*
suspend
)(
struct
sys_device
*
,
u32
state
);
int
(
*
resume
)(
struct
sys_device
*
);
struct
kset
kset
;
};
extern
int
sysdev_class_register
(
struct
sysdev_class
*
);
extern
void
sysdev_class_unregister
(
struct
sysdev_class
*
);
/**
* Auxillary system device drivers.
*/
struct
sysdev_driver
{
struct
list_head
entry
;
int
(
*
add
)(
struct
sys_device
*
);
int
(
*
remove
)(
struct
sys_device
*
);
int
(
*
shutdown
)(
struct
sys_device
*
);
int
(
*
suspend
)(
struct
sys_device
*
,
u32
state
);
int
(
*
resume
)(
struct
sys_device
*
);
};
extern
int
sysdev_driver_register
(
struct
sysdev_class
*
,
struct
sysdev_driver
*
);
extern
void
sysdev_driver_unregister
(
struct
sysdev_class
*
,
struct
sysdev_driver
*
);
/**
* sys_devices can be simplified a lot from regular devices, because they're
* simply not as versatile.
*/
struct
sys_device
{
u32
id
;
struct
sysdev_class
*
cls
;
struct
kobject
kobj
;
};
extern
int
sys_device_register
(
struct
sys_device
*
);
extern
void
sys_device_unregister
(
struct
sys_device
*
);
extern
struct
bus_type
system_bus_type
;
/* drivers/base/platform.c */
struct
platform_device
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment