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
0f5325fb
Commit
0f5325fb
authored
Apr 28, 2002
by
Dave Jones
Committed by
Jaroslav Kysela
Apr 28, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] x86 pci-pc janitor work
- printk loglevels - request region checks.
parent
d4b145f4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
13 deletions
+15
-13
arch/i386/kernel/pci-pc.c
arch/i386/kernel/pci-pc.c
+15
-13
No files found.
arch/i386/kernel/pci-pc.c
View file @
0f5325fb
...
@@ -421,8 +421,9 @@ static struct pci_ops * __devinit pci_check_direct(void)
...
@@ -421,8 +421,9 @@ static struct pci_ops * __devinit pci_check_direct(void)
pci_sanity_check
(
&
pci_direct_conf1
))
{
pci_sanity_check
(
&
pci_direct_conf1
))
{
outl
(
tmp
,
0xCF8
);
outl
(
tmp
,
0xCF8
);
__restore_flags
(
flags
);
__restore_flags
(
flags
);
printk
(
"PCI: Using configuration type 1
\n
"
);
printk
(
KERN_INFO
"PCI: Using configuration type 1
\n
"
);
request_region
(
0xCF8
,
8
,
"PCI conf1"
);
if
(
!
request_region
(
0xCF8
,
8
,
"PCI conf1"
))
return
NULL
;
return
&
pci_direct_conf1
;
return
&
pci_direct_conf1
;
}
}
outl
(
tmp
,
0xCF8
);
outl
(
tmp
,
0xCF8
);
...
@@ -438,8 +439,9 @@ static struct pci_ops * __devinit pci_check_direct(void)
...
@@ -438,8 +439,9 @@ static struct pci_ops * __devinit pci_check_direct(void)
if
(
inb
(
0xCF8
)
==
0x00
&&
inb
(
0xCFA
)
==
0x00
&&
if
(
inb
(
0xCF8
)
==
0x00
&&
inb
(
0xCFA
)
==
0x00
&&
pci_sanity_check
(
&
pci_direct_conf2
))
{
pci_sanity_check
(
&
pci_direct_conf2
))
{
__restore_flags
(
flags
);
__restore_flags
(
flags
);
printk
(
"PCI: Using configuration type 2
\n
"
);
printk
(
KERN_INFO
"PCI: Using configuration type 2
\n
"
);
request_region
(
0xCF8
,
4
,
"PCI conf2"
);
if
(
!
request_region
(
0xCF8
,
4
,
"PCI conf2"
))
return
NULL
;
return
&
pci_direct_conf2
;
return
&
pci_direct_conf2
;
}
}
}
}
...
@@ -546,10 +548,10 @@ static unsigned long bios32_service(unsigned long service)
...
@@ -546,10 +548,10 @@ static unsigned long bios32_service(unsigned long service)
case
0
:
case
0
:
return
address
+
entry
;
return
address
+
entry
;
case
0x80
:
/* Not present */
case
0x80
:
/* Not present */
printk
(
"bios32_service(0x%lx): not present
\n
"
,
service
);
printk
(
KERN_WARNING
"bios32_service(0x%lx): not present
\n
"
,
service
);
return
0
;
return
0
;
default:
/* Shouldn't happen */
default:
/* Shouldn't happen */
printk
(
"bios32_service(0x%lx): returned 0x%x -- BIOS bug!
\n
"
,
printk
(
KERN_WARNING
"bios32_service(0x%lx): returned 0x%x -- BIOS bug!
\n
"
,
service
,
return_code
);
service
,
return_code
);
return
0
;
return
0
;
}
}
...
@@ -599,7 +601,7 @@ static int __devinit check_pcibios(void)
...
@@ -599,7 +601,7 @@ static int __devinit check_pcibios(void)
status
,
signature
);
status
,
signature
);
return
0
;
return
0
;
}
}
printk
(
"PCI: PCI BIOS revision %x.%02x entry at 0x%lx, last bus=%d
\n
"
,
printk
(
KERN_INFO
"PCI: PCI BIOS revision %x.%02x entry at 0x%lx, last bus=%d
\n
"
,
major_ver
,
minor_ver
,
pcibios_entry
,
pcibios_last_bus
);
major_ver
,
minor_ver
,
pcibios_entry
,
pcibios_last_bus
);
#ifdef CONFIG_PCI_DIRECT
#ifdef CONFIG_PCI_DIRECT
if
(
!
(
hw_mech
&
PCIBIOS_HW_TYPE1
))
if
(
!
(
hw_mech
&
PCIBIOS_HW_TYPE1
))
...
@@ -901,7 +903,7 @@ static void __devinit pcibios_sort(void)
...
@@ -901,7 +903,7 @@ static void __devinit pcibios_sort(void)
}
}
}
}
if
(
ln
==
&
pci_devices
)
{
if
(
ln
==
&
pci_devices
)
{
printk
(
"PCI: BIOS reporting unknown device %02x:%02x
\n
"
,
bus
,
devfn
);
printk
(
KERN_WARNING
"PCI: BIOS reporting unknown device %02x:%02x
\n
"
,
bus
,
devfn
);
/*
/*
* We must not continue scanning as several buggy BIOSes
* We must not continue scanning as several buggy BIOSes
* return garbage after the last device. Grr.
* return garbage after the last device. Grr.
...
@@ -910,7 +912,7 @@ static void __devinit pcibios_sort(void)
...
@@ -910,7 +912,7 @@ static void __devinit pcibios_sort(void)
}
}
}
}
if
(
!
found
)
{
if
(
!
found
)
{
printk
(
"PCI: Device %02x:%02x not found by BIOS
\n
"
,
printk
(
KERN_WARNING
"PCI: Device %02x:%02x not found by BIOS
\n
"
,
dev
->
bus
->
number
,
dev
->
devfn
);
dev
->
bus
->
number
,
dev
->
devfn
);
list_del
(
&
dev
->
global_list
);
list_del
(
&
dev
->
global_list
);
list_add_tail
(
&
dev
->
global_list
,
&
sorted_devices
);
list_add_tail
(
&
dev
->
global_list
,
&
sorted_devices
);
...
@@ -970,7 +972,7 @@ struct irq_routing_table * __devinit pcibios_get_irq_routing_table(void)
...
@@ -970,7 +972,7 @@ struct irq_routing_table * __devinit pcibios_get_irq_routing_table(void)
rt
->
size
=
opt
.
size
+
sizeof
(
struct
irq_routing_table
);
rt
->
size
=
opt
.
size
+
sizeof
(
struct
irq_routing_table
);
rt
->
exclusive_irqs
=
map
;
rt
->
exclusive_irqs
=
map
;
memcpy
(
rt
->
slots
,
(
void
*
)
page
,
opt
.
size
);
memcpy
(
rt
->
slots
,
(
void
*
)
page
,
opt
.
size
);
printk
(
"PCI: Using BIOS Interrupt Routing Table
\n
"
);
printk
(
KERN_INFO
"PCI: Using BIOS Interrupt Routing Table
\n
"
);
}
}
}
}
free_page
(
page
);
free_page
(
page
);
...
@@ -1035,7 +1037,7 @@ static void __devinit pcibios_fixup_ghosts(struct pci_bus *b)
...
@@ -1035,7 +1037,7 @@ static void __devinit pcibios_fixup_ghosts(struct pci_bus *b)
}
}
if
(
!
seen_host_bridge
)
if
(
!
seen_host_bridge
)
return
;
return
;
printk
(
"PCI: Ignoring ghost devices on bus %02x
\n
"
,
b
->
number
);
printk
(
KERN_WARNING
"PCI: Ignoring ghost devices on bus %02x
\n
"
,
b
->
number
);
ln
=
&
b
->
devices
;
ln
=
&
b
->
devices
;
while
(
ln
->
next
!=
&
b
->
devices
)
{
while
(
ln
->
next
!=
&
b
->
devices
)
{
...
@@ -1073,7 +1075,7 @@ static void __devinit pcibios_fixup_peer_bridges(void)
...
@@ -1073,7 +1075,7 @@ static void __devinit pcibios_fixup_peer_bridges(void)
if
(
!
pci_read_config_word
(
&
dev
,
PCI_VENDOR_ID
,
&
l
)
&&
if
(
!
pci_read_config_word
(
&
dev
,
PCI_VENDOR_ID
,
&
l
)
&&
l
!=
0x0000
&&
l
!=
0xffff
)
{
l
!=
0x0000
&&
l
!=
0xffff
)
{
DBG
(
"Found device at %02x:%02x [%04x]
\n
"
,
n
,
dev
.
devfn
,
l
);
DBG
(
"Found device at %02x:%02x [%04x]
\n
"
,
n
,
dev
.
devfn
,
l
);
printk
(
"PCI: Discovered peer bus %02x
\n
"
,
n
);
printk
(
KERN_INFO
"PCI: Discovered peer bus %02x
\n
"
,
n
);
pci_scan_bus
(
n
,
pci_root_ops
,
NULL
);
pci_scan_bus
(
n
,
pci_root_ops
,
NULL
);
break
;
break
;
}
}
...
@@ -1117,7 +1119,7 @@ static void __devinit pci_fixup_i450gx(struct pci_dev *d)
...
@@ -1117,7 +1119,7 @@ static void __devinit pci_fixup_i450gx(struct pci_dev *d)
*/
*/
u8
busno
;
u8
busno
;
pci_read_config_byte
(
d
,
0x4a
,
&
busno
);
pci_read_config_byte
(
d
,
0x4a
,
&
busno
);
printk
(
"PCI: i440KX/GX host bridge %s: secondary bus %02x
\n
"
,
d
->
slot_name
,
busno
);
printk
(
KERN_INFO
"PCI: i440KX/GX host bridge %s: secondary bus %02x
\n
"
,
d
->
slot_name
,
busno
);
pci_scan_bus
(
busno
,
pci_root_ops
,
NULL
);
pci_scan_bus
(
busno
,
pci_root_ops
,
NULL
);
pcibios_last_bus
=
-
1
;
pcibios_last_bus
=
-
1
;
}
}
...
...
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