Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
Simple VME FMC Carrier SVEC
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
14
Issues
14
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
Commits
2c744a27
Commit
2c744a27
authored
Mar 16, 2021
by
Federico Vaga
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'release/v2.0.2' into master
parents
577b31c8
10c42950
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
27 additions
and
7 deletions
+27
-7
CHANGELOG.rst
CHANGELOG.rst
+6
-0
Kbuild
software/kernel/Kbuild
+2
-2
svec-core-fpga.c
software/kernel/svec-core-fpga.c
+14
-5
svec.h
software/kernel/svec.h
+5
-0
No files found.
CHANGELOG.rst
View file @
2c744a27
...
...
@@ -2,6 +2,12 @@
Change Log
==========
2.0.2 - 2021-03-16
==================
Changed
-------
- sw: better version validation implementation
2.0.1 - 2021-02-08
==================
Added
...
...
software/kernel/Kbuild
View file @
2c744a27
...
...
@@ -10,10 +10,10 @@ endif
VER_MAJ := $(shell echo $(subst v,,$(VERSION)) | cut -d '.' -f 1)
VER_MIN := $(shell echo $(subst v,,$(VERSION)) | cut -d '.' -f 2)
SVEC_
META_VERSION_COMPAT
:= $(shell printf "0x%02x%02x0000" $(VER_MAJ) $(VER_MIN))
SVEC_
VERSION_BLD
:= $(shell printf "0x%02x%02x0000" $(VER_MAJ) $(VER_MIN))
ccflags-y += -DADDITIONAL_VERSIONS="$(SUBMODULE_VERSIONS)"
ccflags-y += -DVERSION=\"$(VERSION)\"
ccflags-y += -DSVEC_
META_VERSION_COMPAT=$(SVEC_META_VERSION_COMPAT
)
ccflags-y += -DSVEC_
VERSION_BLD=$(SVEC_VERSION_BLD
)
ccflags-y += -Wall -Werror
ccflags-y += -I$(VMEBRIDGE_ABS)/include
...
...
software/kernel/svec-core-fpga.c
View file @
2c744a27
...
...
@@ -810,6 +810,17 @@ static void svec_fpga_app_exit(struct svec_fpga *svec_fpga)
}
}
static
bool
svec_fpga_is_valid_version
(
uint32_t
expected
,
uint32_t
found
)
{
if
(
version_ignore
)
return
true
;
if
(
SVEC_VERSION_MAJ
(
found
)
!=
SVEC_VERSION_MAJ
(
expected
))
return
false
;
if
(
SVEC_VERSION_MIN
(
found
)
<
SVEC_VERSION_MIN
(
expected
))
return
false
;
return
true
;
}
static
bool
svec_fpga_is_valid
(
struct
svec_dev
*
svec_dev
,
struct
svec_meta_id
*
meta
)
{
...
...
@@ -835,15 +846,13 @@ static bool svec_fpga_is_valid(struct svec_dev *svec_dev,
return
false
;
}
if
(
!
version_ignore
&&
(
meta
->
version
&
SVEC_META_VERSION_MASK
)
!=
SVEC_META_VERSION_COMPAT
)
{
if
(
!
svec_fpga_is_valid_version
(
SVEC_VERSION_DRV
,
meta
->
version
))
{
dev_err
(
&
svec_dev
->
dev
,
"
Unknow
version: %08x, expected: %08x
\n
"
,
meta
->
version
,
SVEC_
META_VERSION_COMPAT
);
"
Invalid
version: %08x, expected: %08x
\n
"
,
meta
->
version
,
SVEC_
VERSION_DRV
);
return
false
;
}
return
true
;
}
...
...
software/kernel/svec.h
View file @
2c744a27
...
...
@@ -123,6 +123,11 @@ struct svec_dev {
struct
svec_fpga
*
svec_fpga
;
};
#define SVEC_VERSION_DRV SVEC_VERSION_BLD
#define SVEC_VERSION_MAJ(_VER) ((_VER >> 24) & 0xFF)
#define SVEC_VERSION_MIN(_VER) ((_VER >> 16) & 0xFF)
#define SVEC_VERSION_PATCH(_VER) (_VER & 0xFFFF)
static
inline
struct
svec_dev
*
to_svec_dev
(
struct
device
*
_dev
)
{
return
container_of
(
_dev
,
struct
svec_dev
,
dev
);
...
...
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