Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
FMC DEL 1ns 4cha - 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 DEL 1ns 4cha - Software
Commits
fb57db5f
Commit
fb57db5f
authored
Oct 29, 2012
by
Alessandro Rubini
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kernel: output succeeds immediately, no timer needed
Signed-off-by:
Alessandro Rubini
<
rubini@gnudd.com
>
parent
f815e96a
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1 addition
and
20 deletions
+1
-20
fd-irq.c
kernel/fd-irq.c
+0
-9
fd-zio.c
kernel/fd-zio.c
+1
-6
fine-delay.h
kernel/fine-delay.h
+0
-5
No files found.
kernel/fd-irq.c
View file @
fb57db5f
...
...
@@ -170,7 +170,6 @@ static void fd_tlet(unsigned long arg)
struct
zio_channel
*
chan
=
NULL
;
struct
zio_device
*
zdev
=
fd
->
zdev
;
struct
fmc_device
*
fmc
=
fd
->
fmc
;
int
i
;
/* Always read the hardware fifo until empty */
while
(
!
fd_read_hw_fifo
(
fd
))
...
...
@@ -194,14 +193,6 @@ static void fd_tlet(unsigned long arg)
}
out:
/* Check all output channels with a pending block (FIXME: bad) */
for
(
i
=
1
;
i
<
5
;
i
++
)
if
(
test_and_clear_bit
(
FD_FLAG_DO_OUTPUT
+
i
,
&
fd
->
flags
))
{
struct
zio_cset
*
cset
=
fd
->
zdev
->
cset
+
i
;
cset
->
ti
->
t_op
->
data_done
(
cset
);
pr_debug
(
"called data_done
\n
"
);
}
if
(
fd_timer_period_ms
)
mod_timer
(
&
fd
->
fifo_timer
,
jiffies
+
fd_timer_period_jiffies
);
else
{
...
...
kernel/fd-zio.c
View file @
fb57db5f
...
...
@@ -505,12 +505,7 @@ static int fd_zio_output(struct zio_cset *cset)
i
==
FD_ATTR_OUT__LAST
-
1
?
'\n'
:
' '
);
}
__fd_zio_output
(
fd
,
cset
->
index
,
ctrl
->
attr_channel
.
ext_val
);
/*
* There's a buglet in this version of zio: we can't
* just return 0 to say "done". We need to do it later.
*/
set_bit
(
FD_FLAG_DO_OUTPUT
+
cset
->
index
,
&
fd
->
flags
);
return
-
EAGAIN
;
return
0
;
/* already done */
}
/*
...
...
kernel/fine-delay.h
View file @
fb57db5f
...
...
@@ -210,11 +210,6 @@ enum fd_flags {
FD_FLAG_INITED
=
0
,
FD_FLAG_DO_INPUT
,
FD_FLAG_INPUT_READY
,
FD_FLAG_DO_OUTPUT
,
_FD_FLAG_DO_OUTPUT1
,
/* use: FD_FLAG_DO_OUTPUT + cset->index */
_FD_FLAG_DO_OUTPUT2
,
_FD_FLAG_DO_OUTPUT3
,
_FD_FLAG_DO_OUTPUT4
,
FD_FLAG_WR_MODE
,
};
...
...
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