Exemplo n.º 1
0
static int
nv50_disp_base_ctor(struct nouveau_object *parent,
		    struct nouveau_object *engine,
		    struct nouveau_oclass *oclass, void *data, u32 size,
		    struct nouveau_object **pobject)
{
	struct nv50_disp_priv *priv = (void *)engine;
	struct nv50_disp_base *base;
	int ret;

	ret = nouveau_parent_create(parent, engine, oclass, 0,
				    priv->sclass, 0, &base);
	*pobject = nv_object(base);
	if (ret)
		return ret;

	return nouveau_ramht_new(parent, parent, 0x1000, 0, &base->ramht);
}
Exemplo n.º 2
0
static int
nvd0_disp_base_ctor(struct nouveau_object *parent,
                    struct nouveau_object *engine,
                    struct nouveau_oclass *oclass, void *data, u32 size,
                    struct nouveau_object **pobject)
{
    struct nv50_disp_priv *priv = (void *)engine;
    struct nv50_disp_base *base;
    int ret;

    ret = nouveau_parent_create(parent, engine, oclass, 0,
                                priv->sclass, 0, &base);
    *pobject = nv_object(base);
    if (ret)
        return ret;

    priv->base.vblank->priv = priv;
    priv->base.vblank->enable = nvd0_disp_base_vblank_enable;
    priv->base.vblank->disable = nvd0_disp_base_vblank_disable;

    return nouveau_ramht_new(nv_object(base), nv_object(base), 0x1000, 0,
                             &base->ramht);
}