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
d21918b6
Commit
d21918b6
authored
Dec 21, 2002
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
http://linux-voyager.bkbits.net/dma-generic-mapping-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
parents
b163be65
e6241a27
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
92 additions
and
89 deletions
+92
-89
include/asm-generic/dma-mapping.h
include/asm-generic/dma-mapping.h
+2
-0
include/asm-generic/pci-dma-compat.h
include/asm-generic/pci-dma-compat.h
+87
-0
include/asm-i386/pci.h
include/asm-i386/pci.h
+3
-3
include/linux/pci.h
include/linux/pci.h
+0
-86
No files found.
include/asm-generic/dma-mapping.h
View file @
d21918b6
...
@@ -10,6 +10,8 @@
...
@@ -10,6 +10,8 @@
/* we implement the API below in terms of the existing PCI one,
/* we implement the API below in terms of the existing PCI one,
* so include it */
* so include it */
#include <linux/pci.h>
#include <linux/pci.h>
/* need struct page definitions */
#include <linux/mm.h>
static
inline
int
static
inline
int
dma_supported
(
struct
device
*
dev
,
u64
mask
)
dma_supported
(
struct
device
*
dev
,
u64
mask
)
...
...
include/asm-generic/pci-dma-compat.h
0 → 100644
View file @
d21918b6
/* include this file if the platform implements the dma_ DMA Mapping API
* and wants to provide the pci_ DMA Mapping API in terms of it */
#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
#define _ASM_GENERIC_PCI_DMA_COMPAT_H
#include <linux/dma-mapping.h>
/* note pci_set_dma_mask isn't here, since it's a public function
* exported from drivers/pci, use dma_supported instead */
static
inline
int
pci_dma_supported
(
struct
pci_dev
*
hwdev
,
u64
mask
)
{
return
dma_supported
(
&
hwdev
->
dev
,
mask
);
}
static
inline
void
*
pci_alloc_consistent
(
struct
pci_dev
*
hwdev
,
size_t
size
,
dma_addr_t
*
dma_handle
)
{
return
dma_alloc_coherent
(
&
hwdev
->
dev
,
size
,
dma_handle
);
}
static
inline
void
pci_free_consistent
(
struct
pci_dev
*
hwdev
,
size_t
size
,
void
*
vaddr
,
dma_addr_t
dma_handle
)
{
dma_free_coherent
(
&
hwdev
->
dev
,
size
,
vaddr
,
dma_handle
);
}
static
inline
dma_addr_t
pci_map_single
(
struct
pci_dev
*
hwdev
,
void
*
ptr
,
size_t
size
,
int
direction
)
{
return
dma_map_single
(
&
hwdev
->
dev
,
ptr
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_single
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_addr
,
size_t
size
,
int
direction
)
{
dma_unmap_single
(
&
hwdev
->
dev
,
dma_addr
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
dma_addr_t
pci_map_page
(
struct
pci_dev
*
hwdev
,
struct
page
*
page
,
unsigned
long
offset
,
size_t
size
,
int
direction
)
{
return
dma_map_page
(
&
hwdev
->
dev
,
page
,
offset
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_page
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_address
,
size_t
size
,
int
direction
)
{
dma_unmap_page
(
&
hwdev
->
dev
,
dma_address
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
int
pci_map_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nents
,
int
direction
)
{
return
dma_map_sg
(
&
hwdev
->
dev
,
sg
,
nents
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nents
,
int
direction
)
{
dma_unmap_sg
(
&
hwdev
->
dev
,
sg
,
nents
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_dma_sync_single
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_handle
,
size_t
size
,
int
direction
)
{
dma_sync_single
(
&
hwdev
->
dev
,
dma_handle
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_dma_sync_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nelems
,
int
direction
)
{
dma_sync_sg
(
&
hwdev
->
dev
,
sg
,
nelems
,
(
enum
dma_data_direction
)
direction
);
}
#endif
include/asm-i386/pci.h
View file @
d21918b6
...
@@ -6,9 +6,6 @@
...
@@ -6,9 +6,6 @@
#ifdef __KERNEL__
#ifdef __KERNEL__
#include <linux/mm.h>
/* for struct page */
#include <linux/mm.h>
/* for struct page */
/* we support the new DMA API, but still provide the old one */
#define PCI_NEW_DMA_COMPAT_API 1
/* Can be used to override the logic in pci_scan_bus for skipping
/* Can be used to override the logic in pci_scan_bus for skipping
already-configured bus numbers - to be used for buggy BIOSes
already-configured bus numbers - to be used for buggy BIOSes
or architectures with incomplete PCI setup by the loader */
or architectures with incomplete PCI setup by the loader */
...
@@ -105,4 +102,7 @@ extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
...
@@ -105,4 +102,7 @@ extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
#endif
/* __KERNEL__ */
#endif
/* __KERNEL__ */
/* implement the pci_ DMA API in terms of the generic device dma_ one */
#include <asm-generic/pci-dma-compat.h>
#endif
/* __i386_PCI_H */
#endif
/* __i386_PCI_H */
include/linux/pci.h
View file @
d21918b6
...
@@ -834,92 +834,6 @@ extern int pci_pci_problems;
...
@@ -834,92 +834,6 @@ extern int pci_pci_problems;
#define PCIPCI_VIAETBF 8
#define PCIPCI_VIAETBF 8
#define PCIPCI_VSFX 16
#define PCIPCI_VSFX 16
#include <linux/dma-mapping.h>
/* If you define PCI_NEW_DMA_COMPAT_API it means you support the new DMA API
* and you want the pci_ DMA API to be implemented using it.
*/
#if defined(PCI_NEW_DMA_COMPAT_API) && defined(CONFIG_PCI)
/* note pci_set_dma_mask isn't here, since it's a public function
* exported from drivers/pci, use dma_supported instead */
static
inline
int
pci_dma_supported
(
struct
pci_dev
*
hwdev
,
u64
mask
)
{
return
dma_supported
(
&
hwdev
->
dev
,
mask
);
}
static
inline
void
*
pci_alloc_consistent
(
struct
pci_dev
*
hwdev
,
size_t
size
,
dma_addr_t
*
dma_handle
)
{
return
dma_alloc_coherent
(
&
hwdev
->
dev
,
size
,
dma_handle
);
}
static
inline
void
pci_free_consistent
(
struct
pci_dev
*
hwdev
,
size_t
size
,
void
*
vaddr
,
dma_addr_t
dma_handle
)
{
dma_free_coherent
(
&
hwdev
->
dev
,
size
,
vaddr
,
dma_handle
);
}
static
inline
dma_addr_t
pci_map_single
(
struct
pci_dev
*
hwdev
,
void
*
ptr
,
size_t
size
,
int
direction
)
{
return
dma_map_single
(
&
hwdev
->
dev
,
ptr
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_single
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_addr
,
size_t
size
,
int
direction
)
{
dma_unmap_single
(
&
hwdev
->
dev
,
dma_addr
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
dma_addr_t
pci_map_page
(
struct
pci_dev
*
hwdev
,
struct
page
*
page
,
unsigned
long
offset
,
size_t
size
,
int
direction
)
{
return
dma_map_page
(
&
hwdev
->
dev
,
page
,
offset
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_page
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_address
,
size_t
size
,
int
direction
)
{
dma_unmap_page
(
&
hwdev
->
dev
,
dma_address
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
int
pci_map_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nents
,
int
direction
)
{
return
dma_map_sg
(
&
hwdev
->
dev
,
sg
,
nents
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_unmap_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nents
,
int
direction
)
{
dma_unmap_sg
(
&
hwdev
->
dev
,
sg
,
nents
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_dma_sync_single
(
struct
pci_dev
*
hwdev
,
dma_addr_t
dma_handle
,
size_t
size
,
int
direction
)
{
dma_sync_single
(
&
hwdev
->
dev
,
dma_handle
,
size
,
(
enum
dma_data_direction
)
direction
);
}
static
inline
void
pci_dma_sync_sg
(
struct
pci_dev
*
hwdev
,
struct
scatterlist
*
sg
,
int
nelems
,
int
direction
)
{
dma_sync_sg
(
&
hwdev
->
dev
,
sg
,
nelems
,
(
enum
dma_data_direction
)
direction
);
}
#endif
#endif
/* __KERNEL__ */
#endif
/* __KERNEL__ */
#endif
/* LINUX_PCI_H */
#endif
/* LINUX_PCI_H */
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