Ozone GBM: support R_8 format to GpuMemoryBuffers

It makes zero-copy video playback on ChromeOS use native GpuMemoryBuffers.

Comparison of power consumption
- Use Pixel-2.
- Use 1440p60 HD video; https://www.youtube.com/embed/UceRgEyfSsc
- Use power_supply_info tool, which is software tool, so not very accurate.
- Measure for 1 min, and take sample every 1 sec.

1) software zero-copy video playback
 energy rate (W): 16.92
 stdev: 1.16

2) native zero-copy video playback
 energy rate (W): 16.16
 stdev: 1.21

Native zero-copy video playback seems to save power but stdev is bigger than
difference. Need to measure using power meter.

BUG=356871
TEST=amd64-generic on HSW/BDW/SKL
content_unittests --gtest_filter=GpuMemoryBuffer* --ozone-platform=gbm --ozone-use-surfaceless --single-process-tests
gpu_unittests --gtest_filter=GpuMemoryBuffer* --ozone-platform=gbm --ozone-use-surfaceless --single-process-tests
gl_unittests --gtest_filter=GLImage* --ozone-platform=gbm --ozone-use-surfaceless --single-process-tests
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/1869793002
Cr-Commit-Position: refs/heads/master@{#392022}
3 files changed