Lines Matching refs:format
35 /* Header-only format conversion include */
302 /* The format enum for R8G8B8_UNORM_SRGB first shows up in the HSW PRM but
678 * Otherwise, the state tracker would just give us a format with alpha
692 format_info_exists(enum isl_format format)
694 assert(format != ISL_FORMAT_UNSUPPORTED);
695 assert(format < ISL_NUM_FORMATS);
696 return format < ARRAY_SIZE(format_info) && format_info[format].exists;
701 enum isl_format format)
703 if (!format_info_exists(format))
706 return devinfo->verx10 >= format_info[format].render_target;
711 enum isl_format format)
713 if (!format_info_exists(format))
716 return devinfo->verx10 >= format_info[format].alpha_blend;
721 enum isl_format format)
723 if (!format_info_exists(format))
727 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
740 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
747 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
759 return devinfo->verx10 >= format_info[format].sampling;
764 enum isl_format format)
766 if (!format_info_exists(format))
769 if (isl_format_is_compressed(format)) {
770 assert(format_info[format].filtering == format_info[format].sampling);
771 return isl_format_supports_sampling(devinfo, format);
774 return devinfo->verx10 >= format_info[format].filtering;
779 enum isl_format format)
781 if (!format_info_exists(format))
788 return 75 >= format_info[format].input_vb;
790 return devinfo->verx10 >= format_info[format].input_vb;
794 * Returns true if the given format can support typed writes.
798 enum isl_format format)
800 if (!format_info_exists(format))
803 return devinfo->verx10 >= format_info[format].typed_write;
807 * Returns true if the given format can support typed atomics.
811 enum isl_format format)
813 if (!format_info_exists(format))
816 return devinfo->verx10 >= format_info[format].typed_atomics;
820 * Returns true if the given format can support typed reads with format
823 * the raw image data and don't provide format conversion.
826 * format tables is to search for R11G11B10. There are only a few
831 enum isl_format format)
833 if (!format_info_exists(format))
836 return devinfo->verx10 >= format_info[format].typed_read;
840 * Returns true if the given format can support single-sample fast clears.
841 * This function only checks the format. In order to determine if a surface
847 enum isl_format format)
855 if (!isl_format_supports_rendering(devinfo, format))
858 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
870 * Returns true if the given format can support single-sample color
871 * compression. This function only checks the format. In order to determine
877 enum isl_format format)
883 if (!format_info_exists(format))
886 /* For simplicity, only report that a format supports CCS_E if blorp can
887 * perform bit-for-bit copies with an image of that format while compressed.
892 if (format == ISL_FORMAT_R11G11B10_FLOAT)
895 return devinfo->verx10 >= format_info[format].ccs_e;
900 enum isl_format format)
909 * - any format with greater than 64 bits per element
910 * - any compressed texture format (BC*)
911 * - any YCRCB* format
913 * The restriction on the format's size is removed on Broadwell. Moreover,
915 * with format sizes all the way to 128-bits (RGBA32F, RGBA32I, RGBA32UI).
918 * format and is allowed to be multisampled on Broadwell and earlier.
920 if (format == ISL_FORMAT_HIZ) {
925 } else if (devinfo->ver == 7 && isl_format_has_sint_channel(format)) {
940 } else if (devinfo->ver < 7 && isl_format_get_layout(format)->bpb > 64) {
942 } else if (isl_format_is_compressed(format)) {
944 } else if (isl_format_is_yuv(format)) {
953 * each component from one format has the same number of bits as the other
954 * format.
974 * render in one format with CCS_E enabled and then texture using the other
975 * format without needing a resolve.
979 * format-dependent.
992 * same aux map format encoding so they are definitely compatible.
1001 * of the format but only depends on the bit-layout of the channels.
1098 unreachable("bad isl depth format");
1198 assert(!"Invalid RGBX format");
1260 * the isl_format. This function is very slow for a format conversion
1265 enum isl_format format,
1268 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
1271 assert(!isl_format_is_compressed(format));
1275 if (format == ISL_FORMAT_R9G9B9E5_SHAREDEXP) {
1278 } else if (format == ISL_FORMAT_R11G11B10_FLOAT) {
1357 * the isl_format. This function is very slow for a format conversion
1362 enum isl_format format,
1365 const struct isl_format_layout *fmtl = isl_format_get_layout(format);
1368 assert(!isl_format_is_compressed(format));
1372 if (isl_format_has_int_channel(format)) {
1378 if (format == ISL_FORMAT_R9G9B9E5_SHAREDEXP) {
1381 } else if (format == ISL_FORMAT_R11G11B10_FLOAT) {