.. | .. |
---|
1606 | 1606 | { |
---|
1607 | 1607 | WRITE_ONCE(*addr, value); |
---|
1608 | 1608 | } |
---|
| 1609 | + |
---|
| 1610 | +static inline bool vmw_shadertype_is_valid(enum vmw_sm_type shader_model, |
---|
| 1611 | + u32 shader_type) |
---|
| 1612 | +{ |
---|
| 1613 | + SVGA3dShaderType max_allowed = SVGA3D_SHADERTYPE_PREDX_MAX; |
---|
| 1614 | + |
---|
| 1615 | + if (shader_model >= VMW_SM_5) |
---|
| 1616 | + max_allowed = SVGA3D_SHADERTYPE_MAX; |
---|
| 1617 | + else if (shader_model >= VMW_SM_4) |
---|
| 1618 | + max_allowed = SVGA3D_SHADERTYPE_DX10_MAX; |
---|
| 1619 | + return shader_type >= SVGA3D_SHADERTYPE_MIN && shader_type < max_allowed; |
---|
| 1620 | +} |
---|
| 1621 | + |
---|
1609 | 1622 | #endif |
---|