Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
FMC TDC 1ns 5cha - 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
FMC TDC 1ns 5cha - Software
Commits
2e92432d
Commit
2e92432d
authored
Sep 06, 2012
by
Samuel Iglesias Gonsálvez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tdc: added support for user-specified utc time
Signed-off-by:
Samuel Iglesias Gonsálvez
<
siglesias@igalia.com
>
parent
4ff5fd73
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
15 additions
and
11 deletions
+15
-11
tdc-core.c
drivers/tdc-core.c
+8
-8
tdc-fmc.c
drivers/tdc-fmc.c
+1
-1
tdc-zio.c
drivers/tdc-zio.c
+4
-1
tdc.h
drivers/tdc.h
+2
-1
No files found.
drivers/tdc-core.c
View file @
2e92432d
...
...
@@ -20,15 +20,18 @@
#include "hw/tdc_regs.h"
/* XXX: Check that the value is properly written? */
void
tdc_set_utc_time
(
struct
spec_tdc
*
tdc
)
void
tdc_set_utc_time
(
struct
spec_tdc
*
tdc
,
u32
value
)
{
writel
(
value
,
tdc
->
base
+
TDC_START_UTC_R
);
writel
(
TDC_CTRL_LOAD_UTC
,
tdc
->
base
+
TDC_CTRL_REG
);
}
void
tdc_set_local_utc_time
(
struct
spec_tdc
*
tdc
)
{
struct
timeval
utc_time
;
do_gettimeofday
(
&
utc_time
);
writel
(
utc_time
.
tv_sec
,
tdc
->
base
+
TDC_START_UTC_R
);
writel
(
TDC_CTRL_LOAD_UTC
,
tdc
->
base
+
TDC_CTRL_REG
);
tdc_set_utc_time
(
tdc
,
utc_time
.
tv_sec
);
}
u32
tdc_get_current_utc_time
(
struct
spec_tdc
*
tdc
)
...
...
@@ -36,7 +39,6 @@ u32 tdc_get_current_utc_time(struct spec_tdc *tdc)
return
readl
(
tdc
->
base
+
TDC_CURRENT_UTC_R
);
}
/* XXX: void-function or I should check that the value is properly written? */
void
tdc_set_irq_tstamp_thresh
(
struct
spec_tdc
*
tdc
,
u32
val
)
{
writel
(
val
,
tdc
->
base
+
TDC_IRQ_TSTAMP_THRESH_R
);
...
...
@@ -47,7 +49,6 @@ u32 tdc_get_irq_tstamp_thresh(struct spec_tdc *tdc)
return
readl
(
tdc
->
base
+
TDC_IRQ_TSTAMP_THRESH_R
);
}
/* XXX: void-function or I should check that the value is properly written? */
void
tdc_set_irq_time_thresh
(
struct
spec_tdc
*
tdc
,
u32
val
)
{
writel
(
val
,
tdc
->
base
+
TDC_IRQ_TIME_THRESH_R
);
...
...
@@ -58,7 +59,6 @@ u32 tdc_get_irq_time_thresh(struct spec_tdc *tdc)
return
readl
(
tdc
->
base
+
TDC_IRQ_TIME_THRESH_R
);
}
/* XXX: void-function or I should check that the value is properly written? */
void
tdc_set_dac_word
(
struct
spec_tdc
*
tdc
,
u32
val
)
{
writel
(
val
,
tdc
->
base
+
TDC_DAC_WORD_R
);
...
...
drivers/tdc-fmc.c
View file @
2e92432d
...
...
@@ -243,7 +243,7 @@ int tdc_fmc_probe(struct fmc_device *dev)
/* Reset ACAM chip */
tdc_acam_reset
(
tdc
);
/* Initialice UTC time */
tdc_set_utc_time
(
tdc
);
tdc_set_
local_
utc_time
(
tdc
);
/* Prepare the irq work */
INIT_WORK
(
&
tdc
->
irq_work
,
tdc_fmc_irq_work
);
/* Request the IRQ */
...
...
drivers/tdc-zio.c
View file @
2e92432d
...
...
@@ -124,7 +124,10 @@ static int tdc_zio_conf_set(struct device *dev,
case
TDC_ATTR_DEV_CURRENT_UTC
:
break
;
case
TDC_ATTR_DEV_SET_UTC
:
tdc_set_utc_time
(
tdc
);
if
(
usr_val
==
-
1
)
tdc_set_local_utc_time
(
tdc
);
else
tdc_set_utc_time
(
tdc
,
usr_val
);
break
;
case
TDC_ATTR_DEV_INPUT_ENABLED
:
usr_val
|=
TDC_INPUT_ENABLE_FLAG
;
...
...
drivers/tdc.h
View file @
2e92432d
...
...
@@ -92,7 +92,8 @@ extern int tdc_dma_start(struct spec_tdc *tdc);
extern
int
tdc_fmc_probe
(
struct
fmc_device
*
dev
);
extern
int
tdc_fmc_remove
(
struct
fmc_device
*
dev
);
extern
void
tdc_set_utc_time
(
struct
spec_tdc
*
tdc
);
extern
void
tdc_set_local_utc_time
(
struct
spec_tdc
*
tdc
);
extern
void
tdc_set_utc_time
(
struct
spec_tdc
*
tdc
,
u32
value
);
extern
void
tdc_set_input_enable
(
struct
spec_tdc
*
tdc
,
u32
value
);
extern
void
tdc_set_irq_tstamp_thresh
(
struct
spec_tdc
*
tdc
,
u32
val
);
extern
void
tdc_set_irq_time_thresh
(
struct
spec_tdc
*
tdc
,
u32
val
);
...
...
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