Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp46011pxb; Tue, 5 Oct 2021 22:54:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJypNdSBxVgUZ0DRhk6R47Oc1Ib1ZIKGp+kVuXDZhdQDfAtjm9AI064Pjn2xP5qRwfD/OaLV X-Received: by 2002:a05:6402:4d1:: with SMTP id n17mr32687788edw.337.1633499668635; Tue, 05 Oct 2021 22:54:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633499668; cv=none; d=google.com; s=arc-20160816; b=pYC2Q5VSCTvtI7XH5/hdrScWs1Fq5drqGTDQ8KksyGV0af1eh2525NNgiBqnusIPyX Fs5fmr+0dUfxHw9QIAbgCuflgJwGz2NnYcDs8KLljkk3osp4ntTyg5xDsg7BUzm84NlZ X52ec31xV9U9paTXkM9QfS/+5drtg6vZ8RBUblrb0yhyahFolAHtXCFtZ0lJQhWmBstX 9ObYhWivLIU/UhRvALZJvFj1XSJuuVXsMPL3TKxiW0o6+yRYZwgJ++bg5pvNOyxXsnh5 b2ILkJ4Lo8iL/uRArDMmYfp4V9VixrOYiin2FAU6SsDbh6rzhLcu5Dfl0Ac5p+D6P9MZ B6JQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=80RCzcIRuEUo90yPXncjK0r7SE9df66hfxrVl4wzzrE=; b=LnZEt+FikT2cjbb/UVqufAQ5GsjKXyAK+buPPQUh8mAp8CEPF/UmkBshr4KdI72R9N 3uR2V6W3J0JtM5TEvkF0pYOk6HE2RoM9g7+3rGtygQ/k4ij/13SEEi6Ci5E4lalZIxLT DaNuiV10A1blBBVUJr8o4Q9R3L86nO1NJRFafbINjG9esWt4c4ZmdIiNjzM4+IDnfHh1 Ul868kHUe8RzoqtlTdj2TD1ckOxUkMQfbONeDP8r6ajfbByGitTeQTfQJhn8oPAWdoZf MaixiwuJ7ooU+aq+pzI7AQS1xalrjw/4oIarWPZ21OvYq0HfZoNPbMFktfvIBhDws5QT XMxA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=piap.pl Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v1si13264449ejw.423.2021.10.05.22.54.04; Tue, 05 Oct 2021 22:54:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=piap.pl Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235105AbhJFFvl convert rfc822-to-8bit (ORCPT + 99 others); Wed, 6 Oct 2021 01:51:41 -0400 Received: from ni.piap.pl ([195.187.100.5]:44250 "EHLO ni.piap.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235061AbhJFFvl (ORCPT ); Wed, 6 Oct 2021 01:51:41 -0400 From: =?utf-8?Q?Krzysztof_Ha=C5=82asa?= To: Hans Verkuil Cc: Mauro Carvalho Chehab , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/2] Add ADV7610 support for adv7604 driver. Date: Wed, 06 Oct 2021 07:49:48 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ADV7610 is another HDMI receiver chip, very similar to the ADV7611. Also: print chip names in upper case. Fix an error message claiming that no ADV761x has been found, while in reality a chip different than requested (though still supported) may have been found. Tested on TinyRex BaseBoard Lite. Signed-off-by: Krzysztof Hałasa diff --git a/drivers/media/i2c/adv7604.c b/drivers/media/i2c/adv7604.c index 122e1fdccd96..4d7a19e6b8f1 100644 --- a/drivers/media/i2c/adv7604.c +++ b/drivers/media/i2c/adv7604.c @@ -41,7 +41,7 @@ static int debug; module_param(debug, int, 0644); MODULE_PARM_DESC(debug, "debug level (0-2)"); -MODULE_DESCRIPTION("Analog Devices ADV7604 video decoder driver"); +MODULE_DESCRIPTION("Analog Devices ADV7604/10/11/12 video decoder driver"); MODULE_AUTHOR("Hans Verkuil "); MODULE_AUTHOR("Mats Randgaard "); MODULE_LICENSE("GPL"); @@ -77,7 +77,7 @@ MODULE_LICENSE("GPL"); enum adv76xx_type { ADV7604, - ADV7611, + ADV7611, // including ADV7610 ADV7612, }; @@ -3176,6 +3176,7 @@ static const struct adv76xx_chip_info adv76xx_chip_info[] = { static const struct i2c_device_id adv76xx_i2c_id[] = { { "adv7604", (kernel_ulong_t)&adv76xx_chip_info[ADV7604] }, + { "adv7610", (kernel_ulong_t)&adv76xx_chip_info[ADV7611] }, { "adv7611", (kernel_ulong_t)&adv76xx_chip_info[ADV7611] }, { "adv7612", (kernel_ulong_t)&adv76xx_chip_info[ADV7612] }, { } @@ -3183,6 +3184,7 @@ static const struct i2c_device_id adv76xx_i2c_id[] = { MODULE_DEVICE_TABLE(i2c, adv76xx_i2c_id); static const struct of_device_id adv76xx_of_id[] __maybe_unused = { + { .compatible = "adi,adv7610", .data = &adv76xx_chip_info[ADV7611] }, { .compatible = "adi,adv7611", .data = &adv76xx_chip_info[ADV7611] }, { .compatible = "adi,adv7612", .data = &adv76xx_chip_info[ADV7612] }, { } @@ -3500,7 +3502,7 @@ static int adv76xx_probe(struct i2c_client *client, return -ENODEV; } if (val != 0x68) { - v4l2_err(sd, "not an adv7604 on address 0x%x\n", + v4l2_err(sd, "not an ADV7604 on address 0x%x\n", client->addr << 1); return -ENODEV; } @@ -3525,7 +3527,8 @@ static int adv76xx_probe(struct i2c_client *client, val |= val2; if ((state->info->type == ADV7611 && val != 0x2051) || (state->info->type == ADV7612 && val != 0x2041)) { - v4l2_err(sd, "not an adv761x on address 0x%x\n", + v4l2_err(sd, "not an %s on address 0x%x\n", + state->info->type == ADV7611 ? "ADV7610/11" : "ADV7612", client->addr << 1); return -ENODEV; } -- Krzysztof "Chris" Hałasa Sieć Badawcza Łukasiewicz Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa