Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
Simple VME FMC Carrier SVEC - Software
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Simple VME FMC Carrier SVEC - Software
Commits
d9c5b4e3
Commit
d9c5b4e3
authored
Aug 08, 2016
by
Federico Vaga
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kernel:[vmebus] vmebus.h update
Signed-off-by:
Federico Vaga
<
federico.vaga@cern.ch
>
parent
f9fa2faa
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
33 additions
and
1 deletion
+33
-1
vmebus.h
kernel/vmebus.h
+33
-1
No files found.
kernel/vmebus.h
View file @
d9c5b4e3
...
...
@@ -363,10 +363,38 @@ struct pdparam_master
#ifdef __KERNEL__
#define VME_NAME_ID_LEN 32
struct
vme_device_id
{
char
name
[
VME_NAME_ID_LEN
];
uint32_t
vendor
;
uint32_t
device
;
uint32_t
revision
;
};
struct
vme_dev
{
struct
device
dev
;
struct
vme_device_id
devid
;
unsigned
long
flags
;
unsigned
int
id
;
unsigned
int
slot
;
unsigned
int
irq
;
unsigned
int
irq_vector
;
unsigned
int
irq_level
;
unsigned
int
am
;
unsigned
int
base_address
;
unsigned
int
size
;
};
#define to_vme_dev(x) container_of((x), struct vme_dev, dev)
#define VME_DEV_FLAG_DRIVER_REG (1 << 0)
/*
* Those definitions are for drivers only and are not visible to userspace.
*/
struct
vme_driver
{
int
(
*
match
)(
struct
device
*
,
unsigned
int
);
int
(
*
probe
)(
struct
device
*
,
unsigned
int
);
...
...
@@ -375,7 +403,8 @@ struct vme_driver {
int
(
*
suspend
)(
struct
device
*
,
unsigned
int
,
pm_message_t
);
int
(
*
resume
)(
struct
device
*
,
unsigned
int
);
struct
device_driver
driver
;
struct
device
*
devices
;
const
struct
vme_device_id
*
id_table
;
/**< list terminater by
all 0s entry */
};
#define to_vme_driver(x) container_of((x), struct vme_driver, driver)
...
...
@@ -383,6 +412,8 @@ struct vme_driver {
typedef
void
(
*
vme_berr_handler_t
)(
struct
vme_bus_error
*
);
/* API for new drivers */
extern
int
vme_register_device
(
struct
vme_dev
*
vme_dev
);
extern
void
vme_unregister_device
(
struct
vme_dev
*
vme_dev
);
extern
int
vme_register_driver
(
struct
vme_driver
*
vme_driver
,
unsigned
int
ndev
);
extern
void
vme_unregister_driver
(
struct
vme_driver
*
vme_driver
);
extern
int
vme_request_irq
(
unsigned
int
,
int
(
*
)(
void
*
),
...
...
@@ -395,6 +426,7 @@ extern int vme_get_window_attr(struct vme_mapping *);
extern
int
vme_create_window
(
struct
vme_mapping
*
);
extern
int
vme_destroy_window
(
int
);
extern
int
vme_find_mapping
(
struct
vme_mapping
*
,
int
);
extern
struct
resource
*
vme_window_resource_get
(
unsigned
int
window_num
);
extern
int
vme_release_mapping
(
struct
vme_mapping
*
,
int
);
extern
int
vme_do_dma
(
struct
vme_dma
*
);
...
...
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