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
nexedi
linux
Commits
79cd7c1c
Commit
79cd7c1c
authored
Dec 01, 2002
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
bk://linuxusb.bkbits.net/pci_hp-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
parents
ab78bec6
9c076a26
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
56 additions
and
44 deletions
+56
-44
drivers/hotplug/Makefile
drivers/hotplug/Makefile
+5
-4
drivers/hotplug/cpci_hotplug_core.c
drivers/hotplug/cpci_hotplug_core.c
+4
-11
drivers/hotplug/cpci_hotplug_pci.c
drivers/hotplug/cpci_hotplug_pci.c
+4
-4
drivers/hotplug/ibmphp_ebda.c
drivers/hotplug/ibmphp_ebda.c
+8
-8
drivers/hotplug/pci_hotplug_core.c
drivers/hotplug/pci_hotplug_core.c
+31
-12
include/linux/pci.h
include/linux/pci.h
+4
-5
No files found.
drivers/hotplug/Makefile
View file @
79cd7c1c
...
...
@@ -8,13 +8,17 @@ obj-$(CONFIG_HOTPLUG_PCI) += pci_hotplug.o
obj-$(CONFIG_HOTPLUG_PCI_COMPAQ)
+=
cpqphp.o
obj-$(CONFIG_HOTPLUG_PCI_IBM)
+=
ibmphp.o
obj-$(CONFIG_HOTPLUG_PCI_ACPI)
+=
acpiphp.o
obj-$(CONFIG_HOTPLUG_PCI_CPCI)
+=
cpci_hotplug.o
obj-$(CONFIG_HOTPLUG_PCI_CPCI_ZT5550)
+=
cpcihp_zt5550.o
obj-$(CONFIG_HOTPLUG_PCI_CPCI_GENERIC)
+=
cpcihp_generic.o
pci_hotplug-objs
:=
pci_hotplug_core.o
\
pci_hotplug_util.o
ifdef
CONFIG_HOTPLUG_PCI_CPCI
pci_hotplug-objs
+=
cpci_hotplug_core.o
\
cpci_hotplug_pci.o
endif
cpqphp-objs
:=
cpqphp_core.o
\
cpqphp_ctrl.o
\
cpqphp_proc.o
\
...
...
@@ -31,9 +35,6 @@ acpiphp-objs := acpiphp_core.o \
acpiphp_pci.o
\
acpiphp_res.o
cpci_hotplug-objs
:=
cpci_hotplug_core.o
\
cpci_hotplug_pci.o
ifdef
CONFIG_HOTPLUG_PCI_ACPI
EXTRA_CFLAGS
+=
-D_LINUX
-I
$(TOPDIR)
/drivers/acpi
ifdef
CONFIG_ACPI_DEBUG
...
...
drivers/hotplug/cpci_hotplug_core.c
View file @
79cd7c1c
...
...
@@ -891,16 +891,17 @@ cleanup_slots(void)
return
;
}
static
int
__init
cpci_hotplug_init
(
void
)
int
__init
cpci_hotplug_init
(
int
debug
)
{
spin_lock_init
(
&
list_lock
);
cpci_debug
=
debug
;
info
(
DRIVER_DESC
" version: "
DRIVER_VERSION
);
return
0
;
}
static
void
__exit
void
__exit
cpci_hotplug_exit
(
void
)
{
/*
...
...
@@ -909,14 +910,6 @@ cpci_hotplug_exit(void)
cleanup_slots
();
}
module_init
(
cpci_hotplug_init
);
module_exit
(
cpci_hotplug_exit
);
MODULE_AUTHOR
(
DRIVER_AUTHOR
);
MODULE_DESCRIPTION
(
DRIVER_DESC
);
MODULE_LICENSE
(
"GPL"
);
MODULE_PARM
(
cpci_debug
,
"i"
);
MODULE_PARM_DESC
(
cpci_debug
,
"Debugging mode"
);
EXPORT_SYMBOL_GPL
(
cpci_hp_register_controller
);
EXPORT_SYMBOL_GPL
(
cpci_hp_unregister_controller
);
...
...
drivers/hotplug/cpci_hotplug_pci.c
View file @
79cd7c1c
...
...
@@ -572,16 +572,16 @@ static int unconfigure_visit_pci_bus_phase2(struct pci_bus_wrapped *wrapped_bus,
}
static
struct
pci_visit
configure_functions
=
{
visit_pci_dev:
configure_visit_pci_dev
,
.
visit_pci_dev
=
configure_visit_pci_dev
,
};
static
struct
pci_visit
unconfigure_functions_phase1
=
{
post_visit_pci_dev:
unconfigure_visit_pci_dev_phase1
.
post_visit_pci_dev
=
unconfigure_visit_pci_dev_phase1
};
static
struct
pci_visit
unconfigure_functions_phase2
=
{
post_visit_pci_bus:
unconfigure_visit_pci_bus_phase2
,
post_visit_pci_dev:
unconfigure_visit_pci_dev_phase2
.
post_visit_pci_bus
=
unconfigure_visit_pci_bus_phase2
,
.
post_visit_pci_dev
=
unconfigure_visit_pci_dev_phase2
};
...
...
drivers/hotplug/ibmphp_ebda.c
View file @
79cd7c1c
...
...
@@ -1240,11 +1240,11 @@ void ibmphp_free_ebda_pci_rsrc_queue (void)
static
struct
pci_device_id
id_table
[]
__devinitdata
=
{
{
vendor:
PCI_VENDOR_ID_IBM
,
device:
HPC_DEVICE_ID
,
subvendor:
PCI_VENDOR_ID_IBM
,
subdevice:
HPC_SUBSYSTEM_ID
,
class:
((
PCI_CLASS_SYSTEM_PCI_HOTPLUG
<<
8
)
|
0x00
),
.
vendor
=
PCI_VENDOR_ID_IBM
,
.
device
=
HPC_DEVICE_ID
,
.
subvendor
=
PCI_VENDOR_ID_IBM
,
.
subdevice
=
HPC_SUBSYSTEM_ID
,
.
class
=
((
PCI_CLASS_SYSTEM_PCI_HOTPLUG
<<
8
)
|
0x00
),
},
{}
};
...
...
@@ -1252,9 +1252,9 @@ MODULE_DEVICE_TABLE(pci, id_table);
static
int
ibmphp_probe
(
struct
pci_dev
*
,
const
struct
pci_device_id
*
);
static
struct
pci_driver
ibmphp_driver
=
{
name:
"ibmphp"
,
id_table:
id_table
,
probe:
ibmphp_probe
,
.
name
=
"ibmphp"
,
.
id_table
=
id_table
,
.
probe
=
ibmphp_probe
,
};
int
ibmphp_register_pci
(
void
)
...
...
drivers/hotplug/pci_hotplug_core.c
View file @
79cd7c1c
...
...
@@ -60,8 +60,8 @@
/* local variables */
static
int
debug
;
#define DRIVER_VERSION "0.
4
"
#define DRIVER_AUTHOR "Greg Kroah-Hartman <greg@kroah.com>"
#define DRIVER_VERSION "0.
5
"
#define DRIVER_AUTHOR "Greg Kroah-Hartman <greg@kroah.com>
, Scott Murray <scottm@somanetworks.com>
"
#define DRIVER_DESC "PCI Hot Plug PCI Core"
...
...
@@ -89,7 +89,7 @@ static int pcihpfs_mount_count; /* times we have mounted our fs */
static
spinlock_t
mount_lock
;
/* protects our mount_count */
static
spinlock_t
list_lock
;
LIST_HEAD
(
pci_hotplug_slot_list
);
static
LIST_HEAD
(
pci_hotplug_slot_list
);
/* these strings match up with the values in pci_bus_speed */
static
char
*
pci_bus_speed_strings
[]
=
{
...
...
@@ -121,6 +121,14 @@ static struct proc_dir_entry *slotdir = NULL;
static
const
char
*
slotdir_name
=
"slots"
;
#endif
#ifdef CONFIG_HOTPLUG_PCI_CPCI
extern
int
cpci_hotplug_init
(
int
debug
);
extern
void
cpci_hotplug_exit
(
void
);
#else
static
inline
int
cpci_hotplug_init
(
int
debug
)
{
return
0
;
}
static
inline
void
cpci_hotplug_exit
(
void
)
{
}
#endif
static
struct
inode
*
pcihpfs_get_inode
(
struct
super_block
*
sb
,
int
mode
,
dev_t
dev
)
{
struct
inode
*
inode
=
new_inode
(
sb
);
...
...
@@ -311,19 +319,19 @@ static struct file_operations presence_file_operations = {
/* file ops for the "max bus speed" files */
static
ssize_t
max_bus_speed_read_file
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
offset
);
static
struct
file_operations
max_bus_speed_file_operations
=
{
read:
max_bus_speed_read_file
,
write:
default_write_file
,
open:
default_open
,
llseek:
default_file_lseek
,
.
read
=
max_bus_speed_read_file
,
.
write
=
default_write_file
,
.
open
=
default_open
,
.
llseek
=
default_file_lseek
,
};
/* file ops for the "current bus speed" files */
static
ssize_t
cur_bus_speed_read_file
(
struct
file
*
file
,
char
*
buf
,
size_t
count
,
loff_t
*
offset
);
static
struct
file_operations
cur_bus_speed_file_operations
=
{
read:
cur_bus_speed_read_file
,
write:
default_write_file
,
open:
default_open
,
llseek:
default_file_lseek
,
.
read
=
cur_bus_speed_read_file
,
.
write
=
default_write_file
,
.
open
=
default_open
,
.
llseek
=
default_file_lseek
,
};
/* file ops for the "test" files */
...
...
@@ -1273,19 +1281,30 @@ static int __init pci_hotplug_init (void)
goto
exit
;
}
result
=
cpci_hotplug_init
(
debug
);
if
(
result
)
{
err
(
"cpci_hotplug_init with error %d
\n
"
,
result
);
goto
error_fs
;
}
#ifdef CONFIG_PROC_FS
/* create mount point for pcihpfs */
slotdir
=
proc_mkdir
(
slotdir_name
,
proc_bus_pci_dir
);
#endif
info
(
DRIVER_DESC
" version: "
DRIVER_VERSION
"
\n
"
);
goto
exit
;
error_fs:
unregister_filesystem
(
&
pcihpfs_type
);
exit:
return
result
;
}
static
void
__exit
pci_hotplug_exit
(
void
)
{
cpci_hotplug_exit
();
unregister_filesystem
(
&
pcihpfs_type
);
#ifdef CONFIG_PROC_FS
...
...
include/linux/pci.h
View file @
79cd7c1c
...
...
@@ -383,7 +383,6 @@ struct pci_dev {
u8
rom_base_reg
;
/* which config register controls the ROM */
struct
pci_driver
*
driver
;
/* which driver has allocated this device */
void
*
driver_data
;
/* data private to the driver */
u64
dma_mask
;
/* Mask of the bits of bus address this
device implements. Normally this is
0xffffffff. You only need to change
...
...
@@ -787,17 +786,17 @@ static inline int pci_module_init(struct pci_driver *drv)
pci_resource_start((dev),(bar)) + 1))
/* Similar to the helpers above, these manipulate per-pci_dev
* driver-specific data.
Currently stored as pci_dev::driver_data,
*
a void pointer, but it is not present on older kerne
ls.
* driver-specific data.
They are really just a wrapper around
*
the generic device structure functions of these cal
ls.
*/
static
inline
void
*
pci_get_drvdata
(
struct
pci_dev
*
pdev
)
{
return
pdev
->
driver_data
;
return
dev_get_drvdata
(
&
pdev
->
dev
)
;
}
static
inline
void
pci_set_drvdata
(
struct
pci_dev
*
pdev
,
void
*
data
)
{
pdev
->
driver_data
=
data
;
dev_set_drvdata
(
&
pdev
->
dev
,
data
)
;
}
/*
...
...
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