On Sat, Sep 24, 2011 at 11:13 PM, <mesa-dev-requ...@lists.freedesktop.org>wrote:
> Send mesa-dev mailing list submissions to > mesa-dev@lists.freedesktop.org > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > or, via email, send a message with subject or body 'help' to > mesa-dev-requ...@lists.freedesktop.org > > You can reach the person managing the list at > mesa-dev-ow...@lists.freedesktop.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of mesa-dev digest..." > > > Today's Topics: > > 1. [PATCH 2/4] d3d1x: propagate DepthBiasClamp to rasterizer cso > (Christoph Bumiller) > 2. [PATCH 3/4] nv50, nvc0: support polygon offset clamp state > (Christoph Bumiller) > 3. [PATCH 4/4] r600: support polygon offset clamp state > (Christoph Bumiller) > 4. Re: Welcome to the "mesa-dev" mailing list (Digest mode) > (Vivek Singh) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Sat, 24 Sep 2011 15:47:22 +0200 > From: Christoph Bumiller <e0425...@student.tuwien.ac.at> > Subject: [Mesa-dev] [PATCH 2/4] d3d1x: propagate DepthBiasClamp to > rasterizer cso > To: mesa-dev@lists.freedesktop.org > Message-ID: > <1316872044-23685-2-git-send-email-e0425...@student.tuwien.ac.at> > > --- > .../state_trackers/d3d1x/gd3d11/d3d11_screen.h | 3 +-- > 1 files changed, 1 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/state_trackers/d3d1x/gd3d11/d3d11_screen.h > b/src/gallium/state_trackers/d3d1x/gd3d11/d3d11_screen.h > index 3674731..ef23b7d 100644 > --- a/src/gallium/state_trackers/d3d1x/gd3d11/d3d11_screen.h > +++ b/src/gallium/state_trackers/d3d1x/gd3d11/d3d11_screen.h > @@ -504,11 +504,10 @@ struct GalliumD3D11ScreenImpl : public > GalliumD3D11Screen > else > state.cull_face = PIPE_FACE_NONE; > state.front_ccw = !!rasterizer_desc->FrontCounterClockwise; > - /* TODO: is this correct? */ > - /* TODO: we are ignoring depthBiasClamp! */ > state.offset_tri = state.offset_line = state.offset_point = > rasterizer_desc->SlopeScaledDepthBias || rasterizer_desc->DepthBias; > state.offset_scale = rasterizer_desc->SlopeScaledDepthBias; > state.offset_units = rasterizer_desc->DepthBias; > + state.offset_clamp = rasterizer_desc->DepthBiasClamp; > state.scissor = !!rasterizer_desc->ScissorEnable; > state.multisample = !!rasterizer_desc->MultisampleEnable; > state.line_smooth = > !!rasterizer_desc->AntialiasedLineEnable; > -- > 1.7.3.4 > > > > ------------------------------ > > Message: 2 > Date: Sat, 24 Sep 2011 15:47:23 +0200 > From: Christoph Bumiller <e0425...@student.tuwien.ac.at> > Subject: [Mesa-dev] [PATCH 3/4] nv50, nvc0: support polygon offset > clamp state > To: mesa-dev@lists.freedesktop.org > Message-ID: > <1316872044-23685-3-git-send-email-e0425...@student.tuwien.ac.at> > > --- > src/gallium/drivers/nv50/nv50_3d.xml.h | 2 +- > src/gallium/drivers/nv50/nv50_state.c | 2 ++ > src/gallium/drivers/nv50/nv50_stateobj.h | 2 +- > src/gallium/drivers/nvc0/nvc0_3d.xml.h | 2 ++ > src/gallium/drivers/nvc0/nvc0_state.c | 2 ++ > src/gallium/drivers/nvc0/nvc0_stateobj.h | 2 +- > 6 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/src/gallium/drivers/nv50/nv50_3d.xml.h > b/src/gallium/drivers/nv50/nv50_3d.xml.h > index 1bde07f..0f5a77d 100644 > --- a/src/gallium/drivers/nv50/nv50_3d.xml.h > +++ b/src/gallium/drivers/nv50/nv50_3d.xml.h > @@ -1658,7 +1658,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE > SOFTWARE. > #define NV50_3D_GP_RESULT_MAP_3__MASK 0xff000000 > #define NV50_3D_GP_RESULT_MAP_3__SHIFT 24 > > -#define NV50_3D_UNK187C > 0x0000187c > +#define NV50_3D_POLYGON_OFFSET_CLAMP 0x0000187c > > #define NVA3_3D_VERTEX_ARRAY_PER_INSTANCE_ALT(i0) (0x00001880 > + 0x4*(i0)) > #define NVA3_3D_VERTEX_ARRAY_PER_INSTANCE_ALT__ESIZE 0x00000004 > diff --git a/src/gallium/drivers/nv50/nv50_state.c > b/src/gallium/drivers/nv50/nv50_state.c > index 49ea646..9382557 100644 > --- a/src/gallium/drivers/nv50/nv50_state.c > +++ b/src/gallium/drivers/nv50/nv50_state.c > @@ -308,6 +308,8 @@ nv50_rasterizer_state_create(struct pipe_context *pipe, > SB_DATA (so, fui(cso->offset_scale)); > SB_BEGIN_3D(so, POLYGON_OFFSET_UNITS, 1); > SB_DATA (so, fui(cso->offset_units * 2.0f)); > + SB_BEGIN_3D(so, POLYGON_OFFSET_CLAMP, 1); > + SB_DATA (so, fui(cso->offset_clamp)); > } > > assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); > diff --git a/src/gallium/drivers/nv50/nv50_stateobj.h > b/src/gallium/drivers/nv50/nv50_stateobj.h > index d367a06..5b914d8 100644 > --- a/src/gallium/drivers/nv50/nv50_stateobj.h > +++ b/src/gallium/drivers/nv50/nv50_stateobj.h > @@ -27,7 +27,7 @@ struct nv50_blend_stateobj { > struct nv50_rasterizer_stateobj { > struct pipe_rasterizer_state pipe; > int size; > - uint32_t state[44]; > + uint32_t state[45]; > }; > > struct nv50_zsa_stateobj { > diff --git a/src/gallium/drivers/nvc0/nvc0_3d.xml.h > b/src/gallium/drivers/nvc0/nvc0_3d.xml.h > index 6301637..9264b72 100644 > --- a/src/gallium/drivers/nvc0/nvc0_3d.xml.h > +++ b/src/gallium/drivers/nvc0/nvc0_3d.xml.h > @@ -981,6 +981,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE > SOFTWARE. > > #define NVC0_3D_INDEX_BATCH_COUNT 0x000017e0 > > +#define NVC0_3D_POLYGON_OFFSET_CLAMP 0x0000187c > + > #define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE(i0) (0x00001880 > + 0x4*(i0)) > #define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE__ESIZE 0x00000004 > #define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE__LEN 0x00000020 > diff --git a/src/gallium/drivers/nvc0/nvc0_state.c > b/src/gallium/drivers/nvc0/nvc0_state.c > index 9f9921c..1a37d04 100644 > --- a/src/gallium/drivers/nvc0/nvc0_state.c > +++ b/src/gallium/drivers/nvc0/nvc0_state.c > @@ -266,6 +266,8 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe, > SB_DATA (so, fui(cso->offset_scale)); > SB_BEGIN_3D(so, POLYGON_OFFSET_UNITS, 1); > SB_DATA (so, fui(cso->offset_units * 2.0f)); > + SB_BEGIN_3D(so, POLYGON_OFFSET_CLAMP, 1); > + SB_DATA (so, fui(cso->offset_clamp)); > } > > assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); > diff --git a/src/gallium/drivers/nvc0/nvc0_stateobj.h > b/src/gallium/drivers/nvc0/nvc0_stateobj.h > index 0686c52..ecf9655 100644 > --- a/src/gallium/drivers/nvc0/nvc0_stateobj.h > +++ b/src/gallium/drivers/nvc0/nvc0_stateobj.h > @@ -25,7 +25,7 @@ struct nvc0_blend_stateobj { > struct nvc0_rasterizer_stateobj { > struct pipe_rasterizer_state pipe; > int size; > - uint32_t state[39]; > + uint32_t state[40]; > }; > > struct nvc0_zsa_stateobj { > -- > 1.7.3.4 > > > > ------------------------------ > > Message: 3 > Date: Sat, 24 Sep 2011 15:47:24 +0200 > From: Christoph Bumiller <e0425...@student.tuwien.ac.at> > Subject: [Mesa-dev] [PATCH 4/4] r600: support polygon offset clamp > state > To: mesa-dev@lists.freedesktop.org > Message-ID: > <1316872044-23685-4-git-send-email-e0425...@student.tuwien.ac.at> > > --- > src/gallium/drivers/r600/evergreen_state.c | 2 +- > src/gallium/drivers/r600/r600_state.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/drivers/r600/evergreen_state.c > b/src/gallium/drivers/r600/evergreen_state.c > index 3b7844f..7a6b246 100644 > --- a/src/gallium/drivers/r600/evergreen_state.c > +++ b/src/gallium/drivers/r600/evergreen_state.c > @@ -921,7 +921,7 @@ static void *evergreen_create_rs_state(struct > pipe_context *ctx, > > S_028C08_PIX_CENTER_HALF(state->gl_rasterization_rules), > 0xFFFFFFFF, NULL, 0); > } > - r600_pipe_state_add_reg(rstate, R_028B7C_PA_SU_POLY_OFFSET_CLAMP, > 0x0, 0xFFFFFFFF, NULL, 0); > + r600_pipe_state_add_reg(rstate, R_028B7C_PA_SU_POLY_OFFSET_CLAMP, > fui(state->offset_clamp), 0xFFFFFFFF, NULL, 0); > r600_pipe_state_add_reg(rstate, R_02820C_PA_SC_CLIPRECT_RULE, > clip_rule, 0xFFFFFFFF, NULL, 0); > return rstate; > } > diff --git a/src/gallium/drivers/r600/r600_state.c > b/src/gallium/drivers/r600/r600_state.c > index 2e2ce40..c6a9630 100644 > --- a/src/gallium/drivers/r600/r600_state.c > +++ b/src/gallium/drivers/r600/r600_state.c > @@ -960,7 +960,7 @@ static void *r600_create_rs_state(struct pipe_context > *ctx, > r600_pipe_state_add_reg(rstate, R_028C10_PA_CL_GB_VERT_DISC_ADJ, > 0x3F800000, 0xFFFFFFFF, NULL, 0); > r600_pipe_state_add_reg(rstate, R_028C14_PA_CL_GB_HORZ_CLIP_ADJ, > 0x3F800000, 0xFFFFFFFF, NULL, 0); > r600_pipe_state_add_reg(rstate, R_028C18_PA_CL_GB_HORZ_DISC_ADJ, > 0x3F800000, 0xFFFFFFFF, NULL, 0); > - r600_pipe_state_add_reg(rstate, R_028DFC_PA_SU_POLY_OFFSET_CLAMP, > 0x00000000, 0xFFFFFFFF, NULL, 0); > + r600_pipe_state_add_reg(rstate, R_028DFC_PA_SU_POLY_OFFSET_CLAMP, > fui(state->offset_clamp), 0xFFFFFFFF, NULL, 0); > r600_pipe_state_add_reg(rstate, R_02820C_PA_SC_CLIPRECT_RULE, > clip_rule, 0xFFFFFFFF, NULL, 0); > > return rstate; > -- > 1.7.3.4 > > > > ------------------------------ > > Message: 4 > Date: Sat, 24 Sep 2011 23:13:52 +0530 > From: Vivek Singh <vivek.si...@gmail.com> > Subject: Re: [Mesa-dev] Welcome to the "mesa-dev" mailing list (Digest > mode) > To: mesa-dev@lists.freedesktop.org > Message-ID: > <cajrccc2ezrcegnudfkqmn2ztrpkw908w6f9epqlku-sfxnd...@mail.gmail.com > > > Content-Type: text/plain; charset="iso-8859-1" > > Hello All > > I am using Mesa-7.10.2 stack. > > I am trying to run EGL with egl_gallium state trackers > (GLES=>EGL=>egl_gallium=> > fbdev) over fbdev with following > > configuration > > > ./configure --prefix=/opt/mesa-arm-genoa-new --host=arm-linux > --build=i686-linux --enable-gles2 --with-x=no > > --with-egl-platforms=fbdev --with-egl-displays=fbdev --with-driver=no > --disable-glu --disable-glw --disable-glut > > --disable-gl-osmesa --disable-opengl --enable-debug --enable-gles-overlay > > I am able to run applications which can draw directly on scanout > surfaces/pbuffer (es2gears). > > I want to run application which uses eglCreateImageKHR (with user defined > pixmap structures) to make textures > and eglCreatePixmapSurface (with user defined pixmap structures) to create > a > Pixmap surfaces. Since Native_fbdev.c doesnot > > support pixmap surfaces both calls fail. > I tried to put pixmap support in native_fbdev.c with following steps > 1)putting a function in > fbdpy->base.destroy = fbdev_display_destroy; > fbdpy->base.get_param = fbdev_display_get_param; > fbdpy->base.get_configs = fbdev_display_get_configs; > > /*Adding function to create PIXMAP surface*/ > fbdpy->base.is_pixmap_supported = fbdev_display_is_pixmap_supported; > fbdpy->base.create_pixmap_surface = fbdev_display_create_pixmap_surface; > > 2)Added support flag true in native_config > pixmap_bit=true; > > I am able to get finctions eglCreateImageKHR/eglCreatePixmapSurface run > successfully able to get user defined pixmap > to native_fbdev by typecasting it ot EGLNativePixmaptype. But I am not able > to draw any texture on EGLImage. I suspect > glEGLImageTargetTexture2DOES is not working properly with EGLImage returned > from eglCreateImageKHR. > > I dont know how I can make it visible to GLES by calling function like > glEGLImageTargetTexture2DOES. > > I am very new to GLES and EGL . Please provide me suggestions so that I can > proceed further. > > For convenient i am putting my code which I have inserted to native_fbdev.c > > static struct native_surface * > fbdev_display_create_pixmap_surface(struct native_display *ndpy, > EGLNativePixmapType pix, > const struct native_config *nconf) > { > printf("START %s %s\n", __FUNCTION__, __FILE__); > fbdev_pixmap *pixmap = (fbdev_pixmap *)pix; > /*Trying To print pixmap detail*/ > > printf("pixmap->height ::%d\n", pixmap->height); > printf("pixmap->width ::%d\n", pixmap->width); > printf("pixmap->bytes_per_pixel ::%d\n", pixmap->bytes_per_pixel); > printf("pixmap->buffer_size ::%d\n", pixmap->buffer_size); > printf("pixmap->red_size ::%d\n", pixmap->red_size); > printf("pixmap->green_size ::%d\n", pixmap->green_size); > printf("pixmap->red_size ::%d\n", pixmap->blue_size); > printf("pixmap->alpha_size ::%d\n", pixmap->alpha_size); > printf("pixmap->luminance_size ::%d\n", pixmap->luminance_size); > printf("pixmap->flags ::%d\n", pixmap->flags); > printf("pixmap->data ::%p\n", pixmap->data); > > struct fbdev_display *fbdpy = fbdev_display(ndpy); > struct fbdev_surface *fbsurf; > fbsurf = CALLOC_STRUCT(fbdev_surface); > if (!fbsurf) > return NULL; > fbsurf->fbdpy = fbdpy; > fbsurf->width = pixmap->width; > fbsurf->height = pixmap->height; > fbsurf->type = FBDEV_SURFACE_TYPE_PIXMAP; > fbsurf->pixmap = pix; > fbsurf->rsurf = resource_surface_create(fbdpy->base.screen, > nconf->color_format, > PIPE_BIND_RENDER_TARGET | > PIPE_BIND_DISPLAY_TARGET | PIPE_BIND_SCANOUT ); > > if (!fbsurf->rsurf) { > FREE(fbsurf); > return NULL; > } > > resource_surface_set_size(fbsurf->rsurf, fbsurf->width, fbsurf->height); > > fbsurf->base.destroy = fbdev_surface_destroy; > fbsurf->base.present = fbdev_surface_present; > fbsurf->base.validate = fbdev_surface_validate; > fbsurf->base.wait = fbdev_surface_wait; > > printf("END %s %s\n", __FUNCTION__, __FILE__); > return &fbsurf->base; > > } > > static struct native_display * > fbdev_display_create(int fd, struct native_event_handler *event_handler, > void *user_data) > { > struct fbdev_display *fbdpy; > > fbdpy = CALLOC_STRUCT(fbdev_display); > if (!fbdpy) > return NULL; > > fbdpy->fd = fd; > fbdpy->event_handler = event_handler; > fbdpy->base.user_data = user_data; > > if (!fbdev_display_init(&fbdpy->base)) { > FREE(fbdpy); > return NULL; > } > > fbdpy->base.destroy = fbdev_display_destroy; > fbdpy->base.get_param = fbdev_display_get_param; > fbdpy->base.get_configs = fbdev_display_get_configs; > > /*Vivek:: Adding function to create PIXMAP surface*/ > fbdpy->base.is_pixmap_supported = fbdev_display_is_pixmap_supported; > fbdpy->base.create_pixmap_surface = fbdev_display_create_pixmap_surface; > > fbdpy->base.modeset = &fbdev_display_modeset; > > return &fbdpy->base; > } > > static boolean > fbdev_display_is_pixmap_supported(struct native_display *ndpy, > EGLNativePixmapType pix, > const struct native_config *nconf) > { > printf("START %s %s\n", __FUNCTION__, __FILE__); > struct fbdev_display *fdpy = fbdev_display(ndpy); > enum pipe_format fmt; > uint depth; > depth = 32; //hard coded for 4bpp > switch (depth) { > case 32: > fmt = PIPE_FORMAT_B8G8R8A8_UNORM; > break; > case 24: > fmt = PIPE_FORMAT_B8G8R8X8_UNORM; > break; > case 16: > fmt = PIPE_FORMAT_B5G6R5_UNORM; > break; > default: > fmt = PIPE_FORMAT_NONE; > break; > } > > return (fmt == nconf->color_format); > } > > static boolean > fbdev_surface_flush_frontbuffer(struct native_surface *nsurf) > { > printf("%s %s\n", __FUNCTION__, __FILE__); > struct fbdev_surface *fbsurf = fbdev_surface(nsurf); > > if (!fbsurf->is_current) > return TRUE; > > if(fbsurf->type == FBDEV_SURFACE_TYPE_PIXMAP) //Vivek > { > > return resource_surface_present(fbsurf->rsurf, > NATIVE_ATTACHMENT_FRONT_LEFT, fbsurf->pixmap); > } > else > { > return resource_surface_present(fbsurf->rsurf, > NATIVE_ATTACHMENT_FRONT_LEFT, NULL); > } > > } > > > Regards > Vivek > > On Sat, Sep 24, 2011 at 11:08 PM, <mesa-dev-requ...@lists.freedesktop.org > >wrote: > > > Welcome to the mesa-dev@lists.freedesktop.org mailing list! > > > > To post to this list, send your email to: > > > > mesa-dev@lists.freedesktop.org > > > > General information about the mailing list is at: > > > > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > > If you ever want to unsubscribe or change your options (eg, switch to > > or from digest mode, change your password, etc.), visit your > > subscription page at: > > > > > > > http://lists.freedesktop.org/mailman/options/mesa-dev/vivek.siwan%40gmail.com > > > > > > You can also make such adjustments via email by sending a message to: > > > > mesa-dev-requ...@lists.freedesktop.org > > > > with the word `help' in the subject or body (don't include the > > quotes), and you will get back a message with instructions. > > > > You must know your password to change your options (including changing > > the password, itself) or to unsubscribe. It is: > > > > himmatwala > > > > Normally, Mailman will remind you of your lists.freedesktop.org > > mailing list passwords once every month, although you can disable this > > if you prefer. This reminder will also include instructions on how to > > unsubscribe or change your account options. There is also a button on > > your options page that will email your current password to you. > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://lists.freedesktop.org/archives/mesa-dev/attachments/20110924/e3646c39/attachment.html > > > > ------------------------------ > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > End of mesa-dev Digest, Vol 18, Issue 186 > ***************************************** >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev