From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Mon, 10 Dec 2018 10:37:30 -0700 Subject: [U-Boot] [PATCH v2 01/22] dm: sound: exynos: Correct codec bus addresses In-Reply-To: <20181210173751.177266-1-sjg@chromium.org> References: <20181210173751.177266-1-sjg@chromium.org> Message-ID: <20181210173751.177266-2-sjg@chromium.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de For snow the codec is at address 0x11 on the i2c bus, in 7-bit format. The device tree and code are in 8-bit format (i.e. shifted left one bit). Fix both. Fix pit in a similar way. Signed-off-by: Simon Glass --- Changes in v2: - Add fix for pit and pi also - Fix up tabs in this commit instead of the later one arch/arm/dts/exynos5250-snow.dts | 4 ++-- arch/arm/dts/exynos5420-peach-pit.dts | 8 ++++---- arch/arm/dts/exynos5800-peach-pi.dts | 8 ++++---- drivers/sound/max98095.c | 3 +-- 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/arch/arm/dts/exynos5250-snow.dts b/arch/arm/dts/exynos5250-snow.dts index e99f6e72bf6..cb5067b9669 100644 --- a/arch/arm/dts/exynos5250-snow.dts +++ b/arch/arm/dts/exynos5250-snow.dts @@ -214,8 +214,8 @@ }; }; - soundcodec at 22 { - reg = <0x22>; + soundcodec at 11 { + reg = <0x11>; compatible = "maxim,max98095-codec"; }; }; diff --git a/arch/arm/dts/exynos5420-peach-pit.dts b/arch/arm/dts/exynos5420-peach-pit.dts index c86f9d9035d..bd0a9c116d4 100644 --- a/arch/arm/dts/exynos5420-peach-pit.dts +++ b/arch/arm/dts/exynos5420-peach-pit.dts @@ -69,10 +69,10 @@ i2c at 12CD0000 { /* i2c7 */ clock-frequency = <100000>; - soundcodec at 20 { - reg = <0x20>; - compatible = "maxim,max98090-codec"; - }; + soundcodec at 10 { + reg = <0x10>; + compatible = "maxim,max98090-codec"; + }; edp-lvds-bridge at 48 { compatible = "parade,ps8625"; diff --git a/arch/arm/dts/exynos5800-peach-pi.dts b/arch/arm/dts/exynos5800-peach-pi.dts index 7498519d6c6..239781b34bb 100644 --- a/arch/arm/dts/exynos5800-peach-pi.dts +++ b/arch/arm/dts/exynos5800-peach-pi.dts @@ -81,10 +81,10 @@ i2c at 12CD0000 { /* i2c7 */ clock-frequency = <100000>; - soundcodec at 20 { - reg = <0x20>; - compatible = "maxim,max98090-codec"; - }; + soundcodec at 10 { + reg = <0x10>; + compatible = "maxim,max98090-codec"; + }; }; sound at 3830000 { diff --git a/drivers/sound/max98095.c b/drivers/sound/max98095.c index 6a98dac04bb..7a3dbd09840 100644 --- a/drivers/sound/max98095.c +++ b/drivers/sound/max98095.c @@ -569,8 +569,7 @@ int max98095_init(const void *blob, enum en_max_audio_interface aif_id, i2c_set_bus_num(pcodec_info.i2c_bus); - /* shift the device address by 1 for 7 bit addressing */ - max98095_info.i2c_addr = pcodec_info.i2c_dev_addr >> 1; + max98095_info.i2c_addr = pcodec_info.i2c_dev_addr; ret = max98095_device_init(&max98095_info); if (ret < 0) { debug("%s: max98095 codec chip init failed\n", __func__); -- 2.20.0.rc2.403.gdbc3b29805-goog