1*41ec0267Sriastradh /* $NetBSD: ch7006.h,v 1.3 2021/12/18 23:45:46 riastradh Exp $ */ 2efa246c0Sriastradh 3fcd0cb28Sriastradh /* 4fcd0cb28Sriastradh * Copyright (C) 2009 Francisco Jerez. 5fcd0cb28Sriastradh * All Rights Reserved. 6fcd0cb28Sriastradh * 7fcd0cb28Sriastradh * Permission is hereby granted, free of charge, to any person obtaining 8fcd0cb28Sriastradh * a copy of this software and associated documentation files (the 9fcd0cb28Sriastradh * "Software"), to deal in the Software without restriction, including 10fcd0cb28Sriastradh * without limitation the rights to use, copy, modify, merge, publish, 11fcd0cb28Sriastradh * distribute, sublicense, and/or sell copies of the Software, and to 12fcd0cb28Sriastradh * permit persons to whom the Software is furnished to do so, subject to 13fcd0cb28Sriastradh * the following conditions: 14fcd0cb28Sriastradh * 15fcd0cb28Sriastradh * The above copyright notice and this permission notice (including the 16fcd0cb28Sriastradh * next paragraph) shall be included in all copies or substantial 17fcd0cb28Sriastradh * portions of the Software. 18fcd0cb28Sriastradh * 19fcd0cb28Sriastradh * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20fcd0cb28Sriastradh * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21fcd0cb28Sriastradh * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22fcd0cb28Sriastradh * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE 23fcd0cb28Sriastradh * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 24fcd0cb28Sriastradh * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 25fcd0cb28Sriastradh * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 26fcd0cb28Sriastradh * 27fcd0cb28Sriastradh */ 28fcd0cb28Sriastradh 29fcd0cb28Sriastradh #ifndef __DRM_I2C_CH7006_H__ 30fcd0cb28Sriastradh #define __DRM_I2C_CH7006_H__ 31fcd0cb28Sriastradh 32fcd0cb28Sriastradh /** 33fcd0cb28Sriastradh * struct ch7006_encoder_params 34fcd0cb28Sriastradh * 35fcd0cb28Sriastradh * Describes how the ch7006 is wired up with the GPU. It should be 36fcd0cb28Sriastradh * used as the @params parameter of its @set_config method. 37fcd0cb28Sriastradh * 38fcd0cb28Sriastradh * See "http://www.chrontel.com/pdf/7006.pdf" for their precise 39fcd0cb28Sriastradh * meaning. 40fcd0cb28Sriastradh */ 41fcd0cb28Sriastradh struct ch7006_encoder_params { 42fcd0cb28Sriastradh enum { 43fcd0cb28Sriastradh CH7006_FORMAT_RGB16 = 0, 44fcd0cb28Sriastradh CH7006_FORMAT_YCrCb24m16, 45fcd0cb28Sriastradh CH7006_FORMAT_RGB24m16, 46fcd0cb28Sriastradh CH7006_FORMAT_RGB15, 47fcd0cb28Sriastradh CH7006_FORMAT_RGB24m12C, 48fcd0cb28Sriastradh CH7006_FORMAT_RGB24m12I, 49fcd0cb28Sriastradh CH7006_FORMAT_RGB24m8, 50fcd0cb28Sriastradh CH7006_FORMAT_RGB16m8, 51fcd0cb28Sriastradh CH7006_FORMAT_RGB15m8, 52fcd0cb28Sriastradh CH7006_FORMAT_YCrCb24m8, 53fcd0cb28Sriastradh } input_format; 54fcd0cb28Sriastradh 55fcd0cb28Sriastradh enum { 56fcd0cb28Sriastradh CH7006_CLOCK_SLAVE = 0, 57fcd0cb28Sriastradh CH7006_CLOCK_MASTER, 58fcd0cb28Sriastradh } clock_mode; 59fcd0cb28Sriastradh 60fcd0cb28Sriastradh enum { 61fcd0cb28Sriastradh CH7006_CLOCK_EDGE_NEG = 0, 62fcd0cb28Sriastradh CH7006_CLOCK_EDGE_POS, 63fcd0cb28Sriastradh } clock_edge; 64fcd0cb28Sriastradh 65fcd0cb28Sriastradh int xcm, pcm; 66fcd0cb28Sriastradh 67fcd0cb28Sriastradh enum { 68fcd0cb28Sriastradh CH7006_SYNC_SLAVE = 0, 69fcd0cb28Sriastradh CH7006_SYNC_MASTER, 70fcd0cb28Sriastradh } sync_direction; 71fcd0cb28Sriastradh 72fcd0cb28Sriastradh enum { 73fcd0cb28Sriastradh CH7006_SYNC_SEPARATED = 0, 74fcd0cb28Sriastradh CH7006_SYNC_EMBEDDED, 75fcd0cb28Sriastradh } sync_encoding; 76fcd0cb28Sriastradh 77fcd0cb28Sriastradh enum { 78fcd0cb28Sriastradh CH7006_POUT_1_8V = 0, 79fcd0cb28Sriastradh CH7006_POUT_3_3V, 80fcd0cb28Sriastradh } pout_level; 81fcd0cb28Sriastradh 82fcd0cb28Sriastradh enum { 83fcd0cb28Sriastradh CH7006_ACTIVE_HSYNC = 0, 84fcd0cb28Sriastradh CH7006_ACTIVE_DSTART, 85fcd0cb28Sriastradh } active_detect; 86fcd0cb28Sriastradh }; 87fcd0cb28Sriastradh 88fcd0cb28Sriastradh #endif 89