Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp1042422pxv; Thu, 15 Jul 2021 23:44:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxrDB830Lermv1V4XDwV2kD71awBb4tfN+DdqdWgwk/hSYkGPvD0uuDUlbW59jbS7hEpaZT X-Received: by 2002:a05:6e02:550:: with SMTP id i16mr5286664ils.207.1626417848294; Thu, 15 Jul 2021 23:44:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626417848; cv=none; d=google.com; s=arc-20160816; b=qavsGpqm8oz3iupMsPbWkGWumSwf8JeG+CmhqCVv+nPL9Or/Rs2qCLG2e1izVT2u3m sHsYShf3ltOQ9KRCts+bBlWbOG4/r1TR6uqLCJjU5xFsSAseb0XFVAiQw2ir65Knbhdm jLzzEXfyDsZ11EKdm+xqBDgMx6TCQ0A1Ndjs+4wNxGKMQXm1za6U6a3HWq6TO6EWpa23 lYA9FLuYq9pIue3tOGaSMPDDVlzfFgTWeYQ9VqhLh2vTAJERgA5zqdTvZCLtP+V94kMr CbvWM5uf+vqFmnXHHAliqRXvVzDkHfoTMdx/nwa0EBzZ9HXSn4cHmwwEJ4DvPjMfZlzJ H7JA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:subject:message-id:date:from:mime-version :dkim-signature; bh=O5Zke66uI5LxZVkYWI95Tx+J3KNQ1bPBIGGmEE1oiJQ=; b=ORaJtF8QkxQu3oOaHCsC2AglPaUV+ww2Gw40k1KDKc7idZUVuW0LhmbJ39gbpmSSxy KcPjoRzlIuTFe+lIGcvRwRuK4lt3N2gmigEvT2fY2dNDGYKQX7kxqlGfye4AoNK2LMvQ TyB48HSyT520/wj6V/equvw85p7x1xrdq07iAbxdtVJI3P1uKr+L+0IFCg5+BO36TCeJ J8oxH4YhiSA9Zcm1/xrsyAlJ7Z9qtBIhEFDDyhUmidwBqoJ7C4mH8SU5Z3PtPKWAyNnL i60rtaR1kTGDL3qMT6t67LwcTyFofmCq4hNbdlLi3rdpwv4RMlj7yqzDw3EZTjryhPjj Thwg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=Zt8Vy0wA; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q5si9749430jaj.40.2021.07.15.23.43.55; Thu, 15 Jul 2021 23:44:08 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=Zt8Vy0wA; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235198AbhGPGps (ORCPT + 99 others); Fri, 16 Jul 2021 02:45:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48382 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234855AbhGPGps (ORCPT ); Fri, 16 Jul 2021 02:45:48 -0400 Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 130E6C06175F; Thu, 15 Jul 2021 23:42:54 -0700 (PDT) Received: by mail-ed1-x52a.google.com with SMTP id h8so11575466eds.4; Thu, 15 Jul 2021 23:42:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=O5Zke66uI5LxZVkYWI95Tx+J3KNQ1bPBIGGmEE1oiJQ=; b=Zt8Vy0wAGBl/en8Xn9uzslyZHwSzjc1/gs/urvGIcRN9UWRy8/ZTbccFU1C7yY0/5Q axNSq7qTb4vh3bdcGoQ2ZVaY6LIsu0SdU5aB5RZGRBXe3+dIktx0R6ZiyiYpVGWC6hpY PrgwhbedATfheNR8ZKHjs/nYUokDMq+wmPjPMhMJhCSL9vwVx4bxSiTm+Ky6kFfOFo60 J3RaSxMWubWBhbS6IkggABuT9FpMSN1c25AWbQTYy1qfUEZ4BEBH01fc2x44agUT4QAT dobKSzXd32r7LZh/EfpSdyUHSC/lxahmD2V0s/lnF0DLX6Qv8dBl8rkKFYZl++u3BjTp A+XQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=O5Zke66uI5LxZVkYWI95Tx+J3KNQ1bPBIGGmEE1oiJQ=; b=ncGTtNBBEATaCs/1lSaZILPPfPz+4LKfS/Cu/1qyLfcbj4XGx5oZH8E9HnF73XgUyN NWakxswAuWOqw/vZ6HhlpCpZ0mtfFZJUrtMRo36w4rfRg/tnYY3YumK/09qRUFlVJdF+ oWEMjKiaWr6OWSDsfMzQObPsANuiu95ZQwI/xXIhc15KkIL/sNKze0uOYxrqrXKwpvwC 6qkIaGf9z7M77tBKZFUGNnH6WTMR3dwkEehwEXNWsuhNhwsLao9ho2D/qMaCFFkZYtUj Jv+QrtY+HoibEnWiI/rmoTt6hecV5T/9pBXFiMpDGBVvBjxe9n2acIet4+zKFpMIsKTS PCJg== X-Gm-Message-State: AOAM531q0LArk+4ThWKT+WFaCmat+MHAuozb79kP4cwnV7dnCpDUgFhp gKZ+wrHXuo/sn9A35uJ8vO6/tmHjCwTERvjq0jpLnrB7 X-Received: by 2002:aa7:dbc3:: with SMTP id v3mr12670927edt.63.1626417772479; Thu, 15 Jul 2021 23:42:52 -0700 (PDT) MIME-Version: 1.0 From: Pintu Agarwal Date: Fri, 16 Jul 2021 12:12:41 +0530 Message-ID: Subject: MTD: How to get actual image size from MTD partition To: open list , linux-mtd , linux-fsdevel , Phillip Lougher , Sean Nyekjaer , Kernelnewbies , Richard Weinberger Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Our ARM32 Linux embedded system consists of these: * Linux Kernel: 4.14 * Processor: Qualcomm Arm32 Cortex-A7 * Storage: NAND 512MB * Platform: Simple busybox * Filesystem: UBIFS, Squashfs * Consists of nand raw partitions, squashfs ubi volumes. My requirement: To find the checksum of a real image in runtime which is flashed in an MTD partition. Problem: Currently, to find the checksum, we are using: $ md5sum /dev/mtd14 This returns the proper checksum of the entire partition. But we wanted to find the checksum only for the actual image data which will be used by our C utility to validate the image. Here, we don't know the actual image size. We only know the "partition-size" and "erasesize". So, is there a mechanism to somehow find the image size at runtime? Regards, Pintu