コード例 #1
0
ファイル: radeon_drm.c プロジェクト: emcmanus/FlashMesa3D
/* Create a pipe_screen. */
struct pipe_screen* radeon_create_screen(struct drm_api* api,
                                         int drmFB,
                                         struct drm_create_screen_arg *arg)
{
    struct radeon_winsys* winsys = radeon_pipe_winsys(drmFB);

    if (debug_get_bool_option("RADEON_SOFTPIPE", FALSE)) {
        return softpipe_create_screen((struct pipe_winsys*)winsys);
    } else {
        struct r300_winsys* r300 = radeon_create_r300_winsys(drmFB, winsys);
        FREE(winsys);
        return r300_create_screen(r300);
    }
}
コード例 #2
0
ファイル: radeon_drm.c プロジェクト: CPFDSoftware-Tony/gmv
/* Create a pipe_screen. */
struct pipe_screen* radeon_create_screen(struct drm_api* api,
                                         int drmFB,
                                         struct drm_create_screen_arg *arg)
{
    struct radeon_winsys* rwinsys = radeon_pipe_winsys(drmFB);
    do_ioctls(drmFB, rwinsys);

    /* The state tracker can organize a softpipe fallback if no hw
     * driver is found.
     */
    if (is_r3xx(rwinsys->pci_id)) {
        radeon_setup_winsys(drmFB, rwinsys);
        return r300_create_screen(rwinsys);
    } else {
        FREE(rwinsys);
        return NULL;
    }
}