ilo: create the pipeline from the builder
The pipeline needs just the builder to build commands. It does not need CP.
This commit is contained in:
@@ -334,7 +334,7 @@ ilo_3d_create(struct ilo_cp *cp, const struct ilo_dev_info *dev)
|
||||
|
||||
list_inithead(&hw3d->queries);
|
||||
|
||||
hw3d->pipeline = ilo_3d_pipeline_create(cp, dev);
|
||||
hw3d->pipeline = ilo_3d_pipeline_create(&cp->builder);
|
||||
if (!hw3d->pipeline) {
|
||||
FREE(hw3d);
|
||||
return NULL;
|
||||
|
||||
@@ -25,12 +25,9 @@
|
||||
* Chia-I Wu <olv@lunarg.com>
|
||||
*/
|
||||
|
||||
#include "util/u_prim.h"
|
||||
#include "intel_winsys.h"
|
||||
|
||||
#include "ilo_blitter.h"
|
||||
#include "ilo_cp.h"
|
||||
#include "ilo_state.h"
|
||||
#include "ilo_builder.h"
|
||||
#include "ilo_3d_pipeline_gen6.h"
|
||||
#include "ilo_3d_pipeline_gen7.h"
|
||||
#include "ilo_3d_pipeline.h"
|
||||
@@ -64,7 +61,7 @@ static const struct sample_position sample_position_8x[8] = {
|
||||
};
|
||||
|
||||
struct ilo_3d_pipeline *
|
||||
ilo_3d_pipeline_create(struct ilo_cp *cp, const struct ilo_dev_info *dev)
|
||||
ilo_3d_pipeline_create(struct ilo_builder *builder)
|
||||
{
|
||||
struct ilo_3d_pipeline *p;
|
||||
int i;
|
||||
@@ -73,9 +70,8 @@ ilo_3d_pipeline_create(struct ilo_cp *cp, const struct ilo_dev_info *dev)
|
||||
if (!p)
|
||||
return NULL;
|
||||
|
||||
p->dev = dev;
|
||||
p->cp = cp;
|
||||
p->builder = &cp->builder;
|
||||
p->dev = builder->dev;
|
||||
p->builder = builder;
|
||||
|
||||
switch (ilo_dev_gen(p->dev)) {
|
||||
case ILO_GEN(6):
|
||||
@@ -94,7 +90,7 @@ ilo_3d_pipeline_create(struct ilo_cp *cp, const struct ilo_dev_info *dev)
|
||||
|
||||
p->invalidate_flags = ILO_3D_PIPELINE_INVALIDATE_ALL;
|
||||
|
||||
p->workaround_bo = intel_winsys_alloc_buffer(p->cp->winsys,
|
||||
p->workaround_bo = intel_winsys_alloc_buffer(builder->winsys,
|
||||
"PIPE_CONTROL workaround", 4096, false);
|
||||
if (!p->workaround_bo) {
|
||||
ilo_warn("failed to allocate PIPE_CONTROL workaround bo\n");
|
||||
|
||||
@@ -58,8 +58,6 @@ enum ilo_3d_pipeline_action {
|
||||
*/
|
||||
struct ilo_3d_pipeline {
|
||||
const struct ilo_dev_info *dev;
|
||||
|
||||
struct ilo_cp *cp;
|
||||
struct ilo_builder *builder;
|
||||
|
||||
uint32_t invalidate_flags;
|
||||
@@ -136,7 +134,7 @@ struct ilo_3d_pipeline {
|
||||
};
|
||||
|
||||
struct ilo_3d_pipeline *
|
||||
ilo_3d_pipeline_create(struct ilo_cp *cp, const struct ilo_dev_info *dev);
|
||||
ilo_3d_pipeline_create(struct ilo_builder *builder);
|
||||
|
||||
void
|
||||
ilo_3d_pipeline_destroy(struct ilo_3d_pipeline *pipeline);
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
#include "ilo_builder_3d.h"
|
||||
#include "ilo_builder_mi.h"
|
||||
#include "ilo_builder_render.h"
|
||||
#include "ilo_cp.h"
|
||||
#include "ilo_query.h"
|
||||
#include "ilo_shader.h"
|
||||
#include "ilo_state.h"
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
#include "ilo_blitter.h"
|
||||
#include "ilo_builder_3d.h"
|
||||
#include "ilo_builder_render.h"
|
||||
#include "ilo_cp.h"
|
||||
#include "ilo_shader.h"
|
||||
#include "ilo_state.h"
|
||||
#include "ilo_3d_pipeline.h"
|
||||
|
||||
Reference in New Issue
Block a user