From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D3B5CC77B73 for ; Sun, 23 Apr 2023 09:19:51 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D9FA785DA2; Sun, 23 Apr 2023 11:19:48 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="KcB/TJCv"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id C304285DA6; Sun, 23 Apr 2023 11:19:46 +0200 (CEST) Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 63CBD85D95 for ; Sun, 23 Apr 2023 11:19:44 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=jbx6244@gmail.com Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-504eb1155d3so24592223a12.1 for ; Sun, 23 Apr 2023 02:19:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1682241584; x=1684833584; h=content-transfer-encoding:in-reply-to:content-language:references :cc:to:subject:from:user-agent:mime-version:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=LtK3gkbWianpsTcliu31/0k7NSTUlEEwloob3SVfd8Y=; b=KcB/TJCvI04TIkQ8A3mqM3+UVrULgk3YDPdoUoNktU8uTo/keV9yXFWAdL0Kw7Spij 6Y2smrak3cKQ0xRDUyCd6LHGHvNllSaGiPFZhOXL+Tom7LqpTuADYeA/sC/Cg1iY0G+s lEqgP5M4/p7sVSxZsy0r6P4ErVLf2LrwZ8C7Ww6UFq76nRsC1+CTulysD4l7w7alfR2m Bfmz2bE8SHHD4aErHbNmnewezEwfvCG4++eBPpj+oK+LEfCcJ2xsBibO90RTkLgurRln 14D1j8Xd+XbDkJPlMgT/+oNKiUWoweJEIjZwgM+DpAMBK5D4kBUAAmwaXNNopQVf85RM y4eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682241584; x=1684833584; h=content-transfer-encoding:in-reply-to:content-language:references :cc:to:subject:from:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=LtK3gkbWianpsTcliu31/0k7NSTUlEEwloob3SVfd8Y=; b=DXm7XXklkYr3rUEBElP+nd21z7O82Dw5ps4tmtlaJKJhzBVZfAyY9sVjTYZKg59D2J B1cDbdUkX+3rKZPCrTFxiByGE2padFoj4+qDRNcUTe070SdIiOjT5LeeGxSTF6hCHAWA kOPVgu7WsO1T1+inIVm6thW/yVgIS3GeRhid5dLHlOreztktstbDhvKBCH+wZK0nEH6H /HdJQBTxjSiCKK/qwrM+l4GIswo+4k2q5jIGQRPFk7Goqj0iU/SbYV9vtffpjjhR3rT0 iUb+u0Sux8MOMfvwP6cRrqNSiXZYzyesHpjK2WYFAY71ZkgNxQw2I5ydt6+PVH8cim0w Hb1Q== X-Gm-Message-State: AAQBX9fqlXltoqir95h1puSi0VH/7WXmTiWTVwsL1vgwkV6WADlc8oS6 pf7wAdxa8zGxKx4YnJBK6gkjAbeQSzw= X-Google-Smtp-Source: AKy350aSfUQShkmTXcAZt4kYYSoHr+V1wuiwR+clRhx4mnHkZp8XiJUDsOyx+kHdDmw9IM8vh/RCRQ== X-Received: by 2002:a05:6402:1d48:b0:506:94db:f4fb with SMTP id dz8-20020a0564021d4800b0050694dbf4fbmr12828425edb.20.1682241583377; Sun, 23 Apr 2023 02:19:43 -0700 (PDT) Received: from [192.168.2.1] (81-204-249-205.fixed.kpn.net. [81.204.249.205]) by smtp.gmail.com with ESMTPSA id h6-20020aa7c606000000b005068ea7f54dsm3562537edq.96.2023.04.23.02.19.42 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 23 Apr 2023 02:19:43 -0700 (PDT) Message-ID: <4990a11d-638f-661d-a7c0-e0c5bf7ff863@gmail.com> Date: Sun, 23 Apr 2023 11:19:41 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 From: Johan Jonker Subject: [PATCH v9] core: fdtaddr: use map_sysmem() as cast for the return To: dario.binacchi@amarulasolutions.com, michael@amarulasolutions.com, sjg@chromium.org, philipp.tomsich@vrull.eu, kever.yang@rock-chips.com Cc: u-boot@lists.denx.de, yifeng.zhao@rock-chips.com References: <482794b2-ee7b-6919-cc2c-014c1e2e908f@rock-chips.com> Content-Language: en-US In-Reply-To: <482794b2-ee7b-6919-cc2c-014c1e2e908f@rock-chips.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.8 at phobos.denx.de X-Virus-Status: Clean For the devfdt_get_addr_index_ptr() and devfdt_get_addr_size_index_ptr() function use map_sysmem() function as cast for the return for use in sandbox. Also fix sandbox test. Signed-off-by: Johan Jonker --- Apply after: [PATCH v8 00/24] Fixes for Rockchip NFC driver part 1 with replacement: [PATCH v9] core: fdtaddr: add devfdt_get_addr_size_index_ptr function --- Changed V9: New patch. Split use of map_sysmem() from previous series. --- drivers/core/fdtaddr.c | 11 +++++++++-- test/dm/test-fdt.c | 5 ++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/drivers/core/fdtaddr.c b/drivers/core/fdtaddr.c index f5906ff9..546db675 100644 --- a/drivers/core/fdtaddr.c +++ b/drivers/core/fdtaddr.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -97,7 +98,10 @@ void *devfdt_get_addr_index_ptr(const struct udevice *dev, int index) { fdt_addr_t addr = devfdt_get_addr_index(dev, index); - return (addr == FDT_ADDR_T_NONE) ? NULL : (void *)(uintptr_t)addr; + if (addr == FDT_ADDR_T_NONE) + return NULL; + + return map_sysmem(addr, 0); } fdt_addr_t devfdt_get_addr_size_index(const struct udevice *dev, int index, @@ -127,7 +131,10 @@ void *devfdt_get_addr_size_index_ptr(const struct udevice *dev, int index, { fdt_addr_t addr = devfdt_get_addr_size_index(dev, index, size); - return (addr == FDT_ADDR_T_NONE) ? NULL : (void *)(uintptr_t)addr; + if (addr == FDT_ADDR_T_NONE) + return NULL; + + return map_sysmem(addr, 0); } fdt_addr_t devfdt_get_addr_name(const struct udevice *dev, const char *name) diff --git a/test/dm/test-fdt.c b/test/dm/test-fdt.c index 8e6e42e4..eeecd1dc 100644 --- a/test/dm/test-fdt.c +++ b/test/dm/test-fdt.c @@ -617,6 +617,7 @@ static int dm_test_fdt_get_addr_ptr_flat(struct unit_test_state *uts) { struct udevice *gpio, *dev; void *ptr; + void *paddr; /* Test for missing reg property */ ut_assertok(uclass_first_device_err(UCLASS_GPIO, &gpio)); @@ -624,7 +625,9 @@ static int dm_test_fdt_get_addr_ptr_flat(struct unit_test_state *uts) ut_assertok(uclass_find_device_by_seq(UCLASS_TEST_DUMMY, 0, &dev)); ptr = devfdt_get_addr_ptr(dev); - ut_asserteq_ptr((void *)0x8000, ptr); + + paddr = map_sysmem(0x8000, 0); + ut_asserteq_ptr(paddr, ptr); return 0; } -- 2.20.1