adv7511           382 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7511_cec_init(struct device *dev, struct adv7511 *adv7511);
adv7511           383 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7511_cec_irq_process(struct adv7511 *adv7511, unsigned int irq1);
adv7511           385 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7511_cec_init(struct device *dev, struct adv7511 *adv7511)
adv7511           387 drivers/gpu/drm/bridge/adv7511/adv7511.h 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           390 drivers/gpu/drm/bridge/adv7511/adv7511.h 	regmap_write(adv7511->regmap, ADV7511_REG_CEC_CTRL + offset,
adv7511           397 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7533_dsi_power_on(struct adv7511 *adv);
adv7511           398 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7533_dsi_power_off(struct adv7511 *adv);
adv7511           399 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7533_mode_set(struct adv7511 *adv, const struct drm_display_mode *mode);
adv7511           400 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7533_patch_registers(struct adv7511 *adv);
adv7511           401 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7533_patch_cec_registers(struct adv7511 *adv);
adv7511           402 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7533_attach_dsi(struct adv7511 *adv);
adv7511           403 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7533_detach_dsi(struct adv7511 *adv);
adv7511           404 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7533_parse_dt(struct device_node *np, struct adv7511 *adv);
adv7511           406 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline void adv7533_dsi_power_on(struct adv7511 *adv)
adv7511           410 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline void adv7533_dsi_power_off(struct adv7511 *adv)
adv7511           414 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline void adv7533_mode_set(struct adv7511 *adv,
adv7511           419 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7533_patch_registers(struct adv7511 *adv)
adv7511           424 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7533_patch_cec_registers(struct adv7511 *adv)
adv7511           429 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7533_attach_dsi(struct adv7511 *adv)
adv7511           434 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline void adv7533_detach_dsi(struct adv7511 *adv)
adv7511           438 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7533_parse_dt(struct device_node *np, struct adv7511 *adv)
adv7511           445 drivers/gpu/drm/bridge/adv7511/adv7511.h int adv7511_audio_init(struct device *dev, struct adv7511 *adv7511);
adv7511           446 drivers/gpu/drm/bridge/adv7511/adv7511.h void adv7511_audio_exit(struct adv7511 *adv7511);
adv7511           448 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline int adv7511_audio_init(struct device *dev, struct adv7511 *adv7511)
adv7511           452 drivers/gpu/drm/bridge/adv7511/adv7511.h static inline void adv7511_audio_exit(struct adv7511 *adv7511)
adv7511            35 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c static int adv7511_update_cts_n(struct adv7511 *adv7511)
adv7511            40 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	adv7511_calc_cts_n(adv7511->f_tmds, adv7511->f_audio, &cts, &n);
adv7511            42 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_N0, (n >> 16) & 0xf);
adv7511            43 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_N1, (n >> 8) & 0xff);
adv7511            44 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_N2, n & 0xff);
adv7511            46 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_CTS_MANUAL0,
adv7511            48 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_CTS_MANUAL1,
adv7511            50 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, ADV7511_REG_CTS_MANUAL2,
adv7511            60 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	struct adv7511 *adv7511 = dev_get_drvdata(dev);
adv7511           128 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_SOURCE, 0x70,
adv7511           130 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CONFIG, BIT(6),
adv7511           132 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_I2S_CONFIG, 0x03,
adv7511           135 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	adv7511->audio_source = audio_source;
adv7511           137 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	adv7511->f_audio = hparms->sample_rate;
adv7511           139 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	adv7511_update_cts_n(adv7511);
adv7511           141 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CFG3,
adv7511           143 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_I2C_FREQ_ID_CFG,
adv7511           145 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_write(adv7511->regmap, 0x73, 0x1);
adv7511           152 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	struct adv7511 *adv7511 = dev_get_drvdata(dev);
adv7511           154 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CONFIG,
adv7511           158 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_INFOFRAME_UPDATE,
adv7511           161 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE1,
adv7511           164 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE1,
adv7511           167 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CFG1,
adv7511           170 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE1,
adv7511           173 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_GC(0),
adv7511           176 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_GC(1),
adv7511           218 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c int adv7511_audio_init(struct device *dev, struct adv7511 *adv7511)
adv7511           220 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	adv7511->audio_pdev = platform_device_register_data(dev,
adv7511           225 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	return PTR_ERR_OR_ZERO(adv7511->audio_pdev);
adv7511           228 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c void adv7511_audio_exit(struct adv7511 *adv7511)
adv7511           230 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 	if (adv7511->audio_pdev) {
adv7511           231 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 		platform_device_unregister(adv7511->audio_pdev);
adv7511           232 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c 		adv7511->audio_pdev = NULL;
adv7511            35 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c static void adv_cec_tx_raw_status(struct adv7511 *adv7511, u8 tx_raw_status)
adv7511            37 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511            41 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (regmap_read(adv7511->regmap_cec,
adv7511            49 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		cec_transmit_attempt_done(adv7511->cec_adap,
adv7511            65 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		if (regmap_read(adv7511->regmap_cec,
adv7511            77 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		cec_transmit_done(adv7511->cec_adap, status,
adv7511            82 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		cec_transmit_attempt_done(adv7511->cec_adap, CEC_TX_STATUS_OK);
adv7511            87 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c void adv7511_cec_irq_process(struct adv7511 *adv7511, unsigned int irq1)
adv7511            89 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           100 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		adv_cec_tx_raw_status(adv7511, irq1);
adv7511           105 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (regmap_read(adv7511->regmap_cec,
adv7511           118 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_read(adv7511->regmap_cec,
adv7511           124 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           126 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           128 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	cec_received_msg(adv7511->cec_adap, &msg);
adv7511           133 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	struct adv7511 *adv7511 = cec_get_drvdata(adap);
adv7511           134 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           137 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (adv7511->i2c_cec == NULL)
adv7511           140 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (!adv7511->cec_enabled_adap && enable) {
adv7511           142 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           146 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_write(adv7511->regmap_cec,
adv7511           148 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_write(adv7511->regmap_cec,
adv7511           151 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           158 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap,
adv7511           161 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	} else if (adv7511->cec_enabled_adap && !enable) {
adv7511           162 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap,
adv7511           165 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           169 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           172 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		adv7511->cec_valid_addrs = 0;
adv7511           174 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_enabled_adap = enable;
adv7511           180 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	struct adv7511 *adv7511 = cec_get_drvdata(adap);
adv7511           181 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           185 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (!adv7511->cec_enabled_adap)
adv7511           189 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           192 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		adv7511->cec_valid_addrs = 0;
adv7511           197 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		bool is_valid = adv7511->cec_valid_addrs & (1 << i);
adv7511           201 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		if (is_valid && adv7511->cec_addr[i] == addr)
adv7511           209 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_addr[i] = addr;
adv7511           210 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_valid_addrs |= 1 << i;
adv7511           215 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           219 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           225 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           229 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           235 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           239 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_update_bits(adv7511->regmap_cec,
adv7511           250 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	struct adv7511 *adv7511 = cec_get_drvdata(adap);
adv7511           251 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           261 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_update_bits(adv7511->regmap_cec,
adv7511           266 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_INT(1), 0x38, 0x38);
adv7511           270 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		regmap_write(adv7511->regmap_cec,
adv7511           275 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           278 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           289 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c static int adv7511_cec_parse_dt(struct device *dev, struct adv7511 *adv7511)
adv7511           291 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_clk = devm_clk_get(dev, "cec");
adv7511           292 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (IS_ERR(adv7511->cec_clk)) {
adv7511           293 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		int ret = PTR_ERR(adv7511->cec_clk);
adv7511           295 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		adv7511->cec_clk = NULL;
adv7511           298 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	clk_prepare_enable(adv7511->cec_clk);
adv7511           299 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_clk_freq = clk_get_rate(adv7511->cec_clk);
adv7511           303 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c int adv7511_cec_init(struct device *dev, struct adv7511 *adv7511)
adv7511           305 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	unsigned int offset = adv7511->type == ADV7533 ?
adv7511           307 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	int ret = adv7511_cec_parse_dt(dev, adv7511);
adv7511           312 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_adap = cec_allocate_adapter(&adv7511_cec_adap_ops,
adv7511           313 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		adv7511, dev_name(dev), CEC_CAP_DEFAULTS, ADV7511_MAX_ADDRS);
adv7511           314 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	if (IS_ERR(adv7511->cec_adap)) {
adv7511           315 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		ret = PTR_ERR(adv7511->cec_adap);
adv7511           319 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap, ADV7511_REG_CEC_CTRL + offset, 0);
adv7511           321 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           323 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           327 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           330 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap_cec,
adv7511           332 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 		     ((adv7511->cec_clk_freq / 750000) - 1) << 2);
adv7511           334 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	ret = cec_register_adapter(adv7511->cec_adap, dev);
adv7511           340 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	cec_delete_adapter(adv7511->cec_adap);
adv7511           341 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	adv7511->cec_adap = NULL;
adv7511           346 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c 	regmap_write(adv7511->regmap, ADV7511_REG_CEC_CTRL + offset,
adv7511           135 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_set_colormap(struct adv7511 *adv7511, bool enable,
adv7511           141 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_CSC_UPPER(1),
adv7511           146 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			regmap_update_bits(adv7511->regmap,
adv7511           149 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			regmap_write(adv7511->regmap,
adv7511           156 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_CSC_UPPER(0),
adv7511           159 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_CSC_UPPER(0),
adv7511           162 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_CSC_UPPER(1),
adv7511           166 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_packet_enable(struct adv7511 *adv7511, unsigned int packet)
adv7511           169 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE0,
adv7511           174 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE1,
adv7511           181 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_packet_disable(struct adv7511 *adv7511, unsigned int packet)
adv7511           184 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE0,
adv7511           189 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_PACKET_ENABLE1,
adv7511           203 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_set_config_csc(struct adv7511 *adv7511,
adv7511           260 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_packet_disable(adv7511, ADV7511_PACKET_ENABLE_AVI_INFOFRAME);
adv7511           262 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_set_colormap(adv7511, config.csc_enable,
adv7511           266 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_VIDEO_INPUT_CFG1, 0x81,
adv7511           269 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_HDCP_HDMI_CFG,
adv7511           276 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_bulk_write(adv7511->regmap, ADV7511_REG_AVI_INFOFRAME_VERSION,
adv7511           279 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_packet_enable(adv7511, ADV7511_PACKET_ENABLE_AVI_INFOFRAME);
adv7511           282 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_set_link_config(struct adv7511 *adv7511,
adv7511           310 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_I2C_FREQ_ID_CFG, 0xf,
adv7511           312 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_VIDEO_INPUT_CFG1, 0x7e,
adv7511           315 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_VIDEO_INPUT_CFG2,
adv7511           317 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_TIMING_GEN_SEQ,
adv7511           320 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, 0xba, clock_delay << 5);
adv7511           322 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->embedded_sync = config->embedded_sync;
adv7511           323 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->hsync_polarity = config->hsync_polarity;
adv7511           324 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->vsync_polarity = config->vsync_polarity;
adv7511           325 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->rgb = config->input_colorspace == HDMI_COLORSPACE_RGB;
adv7511           328 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void __adv7511_power_on(struct adv7511 *adv7511)
adv7511           330 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->current_edid_segment = -1;
adv7511           332 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER,
adv7511           334 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->i2c_main->irq) {
adv7511           340 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_INT_ENABLE(0),
adv7511           342 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap,
adv7511           356 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER2,
adv7511           361 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_power_on(struct adv7511 *adv7511)
adv7511           363 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	__adv7511_power_on(adv7511);
adv7511           368 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regcache_sync(adv7511->regmap);
adv7511           370 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7533)
adv7511           371 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7533_dsi_power_on(adv7511);
adv7511           372 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->powered = true;
adv7511           375 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void __adv7511_power_off(struct adv7511 *adv7511)
adv7511           378 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER,
adv7511           381 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap,
adv7511           384 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regcache_mark_dirty(adv7511->regmap);
adv7511           387 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_power_off(struct adv7511 *adv7511)
adv7511           389 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	__adv7511_power_off(adv7511);
adv7511           390 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7533)
adv7511           391 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7533_dsi_power_off(adv7511);
adv7511           392 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->powered = false;
adv7511           399 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static bool adv7511_hpd(struct adv7511 *adv7511)
adv7511           404 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_INT(0), &irq0);
adv7511           409 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_INT(0),
adv7511           419 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511 = container_of(work, struct adv7511, hpd_work);
adv7511           424 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_STATUS, &val);
adv7511           438 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	    adv7511->connector.status == connector_status_disconnected &&
adv7511           439 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	    adv7511->powered) {
adv7511           440 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regcache_mark_dirty(adv7511->regmap);
adv7511           441 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511_power_on(adv7511);
adv7511           444 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->connector.status != status) {
adv7511           445 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511->connector.status = status;
adv7511           447 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			cec_phys_addr_invalidate(adv7511->cec_adap);
adv7511           448 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		drm_kms_helper_hotplug_event(adv7511->connector.dev);
adv7511           452 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_irq_process(struct adv7511 *adv7511, bool process_hpd)
adv7511           457 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_INT(0), &irq0);
adv7511           461 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_INT(1), &irq1);
adv7511           465 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_INT(0), irq0);
adv7511           466 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_INT(1), irq1);
adv7511           468 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (process_hpd && irq0 & ADV7511_INT0_HPD && adv7511->bridge.encoder)
adv7511           469 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		schedule_work(&adv7511->hpd_work);
adv7511           472 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511->edid_read = true;
adv7511           474 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		if (adv7511->i2c_main->irq)
adv7511           475 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			wake_up_all(&adv7511->wq);
adv7511           479 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_cec_irq_process(adv7511, irq1);
adv7511           487 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511 = devid;
adv7511           490 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = adv7511_irq_process(adv7511, true);
adv7511           498 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_wait_for_edid(struct adv7511 *adv7511, int timeout)
adv7511           502 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->i2c_main->irq) {
adv7511           503 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = wait_event_interruptible_timeout(adv7511->wq,
adv7511           504 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 				adv7511->edid_read, msecs_to_jiffies(timeout));
adv7511           507 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			ret = adv7511_irq_process(adv7511, false);
adv7511           511 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			if (adv7511->edid_read)
adv7511           518 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	return adv7511->edid_read ? 0 : -EIO;
adv7511           524 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511 = data;
adv7511           533 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->current_edid_segment != block / 2) {
adv7511           536 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = regmap_read(adv7511->regmap, ADV7511_REG_DDC_STATUS,
adv7511           542 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			adv7511->edid_read = false;
adv7511           543 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			regmap_write(adv7511->regmap, ADV7511_REG_EDID_SEGMENT,
adv7511           545 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			ret = adv7511_wait_for_edid(adv7511, 200);
adv7511           554 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		xfer[0].addr = adv7511->i2c_edid->addr;
adv7511           558 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		xfer[1].addr = adv7511->i2c_edid->addr;
adv7511           561 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		xfer[1].buf = adv7511->edid_buf;
adv7511           566 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 			ret = i2c_transfer(adv7511->i2c_edid->adapter, xfer,
adv7511           577 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511->current_edid_segment = block / 2;
adv7511           581 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		memcpy(buf, adv7511->edid_buf, len);
adv7511           583 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		memcpy(buf, adv7511->edid_buf + 128, len);
adv7511           592 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_get_modes(struct adv7511 *adv7511,
adv7511           599 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (!adv7511->powered) {
adv7511           601 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 					(adv7511->i2c_edid->addr << 1);
adv7511           603 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		__adv7511_power_on(adv7511);
adv7511           606 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_EDID_I2C_ADDR,
adv7511           610 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	edid = drm_do_get_edid(connector, adv7511_get_edid_block, adv7511);
adv7511           612 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (!adv7511->powered)
adv7511           613 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		__adv7511_power_off(adv7511);
adv7511           619 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_set_config_csc(adv7511, connector, adv7511->rgb,
adv7511           622 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	cec_s_phys_addr_from_edid(adv7511->cec_adap, edid);
adv7511           630 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c adv7511_detect(struct adv7511 *adv7511, struct drm_connector *connector)
adv7511           637 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_STATUS, &val);
adv7511           646 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	hpd = adv7511_hpd(adv7511);
adv7511           652 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (status == connector_status_connected && hpd && adv7511->powered) {
adv7511           653 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regcache_mark_dirty(adv7511->regmap);
adv7511           654 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511_power_on(adv7511);
adv7511           655 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511_get_modes(adv7511, connector);
adv7511           656 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		if (adv7511->status == connector_status_connected)
adv7511           660 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER2,
adv7511           665 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->status = status;
adv7511           669 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static enum drm_mode_status adv7511_mode_valid(struct adv7511 *adv7511,
adv7511           678 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_mode_set(struct adv7511 *adv7511,
adv7511           686 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->embedded_sync) {
adv7511           702 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_HSYNC_PLACEMENT_MSB,
adv7511           704 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_SYNC_DECODER(0),
adv7511           706 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_SYNC_DECODER(1),
adv7511           709 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_SYNC_DECODER(2),
adv7511           712 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_SYNC_DECODER(3),
adv7511           715 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		regmap_write(adv7511->regmap, ADV7511_REG_SYNC_DECODER(4),
adv7511           739 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		if (adv7511->hsync_polarity != mode_hsync_polarity &&
adv7511           740 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		    adv7511->hsync_polarity !=
adv7511           744 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		if (adv7511->vsync_polarity != mode_vsync_polarity &&
adv7511           745 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		    adv7511->vsync_polarity !=
adv7511           759 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, 0xfb,
adv7511           761 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_update_bits(adv7511->regmap, 0x17,
adv7511           764 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7533)
adv7511           765 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7533_mode_set(adv7511, adj_mode);
adv7511           767 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	drm_mode_copy(&adv7511->curr_mode, adj_mode);
adv7511           774 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->f_tmds = mode->clock;
adv7511           778 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static struct adv7511 *connector_to_adv7511(struct drm_connector *connector)
adv7511           780 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	return container_of(connector, struct adv7511, connector);
adv7511           785 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = connector_to_adv7511(connector);
adv7511           794 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = connector_to_adv7511(connector);
adv7511           807 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = connector_to_adv7511(connector);
adv7511           822 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static struct adv7511 *bridge_to_adv7511(struct drm_bridge *bridge)
adv7511           824 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	return container_of(bridge, struct adv7511, bridge);
adv7511           829 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = bridge_to_adv7511(bridge);
adv7511           836 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = bridge_to_adv7511(bridge);
adv7511           845 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = bridge_to_adv7511(bridge);
adv7511           852 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv = bridge_to_adv7511(bridge);
adv7511           915 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_init_regulators(struct adv7511 *adv)
adv7511           945 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static void adv7511_uninit_regulators(struct adv7511 *adv)
adv7511           953 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511 = i2c_get_clientdata(i2c);
adv7511           955 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7533)
adv7511           980 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c static int adv7511_init_cec_regmap(struct adv7511 *adv)
adv7511          1095 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511;
adv7511          1103 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511 = devm_kzalloc(dev, sizeof(*adv7511), GFP_KERNEL);
adv7511          1104 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (!adv7511)
adv7511          1107 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->i2c_main = i2c;
adv7511          1108 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->powered = false;
adv7511          1109 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->status = connector_status_disconnected;
adv7511          1112 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511->type = (enum adv7511_type)of_device_get_match_data(dev);
adv7511          1114 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511->type = id->driver_data;
adv7511          1118 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7511)
adv7511          1121 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = adv7533_parse_dt(dev->of_node, adv7511);
adv7511          1125 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = adv7511_init_regulators(adv7511);
adv7511          1135 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->gpio_pd = devm_gpiod_get_optional(dev, "pd", GPIOD_OUT_HIGH);
adv7511          1136 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (IS_ERR(adv7511->gpio_pd)) {
adv7511          1137 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = PTR_ERR(adv7511->gpio_pd);
adv7511          1141 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->gpio_pd) {
adv7511          1143 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		gpiod_set_value_cansleep(adv7511->gpio_pd, 0);
adv7511          1146 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->regmap = devm_regmap_init_i2c(i2c, &adv7511_regmap_config);
adv7511          1147 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (IS_ERR(adv7511->regmap)) {
adv7511          1148 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = PTR_ERR(adv7511->regmap);
adv7511          1152 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = regmap_read(adv7511->regmap, ADV7511_REG_CHIP_REVISION, &val);
adv7511          1157 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7511)
adv7511          1158 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = regmap_register_patch(adv7511->regmap,
adv7511          1162 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = adv7533_patch_registers(adv7511);
adv7511          1166 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_packet_disable(adv7511, 0xffff);
adv7511          1168 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->i2c_edid = i2c_new_ancillary_device(i2c, "edid",
adv7511          1170 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (IS_ERR(adv7511->i2c_edid)) {
adv7511          1171 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = PTR_ERR(adv7511->i2c_edid);
adv7511          1175 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_EDID_I2C_ADDR,
adv7511          1176 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		     adv7511->i2c_edid->addr << 1);
adv7511          1178 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->i2c_packet = i2c_new_ancillary_device(i2c, "packet",
adv7511          1180 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (IS_ERR(adv7511->i2c_packet)) {
adv7511          1181 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		ret = PTR_ERR(adv7511->i2c_packet);
adv7511          1185 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_PACKET_I2C_ADDR,
adv7511          1186 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		     adv7511->i2c_packet->addr << 1);
adv7511          1188 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = adv7511_init_cec_regmap(adv7511);
adv7511          1192 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	regmap_write(adv7511->regmap, ADV7511_REG_CEC_I2C_ADDR,
adv7511          1193 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		     adv7511->i2c_cec->addr << 1);
adv7511          1195 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	INIT_WORK(&adv7511->hpd_work, adv7511_hpd_work);
adv7511          1198 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		init_waitqueue_head(&adv7511->wq);
adv7511          1203 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 						adv7511);
adv7511          1208 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_power_off(adv7511);
adv7511          1210 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_set_clientdata(i2c, adv7511);
adv7511          1212 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7511)
adv7511          1213 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7511_set_link_config(adv7511, &link_config);
adv7511          1215 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	ret = adv7511_cec_init(dev, adv7511);
adv7511          1219 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->bridge.funcs = &adv7511_bridge_funcs;
adv7511          1220 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511->bridge.of_node = dev->of_node;
adv7511          1222 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	drm_bridge_add(&adv7511->bridge);
adv7511          1224 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_audio_init(dev, adv7511);
adv7511          1228 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_cec);
adv7511          1229 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->cec_clk)
adv7511          1230 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		clk_disable_unprepare(adv7511->cec_clk);
adv7511          1232 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_packet);
adv7511          1234 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_edid);
adv7511          1236 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_uninit_regulators(adv7511);
adv7511          1243 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	struct adv7511 *adv7511 = i2c_get_clientdata(i2c);
adv7511          1245 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->type == ADV7533)
adv7511          1246 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		adv7533_detach_dsi(adv7511);
adv7511          1247 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_cec);
adv7511          1248 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	if (adv7511->cec_clk)
adv7511          1249 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 		clk_disable_unprepare(adv7511->cec_clk);
adv7511          1251 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_uninit_regulators(adv7511);
adv7511          1253 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	drm_bridge_remove(&adv7511->bridge);
adv7511          1255 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	adv7511_audio_exit(adv7511);
adv7511          1257 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	cec_unregister_adapter(adv7511->cec_adap);
adv7511          1259 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_packet);
adv7511          1260 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 	i2c_unregister_device(adv7511->i2c_edid);
adv7511            27 drivers/gpu/drm/bridge/adv7511/adv7533.c static void adv7511_dsi_config_timing_gen(struct adv7511 *adv)
adv7511            66 drivers/gpu/drm/bridge/adv7511/adv7533.c void adv7533_dsi_power_on(struct adv7511 *adv)
adv7511            95 drivers/gpu/drm/bridge/adv7511/adv7533.c void adv7533_dsi_power_off(struct adv7511 *adv)
adv7511           103 drivers/gpu/drm/bridge/adv7511/adv7533.c void adv7533_mode_set(struct adv7511 *adv, const struct drm_display_mode *mode)
adv7511           125 drivers/gpu/drm/bridge/adv7511/adv7533.c int adv7533_patch_registers(struct adv7511 *adv)
adv7511           132 drivers/gpu/drm/bridge/adv7511/adv7533.c int adv7533_patch_cec_registers(struct adv7511 *adv)
adv7511           139 drivers/gpu/drm/bridge/adv7511/adv7533.c int adv7533_attach_dsi(struct adv7511 *adv)
adv7511           184 drivers/gpu/drm/bridge/adv7511/adv7533.c void adv7533_detach_dsi(struct adv7511 *adv)
adv7511           190 drivers/gpu/drm/bridge/adv7511/adv7533.c int adv7533_parse_dt(struct device_node *np, struct adv7511 *adv)