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
e1cc5798
Commit
e1cc5798
authored
Jan 15, 2020
by
Ben Skeggs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
drm/nouveau/flcn/msgq: pass explicit message queue pointer to recv()
Signed-off-by:
Ben Skeggs
<
bskeggs@redhat.com
>
parent
d114a139
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
4 additions
and
49 deletions
+4
-49
drivers/gpu/drm/nouveau/include/nvkm/core/falcon.h
drivers/gpu/drm/nouveau/include/nvkm/core/falcon.h
+1
-0
drivers/gpu/drm/nouveau/include/nvkm/core/msgqueue.h
drivers/gpu/drm/nouveau/include/nvkm/core/msgqueue.h
+0
-1
drivers/gpu/drm/nouveau/nvkm/engine/sec2/base.c
drivers/gpu/drm/nouveau/nvkm/engine/sec2/base.c
+1
-7
drivers/gpu/drm/nouveau/nvkm/falcon/msgq.c
drivers/gpu/drm/nouveau/nvkm/falcon/msgq.c
+1
-2
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.c
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.c
+0
-13
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.h
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.h
+0
-3
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0137c63d.c
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0137c63d.c
+0
-8
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0148cdec.c
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0148cdec.c
+0
-8
drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.c
drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.c
+1
-7
No files found.
drivers/gpu/drm/nouveau/include/nvkm/core/falcon.h
View file @
e1cc5798
...
...
@@ -73,4 +73,5 @@ void nvkm_falcon_msgq_del(struct nvkm_falcon_msgq **);
void
nvkm_falcon_msgq_init
(
struct
nvkm_falcon_msgq
*
,
u32
index
,
u32
offset
,
u32
size
);
int
nvkm_falcon_msgq_recv_initmsg
(
struct
nvkm_falcon_msgq
*
,
void
*
,
u32
size
);
void
nvkm_falcon_msgq_recv
(
struct
nvkm_falcon_msgq
*
);
#endif
drivers/gpu/drm/nouveau/include/nvkm/core/msgqueue.h
View file @
e1cc5798
...
...
@@ -31,7 +31,6 @@ struct nvkm_msgqueue;
int
nvkm_msgqueue_new
(
u32
,
struct
nvkm_falcon
*
,
const
struct
nvkm_secboot
*
,
struct
nvkm_msgqueue
**
);
void
nvkm_msgqueue_del
(
struct
nvkm_msgqueue
**
);
void
nvkm_msgqueue_recv
(
struct
nvkm_msgqueue
*
);
/* useful if we run a NVIDIA-signed firmware */
void
nvkm_msgqueue_write_cmdline
(
struct
nvkm_msgqueue
*
,
void
*
);
...
...
drivers/gpu/drm/nouveau/nvkm/engine/sec2/base.c
View file @
e1cc5798
...
...
@@ -41,13 +41,7 @@ nvkm_sec2_recv(struct work_struct *work)
sec2
->
initmsg_received
=
true
;
}
if
(
!
sec2
->
queue
)
{
nvkm_warn
(
&
sec2
->
engine
.
subdev
,
"recv function called while no firmware set!
\n
"
);
return
;
}
nvkm_msgqueue_recv
(
sec2
->
queue
);
nvkm_falcon_msgq_recv
(
sec2
->
msgq
);
}
static
void
...
...
drivers/gpu/drm/nouveau/nvkm/falcon/msgq.c
View file @
e1cc5798
...
...
@@ -160,8 +160,7 @@ nvkm_falcon_msgq_recv_initmsg(struct nvkm_falcon_msgq *msgq,
}
void
nvkm_msgqueue_process_msgs
(
struct
nvkm_msgqueue
*
priv
,
struct
nvkm_msgqueue_queue
*
queue
)
nvkm_falcon_msgq_recv
(
struct
nvkm_falcon_msgq
*
queue
)
{
/*
* We are invoked from a worker thread, so normally we have plenty of
...
...
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.c
View file @
e1cc5798
...
...
@@ -77,19 +77,6 @@ nvkm_msgqueue_del(struct nvkm_msgqueue **queue)
}
}
void
nvkm_msgqueue_recv
(
struct
nvkm_msgqueue
*
queue
)
{
if
(
!
queue
->
func
||
!
queue
->
func
->
recv
)
{
const
struct
nvkm_subdev
*
subdev
=
queue
->
falcon
->
owner
;
nvkm_warn
(
subdev
,
"missing msgqueue recv function
\n
"
);
return
;
}
queue
->
func
->
recv
(
queue
);
}
void
nvkm_msgqueue_ctor
(
const
struct
nvkm_msgqueue_func
*
func
,
struct
nvkm_falcon
*
falcon
,
...
...
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.h
View file @
e1cc5798
...
...
@@ -67,7 +67,6 @@ struct nvkm_msgqueue_init_func {
struct
nvkm_msgqueue_func
{
const
struct
nvkm_msgqueue_init_func
*
init_func
;
void
(
*
dtor
)(
struct
nvkm_msgqueue
*
);
void
(
*
recv
)(
struct
nvkm_msgqueue
*
queue
);
};
/**
...
...
@@ -114,8 +113,6 @@ struct nvkm_msgqueue {
void
nvkm_msgqueue_ctor
(
const
struct
nvkm_msgqueue_func
*
,
struct
nvkm_falcon
*
,
struct
nvkm_msgqueue
*
);
void
nvkm_msgqueue_process_msgs
(
struct
nvkm_msgqueue
*
,
struct
nvkm_msgqueue_queue
*
);
int
msgqueue_0137c63d_new
(
struct
nvkm_falcon
*
,
const
struct
nvkm_secboot
*
,
struct
nvkm_msgqueue
**
);
...
...
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0137c63d.c
View file @
e1cc5798
...
...
@@ -40,12 +40,6 @@ struct msgqueue_0137bca5 {
container_of(container_of(q, struct msgqueue_0137c63d, base), \
struct msgqueue_0137bca5, base);
static
void
msgqueue_0137c63d_process_msgs
(
struct
nvkm_msgqueue
*
queue
)
{
nvkm_msgqueue_process_msgs
(
queue
,
queue
->
falcon
->
owner
->
device
->
pmu
->
msgq
);
}
/* Init unit */
static
void
init_gen_cmdline
(
struct
nvkm_msgqueue
*
queue
,
void
*
buf
)
...
...
@@ -87,7 +81,6 @@ msgqueue_0137c63d_dtor(struct nvkm_msgqueue *queue)
static
const
struct
nvkm_msgqueue_func
msgqueue_0137c63d_func
=
{
.
init_func
=
&
msgqueue_0137c63d_init_func
,
.
recv
=
msgqueue_0137c63d_process_msgs
,
.
dtor
=
msgqueue_0137c63d_dtor
,
};
...
...
@@ -111,7 +104,6 @@ msgqueue_0137c63d_new(struct nvkm_falcon *falcon, const struct nvkm_secboot *sb,
static
const
struct
nvkm_msgqueue_func
msgqueue_0137bca5_func
=
{
.
init_func
=
&
msgqueue_0137c63d_init_func
,
.
recv
=
msgqueue_0137c63d_process_msgs
,
.
dtor
=
msgqueue_0137c63d_dtor
,
};
...
...
drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0148cdec.c
View file @
e1cc5798
...
...
@@ -37,13 +37,6 @@ struct msgqueue_0148cdec {
#define msgqueue_0148cdec(q) \
container_of(q, struct msgqueue_0148cdec, base)
static
void
msgqueue_0148cdec_process_msgs
(
struct
nvkm_msgqueue
*
queue
)
{
nvkm_msgqueue_process_msgs
(
queue
,
queue
->
falcon
->
owner
->
device
->
sec2
->
msgq
);
}
static
void
init_gen_cmdline
(
struct
nvkm_msgqueue
*
queue
,
void
*
buf
)
{
...
...
@@ -73,7 +66,6 @@ msgqueue_0148cdec_dtor(struct nvkm_msgqueue *queue)
const
struct
nvkm_msgqueue_func
msgqueue_0148cdec_func
=
{
.
init_func
=
&
msgqueue_0148cdec_init_func
,
.
recv
=
msgqueue_0148cdec_process_msgs
,
.
dtor
=
msgqueue_0148cdec_dtor
,
};
...
...
drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.c
View file @
e1cc5798
...
...
@@ -135,13 +135,7 @@ gm20b_pmu_recv(struct nvkm_pmu *pmu)
pmu
->
initmsg_received
=
true
;
}
if
(
!
pmu
->
queue
)
{
nvkm_warn
(
&
pmu
->
subdev
,
"recv function called while no firmware set!
\n
"
);
return
;
}
nvkm_msgqueue_recv
(
pmu
->
queue
);
nvkm_falcon_msgq_recv
(
pmu
->
msgq
);
}
static
const
struct
nvkm_pmu_func
...
...
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