From patchwork Tue Jun 7 07:28:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 2010 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-io1-f72.google.com (mail-io1-f72.google.com [209.85.166.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 822CF3F066 for ; Tue, 7 Jun 2022 09:29:42 +0200 (CEST) Received: by mail-io1-f72.google.com with SMTP id 204-20020a6b01d5000000b006691eeb4828sf5070053iob.4 for ; Tue, 07 Jun 2022 00:29:42 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1654586981; cv=pass; d=google.com; s=arc-20160816; b=Qno3GxNsNJFmknoukSLLXx5sLrEwM2L2KtQDwccZ47hBKXSYH55vxoY1MJ/Ky383wf brOSF+PqdQcTCQqbcnO9ipqU1MIeioBSXbxviTwarbEBS4zGaOb90/b6cDtNjbZn6LwR JFpABanRPPDFq0OIRtntRPQGqdz/P7Z5guC13Rp6JCxs/CvgVoR/ZGD/yXO2x0yjjhsz uqWF0RcDT3Am7eH+TG0lM8KzOSsr3ySVY6uUualt1a3KzHkyGsztj0cle439KJoptaAx TTCZrMrnQmKT4d7j56v1IPn/Nd9bg+I79GQfjMrdrFyA+hmovSgFHRIgTp5K729VncHF o4fA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=1szF4S1AJoNmkJgRnSwCdtkhMMnh+KRIipcOVe7u22g=; b=VTkT6Pj8cipJJaBnW14cnDoMfvdVEwJL6kmK11icDFyF8ds1XRze5Gk990Q+RBj/ag /UE6VmJdPh67gr0adn1NRTDRTfSjJJUZgfBzucpc9wCNeZY5kbvlGtSIyW2HKnd5T9Gj ZHsGzheAyju7JKMqaOFzPGAAFogSFNAB/QkGadsiVhlx0wFyR8E7jWTS92zI86rDOzgP caaI5I6i3t4ZDwvuibgXbROv6oQjF8Shos+xfSw1ZJv1Yp13AKUyd1D3T+LVGBJ7IPFu Ls4JwatVCkucsmdmKs37zRkMrxZ9BWugkp9faYe9wLsh0egpSo8S5/mFmJ0CiGIkWvSx imqw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=r1bFHFc+; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:x-original-sender:x-original-authentication-results :precedence:mailing-list:list-id:list-post:list-help:list-archive :list-unsubscribe; bh=1szF4S1AJoNmkJgRnSwCdtkhMMnh+KRIipcOVe7u22g=; b=GGvjzAW5OEw9YHU2BZULGE5bDbKr8xDBf7Q1GdVa61z1/L9dQ6HKqUhjDkudLb9FsU VG+LO43+KSAWom0b8i8fq7exccPvoj1UO+COZhbzZuMQatvWyTDzJcVzt7godyE1pLdZ DPmOnmIyR+dZXyfO4TiDc8lwLdW17yglkx/gA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-spam-checked-in-group:list-post:list-help:list-archive :list-unsubscribe; bh=1szF4S1AJoNmkJgRnSwCdtkhMMnh+KRIipcOVe7u22g=; b=cD8JGdYdrkOW0ZfFNIsbsVIeGPcFpafKb1RhuXz+VblHMetL5ncgfBu4jrwqwqp3KZ iY6o1ckE0UuB/j8Tx8oyWsKFTXUpTAxFAOlm0/PYnknl3NzlPqCAOw4LiDyslhh1PNOS NK97TWLTOjziwd8AI592O69F83aJ3idS6akI0hVIMCzCnBM0fnK7m7Y//2zIS3KPgLhL tXH0mnzoqRP1vcXY5/bTYsjgtejTBT+JL9XYD1MHPwOSqGPzrHMuOOhX2LMk9i5jfiTf nbBcpj5dv4cTHTfwB6YQhlFyWDhYHhwjd+yDuV3rrhHn6u+MOaPLEQS6WjTn06JBi5RH Ok7w== X-Gm-Message-State: AOAM530dc2v1+HoCRNZlJXTs2Rg41vrUiQ65JUkivivFTUS8HIaK0Eci X1o8OxEiLfC5kdAvB8hci/ZlL3jc X-Google-Smtp-Source: ABdhPJyyZUi/hw1WtCKnfLVBm/A5K8JABfKDXzrAIzlRrE76SsJTt/dAH8YE8UNvywKV3XO2BantrQ== X-Received: by 2002:a92:ca08:0:b0:2d3:c490:40c3 with SMTP id j8-20020a92ca08000000b002d3c49040c3mr16437045ils.167.1654586981354; Tue, 07 Jun 2022 00:29:41 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a92:db0e:0:b0:2d3:f198:9f2f with SMTP id b14-20020a92db0e000000b002d3f1989f2fls1856491iln.7.gmail; Tue, 07 Jun 2022 00:29:41 -0700 (PDT) X-Received: by 2002:a05:6e02:12ce:b0:2d3:de67:9f96 with SMTP id i14-20020a056e0212ce00b002d3de679f96mr17009932ilm.261.1654586980807; Tue, 07 Jun 2022 00:29:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654586980; cv=none; d=google.com; s=arc-20160816; b=Nvtm6N8aHtz4kx1ho7J9fNM/zLKMiJzYuAji0YVX5NME1OLGbyTQxvrGlBV5MQP+sH B56ncCKqBwQ5JJRElsEBdPySRjjUY0QeVqlcZXWhTr7ZOTQRenG/8rt55xFV5ncCbXLH paBDLXMlsMIzbrt/j/3pqgvChYoBL+FI6o8+T5JJNFEWcS8RipLellnFHLTHwBDba5pi NIhpU2k9TRtJcslJiMmZQK44sSara3Gt4g2uaeMlhSa1nkVK3K/LcYN6CKVmku7G4+uR AQtNxaTFSK9v+UKKD/Sm8AUtue87Em5zrUyXFlFngSm+hC556n3CdSowvX2O6xmqf33a 2O/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=00PWmn+vANRojH3SjoSaEkiMQgL16pyGYJEG2Tk1MyQ=; b=W/buXOV/T3CNZS6huGkLpsqr8oImMrz35p+Ui4AJIqBBD/dgEWBOVWSxecS/aPDc8j sETZ+RDhdRNV5kVW10iARC5HFNVd7irGn4IsmCB13SlfTVqLhQQNq133WknkN5yqGGdA /7EWlFFWdBoG/CH/IUUfkNNgM1QrJG2lyq5Ytxly1zaH0Snv9aU79QP19E8lcGAIx3t6 eoWdggFHoIqvtK7j8sxNv06aleUBpt6C2voYUxoTkLcfyuElLaB3ck4W02j7c6QUQ6Rv +sia1gZS3009dsTiS5uIgBone3d9izsXE9hFGFN5Z3LHLWPnjfjs5nAgqDpVpsbVkj/e 1y+Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=r1bFHFc+; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id ca19-20020a0566381c1300b00331b5fe8a5csor1954518jab.66.2022.06.07.00.29.40 for (Google Transport Security); Tue, 07 Jun 2022 00:29:40 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Received: by 2002:a02:84ac:0:b0:32b:a11b:4586 with SMTP id f41-20020a0284ac000000b0032ba11b4586mr14827328jai.231.1654586980522; Tue, 07 Jun 2022 00:29:40 -0700 (PDT) Received: from dario-ThinkPad-T14s-Gen-2i.pdxnet.pdxeng.ch (host-80-116-90-174.retail.telecomitalia.it. [80.116.90.174]) by smtp.gmail.com with ESMTPSA id cx4-20020a056638490400b0033126faae3asm6406075jab.116.2022.06.07.00.29.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jun 2022 00:29:39 -0700 (PDT) From: Dario Binacchi To: buildroot@buildroot.org Cc: Arnout Vandecappelle , linux-amarula@amarulasolutions.com, dario.binacchi@amarulasolutions.com, michael@amarulasolutions.com, Samuel Martin , Ariel D'Alessandro , Giulio Benetti , Heiko Thiery , Jagan Teki Subject: [PATCH 1/3] package/uuu: new package Date: Tue, 7 Jun 2022 09:28:50 +0200 Message-Id: <20220607072852.1007185-2-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> References: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=r1bFHFc+; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , UUU (Universal Update Utility) is a Freescale/NXP I.MX Chip image deploy tools. It is an evolution of MFGTools (aka MFGTools v3). For this and for backward compatibility we have created a new package instead of updating the mfgtools package. Signed-off-by: Dario Binacchi --- DEVELOPERS | 3 +++ package/Config.in.host | 1 + package/uuu/Config.in.host | 18 ++++++++++++++++++ package/uuu/readme.txt | 13 +++++++++++++ package/uuu/uuu.hash | 4 ++++ package/uuu/uuu.mk | 19 +++++++++++++++++++ 6 files changed, 58 insertions(+) create mode 100644 package/uuu/Config.in.host create mode 100644 package/uuu/readme.txt create mode 100644 package/uuu/uuu.hash create mode 100644 package/uuu/uuu.mk diff --git a/DEVELOPERS b/DEVELOPERS index aa18de83bcb6..60fa58ab35d6 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -650,6 +650,9 @@ F: package/lua-cjson/ F: package/luaexpat/ F: package/xinetd/ +N: Dario Binacchi +F: package/uuu/ + N: Dario Binacchi F: package/davinci-bootcount/ F: package/libmnl/ diff --git a/package/Config.in.host b/package/Config.in.host index cd1c34b5a3d9..d00547d324a5 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -96,6 +96,7 @@ menu "Host utilities" source "package/uboot-tools/Config.in.host" source "package/util-linux/Config.in.host" source "package/utp_com/Config.in.host" + source "package/uuu/Config.in.host" source "package/vboot-utils/Config.in.host" source "package/xorriso/Config.in.host" source "package/zip/Config.in.host" diff --git a/package/uuu/Config.in.host b/package/uuu/Config.in.host new file mode 100644 index 000000000000..017e37517d0e --- /dev/null +++ b/package/uuu/Config.in.host @@ -0,0 +1,18 @@ +config BR2_PACKAGE_HOST_UUU + bool "host uuu" + depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb + help + UUU (Universal Update Utility) is Freescale/NXP I.MX Chip + image deploy tool. UUU is an evolution of MFGTools + (aka MFGTools v3). + + To be able to run uuu without root privileges, execute the + following steps: + + sudo sh -c "uuu -udev >> /etc/udev/rules.d/70-uuu.rules" + sudo udevadm control --reload + + https://github.com/NXPmicro/mfgtools + +comment "host uuu needs a toolchain w/ host gcc >= 4.9" + depends on !BR2_HOST_GCC_AT_LEAST_4_9 diff --git a/package/uuu/readme.txt b/package/uuu/readme.txt new file mode 100644 index 000000000000..80dd90b93384 --- /dev/null +++ b/package/uuu/readme.txt @@ -0,0 +1,13 @@ +uuu Howto +========= + +Running uuu without root privileges +----------------------------------- + +Accessing USB devices on Linux requires root privileges by default. +To be able to run uuu without root priviles, execute the following +steps: + + sudo sh -c "uuu -udev >> /etc/udev/rules.d/70-uuu.rules" + sudo udevadm control --reload + diff --git a/package/uuu/uuu.hash b/package/uuu/uuu.hash new file mode 100644 index 000000000000..10efff0337a1 --- /dev/null +++ b/package/uuu/uuu.hash @@ -0,0 +1,4 @@ +# locally computed +sha256 4fda8db488c4d3a98c2480c47b41907ad26b714c6400dd0a202baab4c17b0a9b uuu-1.4.193.tar.gz +sha256 cc8d47f7b9260f6669ecd41c24554c552f17581d81ee8fc602c6d23edb8bf495 LICENSE +sha256 77b90738ae98b7958d34d9f96caf2671210a133427f8f6b784914b54f406c29b README.md diff --git a/package/uuu/uuu.mk b/package/uuu/uuu.mk new file mode 100644 index 000000000000..550c42af8d86 --- /dev/null +++ b/package/uuu/uuu.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# uuu +# +################################################################################ + +UUU_VERSION = 1.4.193 +UUU_SITE = $(call github,NXPmicro,mfgtools,uuu_$(UUU_VERSION)) +UUU_LICENSE = BSD 3-Clause "New" or "Revised" License +UUU_LICENSE_FILES = LICENSE README.md +HOST_UUU_DEPENDENCIES = host-bzip2 host-zlib host-libusb + +define SET_VERSION + echo $(UUU_VERSION) > $(@D)/.tarball-version +endef + +HOST_UUU_POST_EXTRACT_HOOKS += SET_VERSION + +$(eval $(host-cmake-package)) From patchwork Tue Jun 7 07:28:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 2011 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-io1-f71.google.com (mail-io1-f71.google.com [209.85.166.71]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 38D473F066 for ; Tue, 7 Jun 2022 09:29:50 +0200 (CEST) Received: by mail-io1-f71.google.com with SMTP id s145-20020a6b2c97000000b006692e678769sf3916543ios.21 for ; Tue, 07 Jun 2022 00:29:50 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1654586989; cv=pass; d=google.com; s=arc-20160816; b=VYjMVYqmKOYCm868XnJIQ6bUZGidm8Ie/Nn5SILIPbhQ8eFg4AZpxPUQD4JdzeIgHP c8A/8Cyb+PynjPeyVjK3Zto7LDPSHc65ui6hqKUUOkYOPUpD2zGPhmOcVW3omig+7tko xi4QTNw+S2aLDaqgn8q6mldMfvmFh5/7kua4fiHk3Q8CuGtZXGU/q4nirAAlii12Fu/5 kDlFaJhNS59IjQmrIz/etNHWkmN8CfZfWK32s7K1HnC43f170jxEQeZCpycsDzVbgqHp HO5WHJZRaIQiUecxqp9yYgGSfzCdQK2cJKseISWFLjfdDzT0blZxZTj8X7uYTLs0pB3O snCA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=mj16IsGvC95yoV68/D/SXIbtJxZf7yzjRcOSZCYn6kY=; b=Z4c4nQeMM/KPHat8yvaeQa35ohVFuPTMcuP0X0iR2KFl9m/izkq8jHbEVn2QTJ0RIE rG7iOKvQAequPE+sYyDNO8TnPz84pfm7x8B1yeJzYK6hxEDuTXGyS4Lru7NWGx6PWsdt kupxBPE78I0qL15UosANt/ad/VqnMTzgwmZ+f6I97UAu/lW6nz25IcBU03Qz8mXQ+BJf 52IQI6tfaQKReBABvfQp6vk1cIG+MFvBBi1jlvPW3RYh1OZvtH3QNKSPf69nrFlHWpUJ GgM4/tiGt1uVx2fPgdqU9OXePIOhMX46LLvAy/oyuCU6c8AXqAPgf796H0v3F9OZqIBs sb2w== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=BkyoDnAk; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :list-post:list-help:list-archive:list-unsubscribe; bh=mj16IsGvC95yoV68/D/SXIbtJxZf7yzjRcOSZCYn6kY=; b=K6QppLBualM4UWjpwGHU89VPfUGDlTygXQdtkBaOWfppnd8AnewH45KKiaB94aYOul PX4PN8x1VonQIFNPf8wSMPxGhOc5/rw9MSvQ+/BfNUXodYCEpfNw/IJWEtBF35UQiY0J +J4yGXxHmNEL9j6FUDDj3tUmZZXpIFIqoBtdc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-spam-checked-in-group:list-post:list-help:list-archive :list-unsubscribe; bh=mj16IsGvC95yoV68/D/SXIbtJxZf7yzjRcOSZCYn6kY=; b=SSbPggOX74ggXafJU+4xYImLp1ZltB8XgVFNiu6qc/WygtsqlPELAv/Bdqfd00XN3T CK8vWVrU3zsRwjOmyOcgWPelFZunSsorb/3IMMY48Qb0dmScJQ+Y3+JL5hOqzoq6HxW6 j5iu9WnrMlDzx+qLr8sJwtWXNv6URK0bcWQCL6cloq4/diUS6SXyQ05ETwKp7/+BmB7H n4mxhVlUKMdebTXCM0DRaikrxFWhCUfK/cYCy6hYYzIeAf5VCzpASHBRRbclTgAkcBrX NrT+Tci4LgnjayDT0zipyxiYRfB+WBGFA3obQKph0MBuVdMCpjf6pG87j7noU7e8JnAa sqSg== X-Gm-Message-State: AOAM532Gk+cC28+9lghvQI25iIIoaEjjRz121awJzcPLiIUif1MzV81Z gM8FgW1cQvRQAKifxY7LeN+26F1D X-Google-Smtp-Source: ABdhPJzEQJpdagfSbPuEhXVV5cjXR9hqxxIq1YZkqrG6dU1eydN38xm8R5FwqUTtOlZA2sgBNehNSg== X-Received: by 2002:a05:6e02:168f:b0:2d3:c51d:7f69 with SMTP id f15-20020a056e02168f00b002d3c51d7f69mr15850542ila.64.1654586989093; Tue, 07 Jun 2022 00:29:49 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a05:6602:3994:b0:665:6ea0:968c with SMTP id bw20-20020a056602399400b006656ea0968cls1058407iob.8.gmail; Tue, 07 Jun 2022 00:29:48 -0700 (PDT) X-Received: by 2002:a05:6602:2cc6:b0:665:6ed0:4975 with SMTP id j6-20020a0566022cc600b006656ed04975mr13062085iow.86.1654586988444; Tue, 07 Jun 2022 00:29:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654586988; cv=none; d=google.com; s=arc-20160816; b=pahjcWdn9PfDSfLYLOct2QhczoHZulBF4IxRvMwo45531w+Z4PnsyD4QGlX8lwWS8S TsbNNw5aXEPfBV0bIuQ25yaK63aTSuMljAp8008eVVrGbbIqL/wtNizBth68YidiTVzt C/vkJh15IOmcRpzg9IF2WnqLRByrvWhD+0AiYfhAwrbzfe9fyIusTH/KpNeMYUxZLn4k f1rHhp0mEefUcrkYnYusWfNS2lFBGNNuFXlAMYEgCWP3GHD9h/7JdVsxCpI/iQxOrdG/ 6ZB/OCEy34nhQ4eHh+mkqphoxVMFUOwEIkvPeeJy4GkfSPhkvU+yb6JTJ44LPc2aDBA7 ospw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=ZNf0eJH5QNV0Vpyzw484x2ZfYg4RKSMPkEDXTKswoX4=; b=mAJQaWGHmCSVjU/t38V5lN+VOzuzRTJL4ya65Zv2tX1bvQ8RpT6eM3ssrCkoqEN670 JfD9RDPND1KD1HSJHgMQUcPTpjraclefjHT1p2E47PAeVoNicRn6A7Cnq0V2RMv0xXbV ZTbaORfA83J1On2rohz4+GKuBMtSyedqsy9AUn4JgU6umMAM9hIQn32Xr0aWbSwEQYu4 UBN/bB5MBizhKVgob3gJHlCiwhbMGdwBnoDerqUsBYfFonVBYhUa7VF2YSbOch4L6/GL xWG/kx1bzN4LnA0pj1+U4llBKzn7lI12Tkzet4NRwsWQUWGGzCNuvkgypswhy08xHAP1 N2Gg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=BkyoDnAk; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id az15-20020a056638418f00b003317876ff4esor4523967jab.33.2022.06.07.00.29.48 for (Google Transport Security); Tue, 07 Jun 2022 00:29:48 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Received: by 2002:a05:6638:1383:b0:330:ed1f:d246 with SMTP id w3-20020a056638138300b00330ed1fd246mr15931888jad.286.1654586986312; Tue, 07 Jun 2022 00:29:46 -0700 (PDT) Received: from dario-ThinkPad-T14s-Gen-2i.pdxnet.pdxeng.ch (host-80-116-90-174.retail.telecomitalia.it. [80.116.90.174]) by smtp.gmail.com with ESMTPSA id cx4-20020a056638490400b0033126faae3asm6406075jab.116.2022.06.07.00.29.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jun 2022 00:29:45 -0700 (PDT) From: Dario Binacchi To: buildroot@buildroot.org Cc: Arnout Vandecappelle , linux-amarula@amarulasolutions.com, dario.binacchi@amarulasolutions.com, michael@amarulasolutions.com, Samuel Martin , Ariel D'Alessandro , Giulio Benetti , Heiko Thiery , Jagan Teki Subject: [PATCH 2/3] board/bsh: add support for iMX8MN BSH SMM S2 board Date: Tue, 7 Jun 2022 09:28:51 +0200 Message-Id: <20220607072852.1007185-3-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> References: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=BkyoDnAk; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , BSH SMM S2 (SystemMaster S2) Board is an add-on board which provide input and output interfaces to a dedicated carrier board. It is designed mainly to provide graphical/video and connectivity interfaces to the appliance. Board support package includes the following components: - mainline Linux kernel 5.18 - mainline U-Boot 2022-07-rc2 - default packages from buildroot Patches applied to the Linux kernel and U-Boot have been submitted but not merged yet. Michael Trimarchi has been added as co-maintainer. Co-developed-by: Michael Trimarchi Signed-off-by: Michael Trimarchi Signed-off-by: Dario Binacchi --- DEVELOPERS | 4 + board/bsh/imx8mn-bsh-smm-s2/flash.sh | 22 + board/bsh/imx8mn-bsh-smm-s2/linux.config | 833 ++++++++++++++++++ board/bsh/imx8mn-bsh-smm-s2/nand-full.lst | 48 + ...dmaengine-mxs-fix-driver-registering.patch | 63 ++ ..._nand-Fix-specific-hook-registration.patch | 78 ++ ...-mxs_nand_spl-Fix-bad-block-skipping.patch | 165 ++++ ...x-cmd_nandbcb-fix-bad-block-handling.patch | 95 ++ ...d-Fix-bad-block-handling-in-fitImage.patch | 42 + ...h-to-nand-spl-load-instead-of-romapi.patch | 30 + ...Remove-rootwait-1-to-all-the-affecte.patch | 159 ++++ ...gs-imx8mn_bsh_smm_s2-add-NAND-driver.patch | 42 + ...s-imx8mn_bsh_smm_s2-add-UBI-commands.patch | 29 + ...sh_smm_s2-remove-console-from-bootar.patch | 32 + ..._bsh_smm_s2-add-mtdparts-to-bootargs.patch | 30 + board/bsh/imx8mn-bsh-smm-s2/post-build.sh | 4 + board/bsh/imx8mn-bsh-smm-s2/readme.txt | 75 ++ configs/imx8mn_bsh_smm_s2_defconfig | 44 + 18 files changed, 1795 insertions(+) create mode 100755 board/bsh/imx8mn-bsh-smm-s2/flash.sh create mode 100644 board/bsh/imx8mn-bsh-smm-s2/linux.config create mode 100644 board/bsh/imx8mn-bsh-smm-s2/nand-full.lst create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/linux/0001-dmaengine-mxs-fix-driver-registering.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-nand-raw-mxs_nand-Fix-specific-hook-registration.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0002-mtd-nand-mxs_nand_spl-Fix-bad-block-skipping.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0003-arm-mach-imx-cmd_nandbcb-fix-bad-block-handling.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0004-spl-spl_nand-Fix-bad-block-handling-in-fitImage.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0005-board-bsh-Switch-to-nand-spl-load-instead-of-romapi.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0006-include-configs-Remove-rootwait-1-to-all-the-affecte.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0007-configs-imx8mn_bsh_smm_s2-add-NAND-driver.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0008-configs-imx8mn_bsh_smm_s2-add-UBI-commands.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0009-configs-imx8mn_bsh_smm_s2-remove-console-from-bootar.patch create mode 100644 board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0010-configs-imx8mn_bsh_smm_s2-add-mtdparts-to-bootargs.patch create mode 100755 board/bsh/imx8mn-bsh-smm-s2/post-build.sh create mode 100644 board/bsh/imx8mn-bsh-smm-s2/readme.txt create mode 100644 configs/imx8mn_bsh_smm_s2_defconfig diff --git a/DEVELOPERS b/DEVELOPERS index 60fa58ab35d6..02fd23af8b82 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -651,6 +651,8 @@ F: package/luaexpat/ F: package/xinetd/ N: Dario Binacchi +F: board/bsh/ +F: configs/imx8mn_bsh_smm_s2_defconfig F: package/uuu/ N: Dario Binacchi @@ -2040,6 +2042,8 @@ F: package/python-crc16/ F: package/python-pyzmq/ N: Michael Trimarchi +F: board/bsh/ +F: configs/imx8mn_bsh_smm_s2_defconfig F: package/python-spidev/ N: Michael Vetter diff --git a/board/bsh/imx8mn-bsh-smm-s2/flash.sh b/board/bsh/imx8mn-bsh-smm-s2/flash.sh new file mode 100755 index 000000000000..35354f622500 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/flash.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +OUTPUT_DIR=$1 + +if ! test -d "${OUTPUT_DIR}" ; then + echo "ERROR: no output directory specified." + echo "Usage: $0 OUTPUT_DIR" + echo "" + echo "Arguments:" + echo " OUTPUT_DIR The Buildroot output directory." + exit 1 +fi + +IMAGES_DIR=${OUTPUT_DIR}/images + +${OUTPUT_DIR}/host/bin/uuu -v -b ${IMAGES_DIR}/nand-full.lst \ + ${IMAGES_DIR}/flash.bin \ + ${IMAGES_DIR}/flash.bin \ + ${IMAGES_DIR}/rootfs.ubifs \ + ${IMAGES_DIR}/Image \ + ${IMAGES_DIR}/freescale/imx8mn-bsh-smm-s2.dtb + diff --git a/board/bsh/imx8mn-bsh-smm-s2/linux.config b/board/bsh/imx8mn-bsh-smm-s2/linux.config new file mode 100644 index 000000000000..638352146da1 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/linux.config @@ -0,0 +1,833 @@ +CONFIG_SYSVIPC=y +CONFIG_POSIX_MQUEUE=y +CONFIG_AUDIT=y +CONFIG_NO_HZ_IDLE=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_PREEMPT=y +CONFIG_IRQ_TIME_ACCOUNTING=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_NUMA_BALANCING=y +CONFIG_MEMCG=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CPUSETS=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_PERF=y +CONFIG_USER_NS=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_KALLSYMS_ALL=y +# CONFIG_COMPAT_BRK is not set +CONFIG_PROFILING=y +CONFIG_ARCH_MXC=y +CONFIG_ARM64_VA_BITS_48=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_SMT=y +CONFIG_NUMA=y +CONFIG_CRASH_DUMP=y +CONFIG_FORCE_MAX_ZONEORDER=14 +CONFIG_COMPAT=y +# CONFIG_ARM64_PTR_AUTH is not set +# CONFIG_ARM64_TLB_RANGE is not set +# CONFIG_ARM64_MTE is not set +CONFIG_RANDOMIZE_BASE=y +CONFIG_PM_DEBUG=y +CONFIG_PM_TEST_SUSPEND=y +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_ENERGY_MODEL=y +CONFIG_ARM_CPUIDLE=y +CONFIG_ARM_PSCI_CPUIDLE=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y +CONFIG_CPUFREQ_DT=y +CONFIG_ACPI_CPPC_CPUFREQ=m +CONFIG_ARM_SCPI_CPUFREQ=y +CONFIG_ARM_IMX_CPUFREQ_DT=y +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCPI_PROTOCOL=y +CONFIG_EFI_CAPSULE_LOADER=y +CONFIG_IMX_DSP=y +CONFIG_IMX_SCU=y +CONFIG_IMX_SCU_PD=y +CONFIG_ACPI=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_EINJ=y +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM64_CE=y +CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_SHA512_ARM64_CE=m +CONFIG_CRYPTO_SHA3_ARM64=m +CONFIG_CRYPTO_SM3_ARM64_CE=m +CONFIG_CRYPTO_GHASH_ARM64_CE=y +CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +CONFIG_CRYPTO_AES_ARM64_CE_BLK=y +CONFIG_CRYPTO_CHACHA20_NEON=m +CONFIG_CRYPTO_AES_ARM64_BS=m +CONFIG_JUMP_LABEL=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_KSM=y +CONFIG_MEMORY_FAILURE=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +CONFIG_IPV6_SIT=m +CONFIG_NETFILTER=y +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_TAG_OCELOT=m +CONFIG_VLAN_8021Q=y +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_LLC2=y +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_TAPRIO=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_GATE=m +CONFIG_TSN=y +CONFIG_QRTR=m +CONFIG_QRTR_SMD=m +CONFIG_QRTR_TUN=m +CONFIG_BPF_JIT=y +CONFIG_NET_PKTGEN=m +CONFIG_CAN=m +CONFIG_CAN_FLEXCAN=m +CONFIG_BT=y +CONFIG_BT_RFCOMM=y +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=y +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_HIDP=y +CONFIG_BT_LEDS=y +# CONFIG_BT_DEBUGFS is not set +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIUART=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_QCA=y +CONFIG_BT_HCIVHCI=y +CONFIG_CFG80211=y +CONFIG_NL80211_TESTMODE=y +CONFIG_CFG80211_WEXT=y +CONFIG_MAC80211=y +CONFIG_MAC80211_LEDS=y +CONFIG_NET_9P=y +CONFIG_NET_9P_VIRTIO=y +CONFIG_NFC=m +CONFIG_NFC_NCI=m +CONFIG_NFC_S3FWRN5_I2C=m +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_BRCMSTB_GISB_ARB=y +CONFIG_SIMPLE_PM_BUS=y +CONFIG_VEXPRESS_CONFIG=y +CONFIG_MTD=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CFI=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_PHYSMAP=y +CONFIG_MTD_PHYSMAP_OF=y +CONFIG_MTD_DATAFLASH=y +CONFIG_MTD_SST25L=y +CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_NAND_DENALI_DT=y +CONFIG_MTD_NAND_GPMI_NAND=y +CONFIG_MTD_SPI_NOR=y +# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set +CONFIG_MTD_UBI=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_NBD=m +CONFIG_VIRTIO_BLK=y +CONFIG_SENSORS_FXOS8700=y +CONFIG_SENSORS_FXAS2100X=y +CONFIG_SRAM=y +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_AT25=m +CONFIG_UACCE=m +CONFIG_RAID_ATTRS=m +# CONFIG_SCSI_PROC_FS is not set +CONFIG_BLK_DEV_SD=y +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_HISI_SAS=y +CONFIG_SCSI_UFSHCD=y +CONFIG_SCSI_UFSHCD_PLATFORM=y +CONFIG_ATA=y +CONFIG_SATA_AHCI_PLATFORM=y +CONFIG_AHCI_IMX=y +CONFIG_AHCI_CEVA=y +CONFIG_AHCI_XGENE=y +CONFIG_AHCI_QORIQ=y +CONFIG_PATA_PLATFORM=y +CONFIG_PATA_OF_PLATFORM=y +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_BLK_DEV_DM=m +CONFIG_DM_CRYPT=m +CONFIG_DM_MIRROR=m +CONFIG_DM_ZERO=m +CONFIG_NETDEVICES=y +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_TUN=y +CONFIG_VETH=m +CONFIG_VIRTIO_NET=y +CONFIG_AMD_XGBE=y +CONFIG_BCMGENET=m +CONFIG_MACB=y +CONFIG_FEC=y +CONFIG_FEC_UIO=y +CONFIG_FSL_XGMAC_MDIO=y +CONFIG_FSL_ENETC_IERB=y +CONFIG_HIX5HD2_GMAC=y +CONFIG_HNS_DSAF=y +CONFIG_HNS_ENET=y +CONFIG_MVMDIO=y +CONFIG_MSCC_OCELOT_SWITCH=y +CONFIG_QCOM_EMAC=m +CONFIG_RMNET=m +CONFIG_SMC91X=y +CONFIG_SMSC911X=y +CONFIG_STMMAC_ETH=y +CONFIG_DWMAC_GENERIC=m +CONFIG_MICROCHIP_PHY=y +CONFIG_NXP_TJA11XX_PHY=y +CONFIG_MDIO_BITBANG=y +CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y +CONFIG_MDIO_BUS_MUX_MMIOREG=y +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=y +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=y +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_BRCMFMAC=y +CONFIG_HOSTAP=y +CONFIG_WL18XX=m +CONFIG_WLCORE_SDIO=m +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_ADC=m +CONFIG_KEYBOARD_GPIO=y +CONFIG_KEYBOARD_RPMSG=y +CONFIG_KEYBOARD_SNVS_PWRKEY=y +CONFIG_KEYBOARD_IMX_SC_PWRKEY=y +CONFIG_KEYBOARD_CROS_EC=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_TOUCHSCREEN_GOODIX=m +CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MPL3115=y +CONFIG_INPUT_ISL29023=y +# CONFIG_SERIO_SERPORT is not set +CONFIG_SERIO_AMBAKMI=y +CONFIG_LEGACY_PTY_COUNT=16 +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +CONFIG_SERIAL_IMX=y +CONFIG_SERIAL_IMX_CONSOLE=y +CONFIG_SERIAL_XILINX_PS_UART=y +CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y +CONFIG_SERIAL_FSL_LPUART=y +CONFIG_SERIAL_FSL_LPUART_CONSOLE=y +CONFIG_SERIAL_FSL_LINFLEXUART=y +CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_IPMI_HANDLER=m +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS_I2C_INFINEON=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y +CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_DESIGNWARE_PLATFORM=y +CONFIG_I2C_GPIO=m +CONFIG_I2C_IMX=y +CONFIG_I2C_IMX_LPI2C=y +CONFIG_I2C_RK3X=y +CONFIG_I2C_RPBUS=y +CONFIG_I2C_CROS_EC_TUNNEL=y +CONFIG_I2C_SLAVE=y +CONFIG_SPI=y +CONFIG_SPI_CADENCE_QUADSPI=y +CONFIG_SPI_FSL_LPSPI=y +CONFIG_SPI_FSL_QUADSPI=y +CONFIG_SPI_NXP_FLEXSPI=y +CONFIG_SPI_IMX=y +CONFIG_SPI_PL022=y +CONFIG_SPI_ROCKCHIP=y +CONFIG_SPI_SPIDEV=y +CONFIG_SPI_SLAVE=y +CONFIG_SPI_SLAVE_TIME=y +CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_SINGLE=y +CONFIG_PINCTRL_MAX77620=y +CONFIG_PINCTRL_IMX8MM=y +CONFIG_PINCTRL_IMX8MN=y +CONFIG_PINCTRL_IMX8MP=y +CONFIG_PINCTRL_IMX8MQ=y +CONFIG_PINCTRL_IMX8QM=y +CONFIG_PINCTRL_IMX8QXP=y +CONFIG_PINCTRL_IMX8DXL=y +CONFIG_PINCTRL_IMX8ULP=y +CONFIG_PINCTRL_S32V_CORE=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_ALTERA=m +CONFIG_GPIO_DWAPB=y +CONFIG_GPIO_MB86S7X=y +CONFIG_GPIO_MXC=y +CONFIG_GPIO_PL061=y +CONFIG_GPIO_IMX_RPMSG=y +CONFIG_GPIO_WCD934X=m +CONFIG_GPIO_XGENE=y +CONFIG_GPIO_MAX732X=y +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_BD9571MWV=m +CONFIG_POWER_RESET_BRCMSTB=y +CONFIG_POWER_RESET_XGENE=y +CONFIG_POWER_RESET_SYSCON=y +CONFIG_SYSCON_REBOOT_MODE=y +CONFIG_BATTERY_SBS=m +CONFIG_BATTERY_BQ27XXX=y +CONFIG_SENSORS_ARM_SCMI=y +CONFIG_SENSORS_ARM_SCPI=y +CONFIG_SENSORS_FP9931=y +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_PWM_FAN=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_INA3221=m +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_CPU_THERMAL=y +CONFIG_THERMAL_EMULATION=y +CONFIG_IMX_SC_THERMAL=y +CONFIG_IMX8MM_THERMAL=y +CONFIG_DEVICE_THERMAL=y +CONFIG_QORIQ_THERMAL=y +CONFIG_WATCHDOG=y +CONFIG_ARM_SP805_WATCHDOG=y +CONFIG_ARM_SBSA_WATCHDOG=y +CONFIG_DW_WATCHDOG=y +CONFIG_IMX2_WDT=y +CONFIG_IMX_SC_WDT=y +CONFIG_IMX7ULP_WDT=y +CONFIG_ARM_SMC_WATCHDOG=y +CONFIG_MFD_BD9571MWV=y +CONFIG_MFD_AXP20X_I2C=y +CONFIG_MFD_IMX_MIX=y +CONFIG_MFD_HI6421_PMIC=y +CONFIG_MFD_FP9931=y +CONFIG_MFD_MAX77620=y +CONFIG_MFD_RK808=y +CONFIG_MFD_SEC_CORE=y +CONFIG_MFD_ROHM_BD718XX=y +CONFIG_MFD_WCD934X=m +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_AXP20X=y +CONFIG_REGULATOR_BD718XX=y +CONFIG_REGULATOR_BD9571MWV=y +CONFIG_REGULATOR_FAN53555=y +CONFIG_REGULATOR_GPIO=y +CONFIG_REGULATOR_HI6421V530=y +CONFIG_REGULATOR_MAX77620=y +CONFIG_REGULATOR_MAX8973=y +CONFIG_REGULATOR_FP9931=y +CONFIG_REGULATOR_PCA9450=y +CONFIG_REGULATOR_PFUZE100=y +CONFIG_REGULATOR_PWM=y +CONFIG_REGULATOR_RK808=y +CONFIG_REGULATOR_S2MPS11=y +CONFIG_REGULATOR_VCTRL=m +CONFIG_MEDIA_SUPPORT=y +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_SDR_SUPPORT=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y +# CONFIG_DVB_NET is not set +CONFIG_MEDIA_USB_SUPPORT=y +CONFIG_USB_VIDEO_CLASS=m +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_VIDEO_MXC_CAPTURE=y +CONFIG_VIDEO_MX8_CAPTURE=y +CONFIG_VIDEO_MXC_CSI_CAMERA=y +CONFIG_MXC_MIPI_CSI=y +CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_SDR_PLATFORM_DRIVERS=y +CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_OV5640=y +CONFIG_VIDEO_OV5645=m +CONFIG_IMX_DPU_CORE=y +CONFIG_IMX_LCDIF_CORE=y +CONFIG_IMX_LCDIFV3_CORE=y +CONFIG_DRM=y +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_MALI_DISPLAY=m +CONFIG_DRM_RCAR_DW_HDMI=m +CONFIG_DRM_RCAR_LVDS=m +CONFIG_DRM_PANEL_SIMPLE=y +CONFIG_DRM_PANEL_ILITEK_ILI9805=y +CONFIG_DRM_PANEL_SYNAPTICS_R63353=y +CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m +CONFIG_DRM_PANEL_WKS_101WX001=y +CONFIG_DRM_DISPLAY_CONNECTOR=m +CONFIG_DRM_LONTIUM_LT9611=m +CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y +CONFIG_DRM_NWL_MIPI_DSI=y +CONFIG_DRM_NXP_SEIKO_43WVFIG=y +CONFIG_DRM_SII902X=m +CONFIG_DRM_SIMPLE_BRIDGE=m +CONFIG_DRM_THINE_THC63LVD1024=m +CONFIG_DRM_TI_SN65DSI86=m +CONFIG_DRM_I2C_ADV7511=y +CONFIG_DRM_I2C_ADV7511_AUDIO=y +CONFIG_DRM_CDNS_HDMI_CEC=y +CONFIG_DRM_DW_HDMI_AHB_AUDIO=m +CONFIG_DRM_DW_HDMI_I2S_AUDIO=m +CONFIG_DRM_DW_HDMI_GP_AUDIO=y +CONFIG_DRM_DW_HDMI_CEC=y +CONFIG_DRM_ITE_IT6263=y +CONFIG_DRM_ITE_IT6161=y +CONFIG_DRM_IMX=y +CONFIG_DRM_IMX_LCDIF_MUX_DISPLAY=y +CONFIG_DRM_IMX_PARALLEL_DISPLAY=y +CONFIG_DRM_IMX_TVE=y +CONFIG_DRM_IMX_LDB=y +CONFIG_DRM_IMX8QM_LDB=y +CONFIG_DRM_IMX8QXP_LDB=y +CONFIG_DRM_IMX8MP_LDB=y +CONFIG_DRM_IMX_HDMI=y +CONFIG_DRM_IMX_SEC_DSIM=y +CONFIG_DRM_IMX_DCNANO=y +CONFIG_DRM_IMX_DCSS=y +CONFIG_DRM_IMX_CDNS_MHDP=y +CONFIG_DRM_ETNAVIV=m +CONFIG_DRM_HISI_KIRIN=m +CONFIG_DRM_MXSFB=y +CONFIG_DRM_PL111=m +CONFIG_DRM_LIMA=m +CONFIG_DRM_PANFROST=m +CONFIG_DRM_LEGACY=y +CONFIG_FB_ARMCLCD=y +CONFIG_FB_EFI=y +CONFIG_FB_MXC_EINK_V2_PANEL=y +CONFIG_BACKLIGHT_PWM=y +CONFIG_BACKLIGHT_LP855X=m +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_ALOOP=m +# CONFIG_SND_SPI is not set +# CONFIG_SND_USB is not set +CONFIG_SND_SOC=y +CONFIG_SND_SOC_FSL_ASRC=y +CONFIG_SND_SOC_FSL_EASRC=y +CONFIG_SND_IMX_SOC=y +CONFIG_SND_SOC_FSL_ASOC_CARD=y +CONFIG_SND_SOC_SOF_TOPLEVEL=y +CONFIG_SND_SOC_SOF_OF=m +CONFIG_SND_SOC_SOF_COMPRESS=y +CONFIG_SND_SOC_SOF_IMX_TOPLEVEL=y +CONFIG_SND_SOC_SOF_IMX8_SUPPORT=y +CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=y +CONFIG_SND_SOC_SOF_IMX8ULP_SUPPORT=y +CONFIG_SND_SOC_AK4458=y +CONFIG_SND_SOC_AK5558=y +CONFIG_SND_SOC_PCM512x_I2C=y +CONFIG_SND_SOC_TLV320AIC31XX=y +CONFIG_SND_SIMPLE_CARD=y +CONFIG_SND_AUDIO_GRAPH_CARD=y +CONFIG_I2C_HID=m +CONFIG_USB_CONN_GPIO=y +CONFIG_USB=y +CONFIG_USB_OTG=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_PLATFORM=y +CONFIG_USB_HCD_TEST_MODE=y +CONFIG_USB_ACM=m +CONFIG_USB_STORAGE=y +CONFIG_USB_UAS=y +CONFIG_USB_CDNS3=y +CONFIG_USB_CDNS3_GADGET=y +CONFIG_USB_CDNS3_HOST=y +CONFIG_USB_MUSB_HDRC=y +CONFIG_USB_DWC3=y +CONFIG_USB_DWC2=y +CONFIG_USB_CHIPIDEA=y +CONFIG_USB_CHIPIDEA_UDC=y +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_ISP1760=y +CONFIG_USB_SERIAL=y +CONFIG_USB_SERIAL_CONSOLE=y +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=y +CONFIG_USB_SERIAL_FTDI_SIO=y +CONFIG_USB_TEST=m +CONFIG_USB_EHSET_TEST_FIXTURE=y +CONFIG_USB_HSIC_USB3503=y +CONFIG_NOP_USB_XCEIV=y +CONFIG_USB_MXS_PHY=y +CONFIG_USB_ULPI=y +CONFIG_USB_GADGET=y +CONFIG_USB_SNP_UDC_PLAT=y +CONFIG_USB_BDC_UDC=y +CONFIG_USB_CONFIGFS=y +CONFIG_USB_CONFIGFS_SERIAL=y +CONFIG_USB_CONFIGFS_ACM=y +CONFIG_USB_CONFIGFS_OBEX=y +CONFIG_USB_CONFIGFS_NCM=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_F_LB_SS=y +CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_USB_CONFIGFS_F_UAC1=y +CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=y +CONFIG_USB_CONFIGFS_F_UAC2=y +CONFIG_USB_CONFIGFS_F_MIDI=y +CONFIG_USB_CONFIGFS_F_HID=y +CONFIG_USB_CONFIGFS_F_UVC=y +CONFIG_USB_ZERO=m +CONFIG_USB_AUDIO=m +CONFIG_USB_ETH=m +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_G_SERIAL=m +CONFIG_TYPEC=y +CONFIG_TYPEC_TCPM=y +CONFIG_TYPEC_TCPCI=y +CONFIG_TYPEC_FUSB302=m +CONFIG_TYPEC_HD3SS3220=m +CONFIG_TYPEC_SWITCH_GPIO=y +CONFIG_MMC=y +CONFIG_MMC_BLOCK_MINORS=32 +CONFIG_MMC_ARMMMCI=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_OF_ARASAN=y +CONFIG_MMC_SDHCI_OF_ESDHC=y +CONFIG_MMC_SDHCI_CADENCE=y +CONFIG_MMC_SDHCI_ESDHC_IMX=y +CONFIG_MMC_SDHCI_F_SDH30=y +CONFIG_MMC_SPI=y +CONFIG_MMC_DW=y +CONFIG_MMC_DW_EXYNOS=y +CONFIG_MMC_DW_HI3798CV200=y +CONFIG_MMC_DW_K3=y +CONFIG_MMC_SDHCI_XENON=y +CONFIG_MMC_SDHCI_AM654=y +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_PWM=y +CONFIG_LEDS_SYSCON=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_DISK=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y +CONFIG_LEDS_TRIGGER_PANIC=y +CONFIG_EDAC=y +CONFIG_EDAC_GHES=y +CONFIG_EDAC_SYNOPSYS=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_MAX77686=y +CONFIG_RTC_DRV_RK808=m +CONFIG_RTC_DRV_PCF85363=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RV8803=m +CONFIG_RTC_DRV_S5M=y +CONFIG_RTC_DRV_DS3232=y +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_EFI=y +CONFIG_RTC_DRV_CROS_EC=y +CONFIG_RTC_DRV_PL031=y +CONFIG_RTC_DRV_SNVS=y +CONFIG_RTC_DRV_IMX_SC=y +CONFIG_RTC_DRV_IMX_RPMSG=y +CONFIG_DMADEVICES=y +CONFIG_BCM_SBA_RAID=m +CONFIG_FSL_EDMA=y +CONFIG_FSL_QDMA=m +CONFIG_FSL_EDMA_V3=y +CONFIG_IMX_SDMA=y +CONFIG_MV_XOR_V2=y +CONFIG_MXS_DMA=y +CONFIG_MXC_PXP_V3=y +CONFIG_PL330_DMA=y +CONFIG_QCOM_HIDMA_MGMT=y +CONFIG_QCOM_HIDMA=y +CONFIG_DMATEST=y +CONFIG_DMABUF_HEAPS=y +CONFIG_DMABUF_HEAPS_SYSTEM=y +CONFIG_DMABUF_HEAPS_CMA=y +CONFIG_DMABUF_HEAPS_DSP=y +CONFIG_VFIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_MMIO=y +CONFIG_STAGING=y +CONFIG_STAGING_MEDIA=y +CONFIG_VIDEO_IMX_CAPTURE=y +CONFIG_IMX8_MEDIA_DEVICE=m +CONFIG_ION=y +CONFIG_ION_SYSTEM_HEAP=y +CONFIG_ION_CMA_HEAP=y +CONFIG_CHROME_PLATFORMS=y +CONFIG_CROS_EC=y +CONFIG_CROS_EC_I2C=y +CONFIG_CROS_EC_SPI=y +CONFIG_CROS_EC_CHARDEV=m +CONFIG_COMMON_CLK_RK808=y +CONFIG_COMMON_CLK_SCPI=y +CONFIG_COMMON_CLK_CS2000_CP=y +CONFIG_COMMON_CLK_S2MPS11=y +CONFIG_CLK_QORIQ=y +CONFIG_COMMON_CLK_XGENE=y +CONFIG_COMMON_CLK_PWM=y +CONFIG_COMMON_CLK_VC5=y +CONFIG_CLK_IMX8MN=y +CONFIG_ARCH_S32_CLK=y +CONFIG_HWSPINLOCK=y +CONFIG_ARM_MHU=y +CONFIG_IMX_MBOX=y +CONFIG_PLATFORM_MHU=y +CONFIG_ARM_SMMU=y +CONFIG_ARM_SMMU_V3=y +CONFIG_REMOTEPROC=y +CONFIG_IMX_REMOTEPROC=y +CONFIG_IMX_DSP_REMOTEPROC=y +CONFIG_RPMSG_CHAR=y +CONFIG_RPMSG_QCOM_GLINK_RPM=y +CONFIG_SOUNDWIRE=m +CONFIG_SOUNDWIRE_QCOM=m +CONFIG_SOC_BRCMSTB=y +CONFIG_FSL_RCPM=y +CONFIG_FSL_QIXIS=y +CONFIG_SOC_TI=y +CONFIG_EXTCON_PTN5150=m +CONFIG_EXTCON_USB_GPIO=y +CONFIG_EXTCON_USBC_CROS_EC=y +CONFIG_MEMORY=y +CONFIG_IIO=y +CONFIG_IMX8QXP_ADC=y +CONFIG_MAX9611=m +CONFIG_IIO_CROS_EC_SENSORS_CORE=m +CONFIG_IIO_CROS_EC_SENSORS=m +CONFIG_IIO_ST_LSM6DSX=y +CONFIG_IIO_CROS_EC_LIGHT_PROX=m +CONFIG_IIO_CROS_EC_BARO=m +CONFIG_PWM=y +CONFIG_PWM_CROS_EC=m +CONFIG_PWM_FSL_FTM=m +CONFIG_PWM_IMX27=y +CONFIG_PWM_RPCHIP=y +CONFIG_RESET_IMX7=y +CONFIG_RESET_IMX8ULP_SIM=y +CONFIG_PHY_XGENE=y +CONFIG_PHY_MIXEL_LVDS=y +CONFIG_PHY_MIXEL_LVDS_COMBO=y +CONFIG_PHY_CADENCE_SALVO=y +CONFIG_PHY_FSL_IMX8MP_LVDS=y +CONFIG_PHY_MIXEL_MIPI_DPHY=y +CONFIG_PHY_SAMSUNG_HDMI_PHY=y +CONFIG_PHY_QCOM_USB_HS=y +CONFIG_PHY_SAMSUNG_USB2=y +CONFIG_ARM_SMMU_V3_PMU=m +CONFIG_FSL_IMX8_DDR_PMU=y +CONFIG_HISI_PMU=y +CONFIG_NVMEM_IMX_OCOTP=y +CONFIG_NVMEM_IMX_OCOTP_SCU=y +CONFIG_FPGA=y +CONFIG_FPGA_BRIDGE=m +CONFIG_ALTERA_FREEZE_BRIDGE=m +CONFIG_FPGA_REGION=m +CONFIG_OF_FPGA_REGION=m +CONFIG_TEE=y +CONFIG_OPTEE=y +CONFIG_MUX_MMIO=y +CONFIG_SLIM_QCOM_CTRL=m +CONFIG_INTERCONNECT=y +CONFIG_MXC_SIM=y +CONFIG_MXC_EMVSIM=y +CONFIG_EXT2_FS=y +CONFIG_EXT3_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=m +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=m +CONFIG_VFAT_FS=y +CONFIG_HUGETLBFS=y +CONFIG_EFIVAR_FS=y +CONFIG_JFFS2_FS=y +CONFIG_UBIFS_FS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_XZ=y +CONFIG_NFS_FS=y +CONFIG_NFS_V4=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_ROOT_NFS=y +CONFIG_9P_FS=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ISO8859_1=y +CONFIG_SECURITY=y +CONFIG_CRYPTO_USER=y +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_DH=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_ECHAINIV=y +CONFIG_CRYPTO_TLS=m +CONFIG_CRYPTO_CFB=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_OFB=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_STREEBOG=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_ANSI_CPRNG=y +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m +CONFIG_CRYPTO_DEV_FSL_CAAM=m +CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m +CONFIG_CRYPTO_DEV_CCREE=m +CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m +CONFIG_INDIRECT_PIO=y +CONFIG_CRC_CCITT=m +CONFIG_CMA_SIZE_MBYTES=32 +CONFIG_IRQ_POLL=y +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_INFO=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_FS=y +CONFIG_DEBUG_KERNEL=y +# CONFIG_SCHED_DEBUG is not set +# CONFIG_DEBUG_PREEMPT is not set +# CONFIG_FTRACE is not set +CONFIG_CORESIGHT=y +CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y +CONFIG_CORESIGHT_SOURCE_ETM4X=y +CONFIG_MEMTEST=y diff --git a/board/bsh/imx8mn-bsh-smm-s2/nand-full.lst b/board/bsh/imx8mn-bsh-smm-s2/nand-full.lst new file mode 100644 index 000000000000..f00aa0848a5f --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/nand-full.lst @@ -0,0 +1,48 @@ +# @_flash.bin | bootloader +# @_image [_flash.bin] | image burn to nand, default is the same as bootloader +# @_filesystem | filesystem to burn +# @_kernel | kernel image +# @_dtb | dtb image + +# This command will be run when i.MX6/7 i.MX8MM, i.MX8MQ +SDP: boot -f _flash.bin + +# This command will be run when ROM support stream mode +# i.MX8QXP, i.MX8QM +SDPS: boot -f _flash.bin + +# These commands will be run when use SPL and will be skipped if no spl +# SDPU will be deprecated. please use SDPV instead of SDPU +# { +SDPU: delay 1000 +SDPU: write -f _flash.bin -offset 0x57c00 +SDPU: jump +# } + +# These commands will be run when use SPL and will be skipped if no spl +# if (SPL support SDPV) +# { +SDPV: delay 1000 +SDPV: write -f _flash.bin -skipspl +SDPV: jump +# } + +FB: ucmd setenv fastboot_buffer ${loadaddr} +FB: download -f _image +# Burn image to nandfit partition if needed +FB: ucmd if env exists nandfit_part; then nand erase.part nandfit; nand write ${fastboot_buffer} nandfit ${filesize}; else true; fi; +FB: ucmd nandbcb init ${fastboot_buffer} nandboot ${filesize} + +FB[-t 10000]: ucmd ubi part nandrootfs +FB[-t 10000]: ucmd ubi create root - +FB: download -f _filesystem +FB[-t 60000]: ucmd ubi write ${loadaddr} root ${filesize} + +FB: download -f _kernel +FB[-t 10000]: ucmd nand write ${loadaddr} nandkernel ${filesize} + +FB: download -f _dtb +FB[-t 8000]: ucmd nand write ${loadaddr} nanddtb ${filesize} + +FB: reboot +FB: done diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/linux/0001-dmaengine-mxs-fix-driver-registering.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/linux/0001-dmaengine-mxs-fix-driver-registering.patch new file mode 100644 index 000000000000..c025a1f5eda5 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/linux/0001-dmaengine-mxs-fix-driver-registering.patch @@ -0,0 +1,63 @@ +From 81c6e8da232e4eaefe2808ea5f30c404f441c063 Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Sun, 22 May 2022 17:40:15 +0200 +Subject: [PATCH] dmaengine: mxs: fix driver registering + +Driver registration fails on SOC imx8mn as its supplier, the clock +control module, is not ready. Since platform_driver_probe(), as +reported by its description, is incompatible with deferred probing, +we have to use platform_driver_register(). + +Fixes: a580b8c5429a ("dmaengine: mxs-dma: add dma support for i.MX23/28") +Co-developed-by: Michael Trimarchi +Signed-off-by: Michael Trimarchi +Signed-off-by: Dario Binacchi +Cc: stable@vger.kernel.org + +Series-version: 2 +Series-changes: 2 +- Add the tag "Cc: stable@vger.kernel.org" in the sign-off area. + +Series-cc: linux-amarula@amarulasolutions.com +--- + drivers/dma/mxs-dma.c | 11 ++++------- + 1 file changed, 4 insertions(+), 7 deletions(-) + +diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c +index 994fc4d2aca4..b8a3e692330d 100644 +--- a/drivers/dma/mxs-dma.c ++++ b/drivers/dma/mxs-dma.c +@@ -670,7 +670,7 @@ static enum dma_status mxs_dma_tx_status(struct dma_chan *chan, + return mxs_chan->status; + } + +-static int __init mxs_dma_init(struct mxs_dma_engine *mxs_dma) ++static int mxs_dma_init(struct mxs_dma_engine *mxs_dma) + { + int ret; + +@@ -741,7 +741,7 @@ static struct dma_chan *mxs_dma_xlate(struct of_phandle_args *dma_spec, + ofdma->of_node); + } + +-static int __init mxs_dma_probe(struct platform_device *pdev) ++static int mxs_dma_probe(struct platform_device *pdev) + { + struct device_node *np = pdev->dev.of_node; + const struct mxs_dma_type *dma_type; +@@ -839,10 +839,7 @@ static struct platform_driver mxs_dma_driver = { + .name = "mxs-dma", + .of_match_table = mxs_dma_dt_ids, + }, ++ .probe = mxs_dma_probe, + }; + +-static int __init mxs_dma_module_init(void) +-{ +- return platform_driver_probe(&mxs_dma_driver, mxs_dma_probe); +-} +-subsys_initcall(mxs_dma_module_init); ++module_platform_driver(mxs_dma_driver); +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-nand-raw-mxs_nand-Fix-specific-hook-registration.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-nand-raw-mxs_nand-Fix-specific-hook-registration.patch new file mode 100644 index 000000000000..5c27d4dade83 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-nand-raw-mxs_nand-Fix-specific-hook-registration.patch @@ -0,0 +1,78 @@ +From da52c7c7d89abdcdf3dd858969094a914ecda9dc Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 15 May 2022 11:35:30 +0200 +Subject: [PATCH 01/10] nand: raw: mxs_nand: Fix specific hook registration + +Move the hook after nand_scan_tail is called. The hook must be replaced +to the mxs specific one but those must to be assignment later in the +probe function. + +With this fix markbad is working again. Before this change: + +nand markbad 0xDEC00 +NXS NAND: Writing OOB isn't supported +NXS NAND: Writing OOB isn't supported +block 0x000dec00 NOT marked as bad! ERROR 0 + +Cc: Han Xu +Cc: Fabio Estevam +Acked-by: Han Xu +Tested-By: Tim Harvey +Signed-off-by: Michael Trimarchi +--- + drivers/mtd/nand/raw/mxs_nand.c | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) + +diff --git a/drivers/mtd/nand/raw/mxs_nand.c b/drivers/mtd/nand/raw/mxs_nand.c +index ee5d7fde9ce1..53f24b9c4b1a 100644 +--- a/drivers/mtd/nand/raw/mxs_nand.c ++++ b/drivers/mtd/nand/raw/mxs_nand.c +@@ -1246,22 +1246,6 @@ int mxs_nand_setup_ecc(struct mtd_info *mtd) + /* Enable BCH complete interrupt */ + writel(BCH_CTRL_COMPLETE_IRQ_EN, &bch_regs->hw_bch_ctrl_set); + +- /* Hook some operations at the MTD level. */ +- if (mtd->_read_oob != mxs_nand_hook_read_oob) { +- nand_info->hooked_read_oob = mtd->_read_oob; +- mtd->_read_oob = mxs_nand_hook_read_oob; +- } +- +- if (mtd->_write_oob != mxs_nand_hook_write_oob) { +- nand_info->hooked_write_oob = mtd->_write_oob; +- mtd->_write_oob = mxs_nand_hook_write_oob; +- } +- +- if (mtd->_block_markbad != mxs_nand_hook_block_markbad) { +- nand_info->hooked_block_markbad = mtd->_block_markbad; +- mtd->_block_markbad = mxs_nand_hook_block_markbad; +- } +- + return 0; + } + +@@ -1467,6 +1451,22 @@ int mxs_nand_init_ctrl(struct mxs_nand_info *nand_info) + if (err) + goto err_free_buffers; + ++ /* Hook some operations at the MTD level. */ ++ if (mtd->_read_oob != mxs_nand_hook_read_oob) { ++ nand_info->hooked_read_oob = mtd->_read_oob; ++ mtd->_read_oob = mxs_nand_hook_read_oob; ++ } ++ ++ if (mtd->_write_oob != mxs_nand_hook_write_oob) { ++ nand_info->hooked_write_oob = mtd->_write_oob; ++ mtd->_write_oob = mxs_nand_hook_write_oob; ++ } ++ ++ if (mtd->_block_markbad != mxs_nand_hook_block_markbad) { ++ nand_info->hooked_block_markbad = mtd->_block_markbad; ++ mtd->_block_markbad = mxs_nand_hook_block_markbad; ++ } ++ + err = nand_register(0, mtd); + if (err) + goto err_free_buffers; +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0002-mtd-nand-mxs_nand_spl-Fix-bad-block-skipping.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0002-mtd-nand-mxs_nand_spl-Fix-bad-block-skipping.patch new file mode 100644 index 000000000000..0e15b384f84f --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0002-mtd-nand-mxs_nand_spl-Fix-bad-block-skipping.patch @@ -0,0 +1,165 @@ +From 84901413e2554b7e62540a7403578f695f52623b Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 15 May 2022 11:35:31 +0200 +Subject: [PATCH 02/10] mtd: nand: mxs_nand_spl: Fix bad block skipping + +The specific implementation was having bug. Those bugs are since +the beginning of the implementation. Some manufactures can already +experience this bug in their SPL code. This bug can be more visible on +architecture that has complicated boot process like imx8mn. Older +version of uboot can be affected if the bad block +appear in correspoding of the beginning of u-boot image. In order to +adjust the function we scan from the first erase block. + +The problematic part of old code was in this part: + +while (is_badblock(mtd, offs, 1)) { + page = page + nand_page_per_block; + /* Check i we've reached the end of flash. */ + if (page >= mtd->size >> chip->page_shift) { + free(page_buf); + return -ENOMEM; + } +} + +Even we fix it adding increment of the offset of one erase block size +, we don't fix the problem, because the first erase block where the +image start is not checked. The code was tested on an imx8mn where +the boot rom api was not able to skip it. This code is used by other +architecures like imx6 and imx8mm + +Cc: Han Xu +Cc: Fabio Estevam +Acked-by: Han Xu +Tested-By: Tim Harvey +Signed-off-by: Michael Trimarchi +--- + drivers/mtd/nand/raw/mxs_nand_spl.c | 90 ++++++++++++++++------------- + 1 file changed, 49 insertions(+), 41 deletions(-) + +diff --git a/drivers/mtd/nand/raw/mxs_nand_spl.c b/drivers/mtd/nand/raw/mxs_nand_spl.c +index 59a67ee4145d..2bfb181007b7 100644 +--- a/drivers/mtd/nand/raw/mxs_nand_spl.c ++++ b/drivers/mtd/nand/raw/mxs_nand_spl.c +@@ -218,14 +218,14 @@ void nand_init(void) + mxs_nand_setup_ecc(mtd); + } + +-int nand_spl_load_image(uint32_t offs, unsigned int size, void *buf) ++int nand_spl_load_image(uint32_t offs, unsigned int size, void *dst) + { +- struct nand_chip *chip; +- unsigned int page; ++ unsigned int sz; ++ unsigned int block, lastblock; ++ unsigned int page, page_offset; + unsigned int nand_page_per_block; +- unsigned int sz = 0; ++ struct nand_chip *chip; + u8 *page_buf = NULL; +- u32 page_off; + + chip = mtd_to_nand(mtd); + if (!chip->numchips) +@@ -235,47 +235,42 @@ int nand_spl_load_image(uint32_t offs, unsigned int size, void *buf) + if (!page_buf) + return -ENOMEM; + +- page = offs >> chip->page_shift; +- page_off = offs & (mtd->writesize - 1); ++ /* offs has to be aligned to a page address! */ ++ block = offs / mtd->erasesize; ++ lastblock = (offs + size - 1) / mtd->erasesize; ++ page = (offs % mtd->erasesize) / mtd->writesize; ++ page_offset = offs % mtd->writesize; + nand_page_per_block = mtd->erasesize / mtd->writesize; + +- debug("%s offset:0x%08x len:%d page:%x\n", __func__, offs, size, page); +- +- while (size) { +- if (mxs_read_page_ecc(mtd, page_buf, page) < 0) +- return -1; +- +- if (size > (mtd->writesize - page_off)) +- sz = (mtd->writesize - page_off); +- else +- sz = size; +- +- memcpy(buf, page_buf + page_off, sz); +- +- offs += mtd->writesize; +- page++; +- buf += (mtd->writesize - page_off); +- page_off = 0; +- size -= sz; +- +- /* +- * Check if we have crossed a block boundary, and if so +- * check for bad block. +- */ +- if (!(page % nand_page_per_block)) { +- /* +- * Yes, new block. See if this block is good. If not, +- * loop until we find a good block. +- */ +- while (is_badblock(mtd, offs, 1)) { +- page = page + nand_page_per_block; +- /* Check i we've reached the end of flash. */ +- if (page >= mtd->size >> chip->page_shift) { ++ while (block <= lastblock && size > 0) { ++ if (!is_badblock(mtd, mtd->erasesize * block, 1)) { ++ /* Skip bad blocks */ ++ while (page < nand_page_per_block) { ++ int curr_page = nand_page_per_block * block + page; ++ ++ if (mxs_read_page_ecc(mtd, page_buf, curr_page) < 0) { + free(page_buf); +- return -ENOMEM; ++ return -EIO; + } ++ ++ if (size > (mtd->writesize - page_offset)) ++ sz = (mtd->writesize - page_offset); ++ else ++ sz = size; ++ ++ memcpy(dst, page_buf + page_offset, sz); ++ dst += sz; ++ size -= sz; ++ page_offset = 0; ++ page++; + } ++ ++ page = 0; ++ } else { ++ lastblock++; + } ++ ++ block++; + } + + free(page_buf); +@@ -294,6 +289,19 @@ void nand_deselect(void) + + u32 nand_spl_adjust_offset(u32 sector, u32 offs) + { +- /* Handle the offset adjust in nand_spl_load_image,*/ ++ unsigned int block, lastblock; ++ ++ block = sector / mtd->erasesize; ++ lastblock = (sector + offs) / mtd->erasesize; ++ ++ while (block <= lastblock) { ++ if (is_badblock(mtd, block * mtd->erasesize, 1)) { ++ offs += mtd->erasesize; ++ lastblock++; ++ } ++ ++ block++; ++ } ++ + return offs; + } +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0003-arm-mach-imx-cmd_nandbcb-fix-bad-block-handling.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0003-arm-mach-imx-cmd_nandbcb-fix-bad-block-handling.patch new file mode 100644 index 000000000000..b9aedbb864df --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0003-arm-mach-imx-cmd_nandbcb-fix-bad-block-handling.patch @@ -0,0 +1,95 @@ +From c2e0b6f589f8f73c5cd9bd82938021f34b3b875b Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 15 May 2022 11:35:32 +0200 +Subject: [PATCH 03/10] arm: mach-imx: cmd_nandbcb fix bad block handling + +The badblock should be skipped properly in reading and writing. +Fix the logic. The bcb struct is written, skipping the bad block, +so we need to read using the same logic. This was tested create +bad block in the area and then flash it and read it back. + +Acked-by: Han Xu +Tested-By: Tim Harvey +Signed-off-by: Michael Trimarchi +--- + arch/arm/mach-imx/cmd_nandbcb.c | 21 +++++++-------------- + 1 file changed, 7 insertions(+), 14 deletions(-) + +diff --git a/arch/arm/mach-imx/cmd_nandbcb.c b/arch/arm/mach-imx/cmd_nandbcb.c +index f119e9f88d5c..c54f52b343c7 100644 +--- a/arch/arm/mach-imx/cmd_nandbcb.c ++++ b/arch/arm/mach-imx/cmd_nandbcb.c +@@ -506,10 +506,6 @@ static int read_fcb(struct boot_config *boot_cfg, struct fcb_block *fcb, + int ret = 0; + + mtd = boot_cfg->mtd; +- if (mtd_block_isbad(mtd, off)) { +- printf("Block %d is bad, skipped\n", (int)CONV_TO_BLOCKS(off)); +- return 1; +- } + + fcb_raw_page = kzalloc(mtd->writesize + mtd->oobsize, GFP_KERNEL); + if (!fcb_raw_page) { +@@ -530,7 +526,7 @@ static int read_fcb(struct boot_config *boot_cfg, struct fcb_block *fcb, + else if (plat_config.misc_flags & FCB_ENCODE_BCH_40b) + mxs_nand_mode_fcb_40bit(mtd); + +- ret = nand_read(mtd, off, &size, (u_char *)fcb); ++ ret = nand_read_skip_bad(mtd, off, &size, NULL, mtd->size, (u_char *)fcb); + + /* switch BCH back */ + mxs_nand_mode_normal(mtd); +@@ -617,6 +613,7 @@ static int write_fcb(struct boot_config *boot_cfg, struct fcb_block *fcb) + for (i = 0; i < g_boot_search_count; i++) { + if (mtd_block_isbad(mtd, off)) { + printf("Block %d is bad, skipped\n", i); ++ off += mtd->erasesize; + continue; + } + +@@ -676,20 +673,15 @@ static int read_dbbt(struct boot_config *boot_cfg, struct dbbt_block *dbbt, + void *dbbt_data_page, loff_t off) + { + size_t size; ++ size_t actual_size; + struct mtd_info *mtd; + loff_t to; + int ret; + + mtd = boot_cfg->mtd; + +- if (mtd_block_isbad(mtd, off)) { +- printf("Block %d is bad, skipped\n", +- (int)CONV_TO_BLOCKS(off)); +- return 1; +- } +- + size = sizeof(struct dbbt_block); +- ret = nand_read(mtd, off, &size, (u_char *)dbbt); ++ ret = nand_read_skip_bad(mtd, off, &size, &actual_size, mtd->size, (u_char *)dbbt); + printf("NAND DBBT read from 0x%llx offset 0x%zx read: %s\n", + off, size, ret ? "ERROR" : "OK"); + if (ret) +@@ -697,9 +689,9 @@ static int read_dbbt(struct boot_config *boot_cfg, struct dbbt_block *dbbt, + + /* dbbtpages == 0 if no bad blocks */ + if (dbbt->dbbtpages > 0) { +- to = off + 4 * mtd->writesize; ++ to = off + 4 * mtd->writesize + actual_size - size; + size = mtd->writesize; +- ret = nand_read(mtd, to, &size, dbbt_data_page); ++ ret = nand_read_skip_bad(mtd, to, &size, NULL, mtd->size, dbbt_data_page); + printf("DBBT data read from 0x%llx offset 0x%zx read: %s\n", + to, size, ret ? "ERROR" : "OK"); + +@@ -729,6 +721,7 @@ static int write_dbbt(struct boot_config *boot_cfg, struct dbbt_block *dbbt, + if (mtd_block_isbad(mtd, off)) { + printf("Block %d is bad, skipped\n", + (int)(i + CONV_TO_BLOCKS(off))); ++ off += mtd->erasesize; + continue; + } + +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0004-spl-spl_nand-Fix-bad-block-handling-in-fitImage.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0004-spl-spl_nand-Fix-bad-block-handling-in-fitImage.patch new file mode 100644 index 000000000000..84165b4fb0f2 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0004-spl-spl_nand-Fix-bad-block-handling-in-fitImage.patch @@ -0,0 +1,42 @@ +From 85d26c1c5e503d1ecae5818684dc54029bf6959d Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 15 May 2022 11:35:33 +0200 +Subject: [PATCH 04/10] spl: spl_nand: Fix bad block handling in fitImage + +If the fitImage has some bad block in fit image area, the +offset must be recalulcated. This should be done always. +After implementing it in mxs now is possible to call the function +even for that platform. + +Cc: Fabio Estevam +Tested-By: Tim Harvey +Reviewed-by: Tom Rini +Signed-off-by: Michael Trimarchi +--- + common/spl/spl_nand.c | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/common/spl/spl_nand.c b/common/spl/spl_nand.c +index fc61b447a52e..82a10ffa63aa 100644 +--- a/common/spl/spl_nand.c ++++ b/common/spl/spl_nand.c +@@ -43,15 +43,12 @@ static ulong spl_nand_fit_read(struct spl_load_info *load, ulong offs, + ulong size, void *dst) + { + int err; +-#ifdef CONFIG_SYS_NAND_BLOCK_SIZE + ulong sector; + + sector = *(int *)load->priv; +- offs = sector + nand_spl_adjust_offset(sector, offs - sector); +-#else + offs *= load->bl_len; + size *= load->bl_len; +-#endif ++ offs = sector + nand_spl_adjust_offset(sector, offs - sector); + err = nand_spl_load_image(offs, size, dst); + if (err) + return 0; +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0005-board-bsh-Switch-to-nand-spl-load-instead-of-romapi.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0005-board-bsh-Switch-to-nand-spl-load-instead-of-romapi.patch new file mode 100644 index 000000000000..48d20cf519bf --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0005-board-bsh-Switch-to-nand-spl-load-instead-of-romapi.patch @@ -0,0 +1,30 @@ +From 16f75e0dfe9d435db7ec129f2e7c0d7a641cd3a0 Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 15 May 2022 11:35:34 +0200 +Subject: [PATCH 05/10] board: bsh: Switch to nand spl load instead of romapi + +romapi is not eble to skip bad block so we need to workaround +using the spl + +Signed-off-by: Michael Trimarchi +--- + board/bsh/imx8mn_smm_s2/spl.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/board/bsh/imx8mn_smm_s2/spl.c b/board/bsh/imx8mn_smm_s2/spl.c +index 0f61acc6302f..097b60c05551 100644 +--- a/board/bsh/imx8mn_smm_s2/spl.c ++++ b/board/bsh/imx8mn_smm_s2/spl.c +@@ -18,6 +18,9 @@ + + int spl_board_boot_device(enum boot_device boot_dev_spl) + { ++ if (IS_ENABLED(CONFIG_NAND_MXS) && get_boot_device() != USB_BOOT) ++ return BOOT_DEVICE_NAND; ++ + return BOOT_DEVICE_BOOTROM; + } + +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0006-include-configs-Remove-rootwait-1-to-all-the-affecte.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0006-include-configs-Remove-rootwait-1-to-all-the-affecte.patch new file mode 100644 index 000000000000..7ec8a97a0c9a --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0006-include-configs-Remove-rootwait-1-to-all-the-affecte.patch @@ -0,0 +1,159 @@ +From d818bfb185a9f62fc988141d2dbbf9e9bc8ffa5d Mon Sep 17 00:00:00 2001 +From: Michael Trimarchi +Date: Sun, 22 May 2022 15:22:08 +0200 +Subject: [PATCH 06/10] include/configs: Remove rootwait=1 to all the affected + boards + +rootwait=1 is not a valid kernel boot parameters. According +to the documenation is only rootwait + +rootwait [KNL] Wait (indefinitely) for root device to show up. + Useful for devices that are detected asynchronously + (e.g. USB and MMC devices). + +Fix: +Unknown kernel command line parameters "rootwait=1", will be passed to user space. + +Signed-off-by: Michael Trimarchi +Reviewed-by: Heiko Schocher +--- + include/configs/am335x_evm.h | 2 +- + include/configs/am43xx_evm.h | 2 +- + include/configs/baltos.h | 2 +- + include/configs/chiliboard.h | 2 +- + include/configs/etamin.h | 2 +- + include/configs/imx8mn_bsh_smm_s2.h | 2 +- + include/configs/siemens-am33x-common.h | 4 ++-- + include/configs/ti_armv7_keystone2.h | 2 +- + include/environment/ti/nand.h | 2 +- + 9 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h +index fd5b209a52db..f301a6dc835b 100644 +--- a/include/configs/am335x_evm.h ++++ b/include/configs/am335x_evm.h +@@ -34,7 +34,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ +diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h +index 5057441f7506..1f5c3cd04e88 100644 +--- a/include/configs/am43xx_evm.h ++++ b/include/configs/am43xx_evm.h +@@ -166,7 +166,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,4096\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ +diff --git a/include/configs/baltos.h b/include/configs/baltos.h +index b881d8c03fd7..7b43741fde7c 100644 +--- a/include/configs/baltos.h ++++ b/include/configs/baltos.h +@@ -37,7 +37,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:rootfs rw ubi.mtd=5\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "setenv loadaddr 0x84000000; " \ +diff --git a/include/configs/chiliboard.h b/include/configs/chiliboard.h +index 82acda595f09..8bad0f9ac4b6 100644 +--- a/include/configs/chiliboard.h ++++ b/include/configs/chiliboard.h +@@ -20,7 +20,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "nand read ${fdt_addr} NAND.u-boot-spl-os; " \ +diff --git a/include/configs/etamin.h b/include/configs/etamin.h +index dc83ab71908b..3548382d2036 100644 +--- a/include/configs/etamin.h ++++ b/include/configs/etamin.h +@@ -113,7 +113,7 @@ + "nand_active_ubi_vol=rootfs_a\0" \ + "rootfs_name=rootfs\0" \ + "kernel_name=uImage\0"\ +- "nand_root_fs_type=ubifs rootwait=1\0" \ ++ "nand_root_fs_type=ubifs rootwait\0" \ + "nand_args=run bootargs_defaults;" \ + "mtdparts default;" \ + "setenv ${partitionset_active} true;" \ +diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h +index 098f23b206d1..f7529783692e 100644 +--- a/include/configs/imx8mn_bsh_smm_s2.h ++++ b/include/configs/imx8mn_bsh_smm_s2.h +@@ -21,7 +21,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:root rw ubi.mtd=nandrootfs\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "nand read ${fdt_addr_r} nanddtb; " \ +diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h +index 08c4d52d658f..9f1a6cd51b40 100644 +--- a/include/configs/siemens-am33x-common.h ++++ b/include/configs/siemens-am33x-common.h +@@ -237,7 +237,7 @@ + "nand_active_ubi_vol=rootfs_a\0" \ + "nand_active_ubi_vol_A=rootfs_a\0" \ + "nand_active_ubi_vol_B=rootfs_b\0" \ +- "nand_root_fs_type=ubifs rootwait=1\0" \ ++ "nand_root_fs_type=ubifs rootwait\0" \ + "nand_src_addr=0x280000\0" \ + "nand_src_addr_A=0x280000\0" \ + "nand_src_addr_B=0x780000\0" \ +@@ -314,7 +314,7 @@ + "nand_active_ubi_vol=rootfs_a\0" \ + "rootfs_name=rootfs\0" \ + "kernel_name=uImage\0"\ +- "nand_root_fs_type=ubifs rootwait=1\0" \ ++ "nand_root_fs_type=ubifs rootwait\0" \ + "nand_args=run bootargs_defaults;" \ + "mtdparts default;" \ + "setenv ${partitionset_active} true;" \ +diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h +index 57f013cbf846..133daecf7164 100644 +--- a/include/configs/ti_armv7_keystone2.h ++++ b/include/configs/ti_armv7_keystone2.h +@@ -180,7 +180,7 @@ + "sf write ${loadaddr} 0 ${filesize}\0" \ + "burn_uboot_nand=nand erase 0 0x100000; " \ + "nand write ${loadaddr} 0 ${filesize}\0" \ +- "args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1 " \ ++ "args_all=setenv bootargs console=ttyS0,115200n8 rootwait " \ + KERNEL_MTD_PARTS \ + "args_net=setenv bootargs ${bootargs} rootfstype=nfs " \ + "root=/dev/nfs rw nfsroot=${serverip}:${nfs_root}," \ +diff --git a/include/environment/ti/nand.h b/include/environment/ti/nand.h +index 11dcefcc41ca..7d00afa2b10f 100644 +--- a/include/environment/ti/nand.h ++++ b/include/environment/ti/nand.h +@@ -14,7 +14,7 @@ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \ +- "nandrootfstype=ubifs rootwait=1\0" \ ++ "nandrootfstype=ubifs rootwait\0" \ + "nandboot=echo Booting from nand ...; " \ + "run nandargs; " \ + "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0007-configs-imx8mn_bsh_smm_s2-add-NAND-driver.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0007-configs-imx8mn_bsh_smm_s2-add-NAND-driver.patch new file mode 100644 index 000000000000..da9fcdfea24a --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0007-configs-imx8mn_bsh_smm_s2-add-NAND-driver.patch @@ -0,0 +1,42 @@ +From 9fc117eedd61161e1449222bf66af4414333d62c Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Wed, 18 May 2022 18:43:34 +0200 +Subject: [PATCH 07/10] configs: imx8mn_bsh_smm_s2: add NAND driver + +It allows to boot from NAND. + +Co-developed-by: Michael Trimarchi +Signed-off-by: Michael Trimarchi +Signed-off-by: Dario Binacchi +--- + configs/imx8mn_bsh_smm_s2_defconfig | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig +index 49f425300151..08f52e50609b 100644 +--- a/configs/imx8mn_bsh_smm_s2_defconfig ++++ b/configs/imx8mn_bsh_smm_s2_defconfig +@@ -30,8 +30,10 @@ CONFIG_SPL_BOARD_INIT=y + CONFIG_SPL_BOOTROM_SUPPORT=y + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300 ++CONFIG_SPL_DMA=y + CONFIG_SPL_I2C=y + CONFIG_SPL_MTD_SUPPORT=y ++CONFIG_SPL_NAND_SUPPORT=y + CONFIG_SPL_POWER=y + CONFIG_SPL_WATCHDOG=y + CONFIG_SYS_PROMPT="> " +@@ -65,6 +67,9 @@ CONFIG_SYS_NAND_USE_FLASH_BBT=y + CONFIG_NAND_MXS=y + CONFIG_NAND_MXS_DT=y + CONFIG_SYS_NAND_ONFI_DETECTION=y ++CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y ++CONFIG_SYS_NAND_U_BOOT_OFFS=0xD8000 ++CONFIG_SYS_NAND_U_BOOT_OFFS_REDUND=0x4058000 + CONFIG_PHYLIB=y + CONFIG_PHY_NXP_TJA11XX=y + CONFIG_DM_ETH=y +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0008-configs-imx8mn_bsh_smm_s2-add-UBI-commands.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0008-configs-imx8mn_bsh_smm_s2-add-UBI-commands.patch new file mode 100644 index 000000000000..87e298ce35ce --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0008-configs-imx8mn_bsh_smm_s2-add-UBI-commands.patch @@ -0,0 +1,29 @@ +From bbc8da82b648591be6a6ae866168d2aa18d1b55f Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Thu, 26 May 2022 10:20:49 +0200 +Subject: [PATCH 08/10] configs: imx8mn_bsh_smm_s2: add UBI commands + +They allow to flash the ubifs rootfs. + +Co-developed-by: Michael Trimarchi +Signed-off-by: Michael Trimarchi +Signed-off-by: Dario Binacchi +--- + configs/imx8mn_bsh_smm_s2_defconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig +index 08f52e50609b..f8c75a2b237e 100644 +--- a/configs/imx8mn_bsh_smm_s2_defconfig ++++ b/configs/imx8mn_bsh_smm_s2_defconfig +@@ -43,6 +43,7 @@ CONFIG_CMD_USB_MASS_STORAGE=y + CONFIG_CMD_MTDPARTS=y + CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand" + CONFIG_MTDPARTS_DEFAULT="gpmi-nand:64m(nandboot),16m(nandfit),32m(nandkernel),1m(nanddtb),8m(nandtee),-(nandrootfs)" ++CONFIG_CMD_UBI=y + CONFIG_OF_CONTROL=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_SYS_RELOC_GD_ENV_ADDR=y +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0009-configs-imx8mn_bsh_smm_s2-remove-console-from-bootar.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0009-configs-imx8mn_bsh_smm_s2-remove-console-from-bootar.patch new file mode 100644 index 000000000000..67ae0fb53970 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0009-configs-imx8mn_bsh_smm_s2-remove-console-from-bootar.patch @@ -0,0 +1,32 @@ +From 0bc2d78f1f08f8517e83dadc265f7ad7ecc5e68e Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Thu, 26 May 2022 10:56:38 +0200 +Subject: [PATCH 09/10] configs: imx8mn_bsh_smm_s2: remove console from + bootargs + +The Linux kernel device tree already specifies the device to be used for +boot console output with a stdout-path property under /chosen. + +Co-developed-by: Michael Trimarchi +Signed-off-by: Michael Trimarchi +Signed-off-by: Dario Binacchi +--- + include/configs/imx8mn_bsh_smm_s2.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h +index f7529783692e..17722488ab3f 100644 +--- a/include/configs/imx8mn_bsh_smm_s2.h ++++ b/include/configs/imx8mn_bsh_smm_s2.h +@@ -16,7 +16,7 @@ + #define NANDARGS \ + "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \ + "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ +- "nandargs=setenv bootargs console=${console} " \ ++ "nandargs=setenv bootargs " \ + "${optargs} " \ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0010-configs-imx8mn_bsh_smm_s2-add-mtdparts-to-bootargs.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0010-configs-imx8mn_bsh_smm_s2-add-mtdparts-to-bootargs.patch new file mode 100644 index 000000000000..68740633a85c --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0010-configs-imx8mn_bsh_smm_s2-add-mtdparts-to-bootargs.patch @@ -0,0 +1,30 @@ +From 790d25e150c78afbc230e76e05de01f21a75996e Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Thu, 26 May 2022 11:00:33 +0200 +Subject: [PATCH 10/10] configs: imx8mn_bsh_smm_s2: add mtdparts to bootargs + +Passing the mtdparts environment variable to the Linux kernel is +required to properly mount the UBI rootfs. + +Co-developed-by: Michael Trimarchi +Signed-off-by: Michael Trimarchi +Signed-off-by: Dario Binacchi +--- + include/configs/imx8mn_bsh_smm_s2.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h +index 17722488ab3f..0dc514f00684 100644 +--- a/include/configs/imx8mn_bsh_smm_s2.h ++++ b/include/configs/imx8mn_bsh_smm_s2.h +@@ -18,6 +18,7 @@ + "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ + "nandargs=setenv bootargs " \ + "${optargs} " \ ++ "mtdparts=${mtdparts} " \ + "root=${nandroot} " \ + "rootfstype=${nandrootfstype}\0" \ + "nandroot=ubi0:root rw ubi.mtd=nandrootfs\0" \ +-- +2.32.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/post-build.sh b/board/bsh/imx8mn-bsh-smm-s2/post-build.sh new file mode 100755 index 000000000000..49df4cd6fb10 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/post-build.sh @@ -0,0 +1,4 @@ +#!/bin/sh +BOARD_DIR="$(dirname $0)" + +cp ${BOARD_DIR}/nand-full.lst ${BINARIES_DIR} diff --git a/board/bsh/imx8mn-bsh-smm-s2/readme.txt b/board/bsh/imx8mn-bsh-smm-s2/readme.txt new file mode 100644 index 000000000000..37081091e849 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2/readme.txt @@ -0,0 +1,75 @@ +i.MX8MN BSH SMM S2 +================== + +This tutorial describes how to use the predefined Buildroot +configuration for the i.MX8MN BSH SMM S2 PRO board. + +Building +-------- + +Configure buildroot: + + $ make imx8mn_bsh_smm_s2_defconfig + +Change settings to fit your needs (optional): + + $ make menuconfig + +Compile everything and build the rootfs image: + + $ make + + +Result of the build +------------------- + +After building, the output/images directory contains: + + output/images/ + ├── bl31.bin + ├── ddr3* + ├── flash.bin + ├── freescale/imx8mn-bsh-smm-s2.dtb + ├── Image + ├── nand-full.lst + ├── rootfs.ext2 + ├── rootfs.ext4 -> rootfs.ext2 + ├── rootfs.tar + ├── rootfs.ubifs + ├── u-boot.bin + └── u-boot-spl.bin + + +Preparing the board +------------------- + +Plug the USB type A to micro B cable into the USB Debug +Connector (DBG UART). Use serial port settings 115200 8N1 +to access the debug console. + +Plug another USB type A to micro B cable into the USB-OTG +Connector (USB1). This connection is used to flash the board +firmware using the Freescale/NXP UUU tool. + +Connect the power supply/adaptor to the DC Power Jack (labelled ++5V). + + +Flashing +-------- + +Power up the board by switching on the Power ON Switch, which is +placed right next to the DC Jack. + +Enter the following U-Boot commands on the debug serial console: + + $ nand erase.chip + $ reset + +Flash the built images directly to board’s memory. On your computer, +run: + + $ board/bsh/imx8mn-bsh-smm-s2/flash.sh output/ + +It will flash the bootloader, the Device Tree Blob, the kernel image +and the UBI root file system. diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig new file mode 100644 index 000000000000..d500f2fc7b99 --- /dev/null +++ b/configs/imx8mn_bsh_smm_s2_defconfig @@ -0,0 +1,44 @@ +BR2_aarch64=y +BR2_GLOBAL_PATCH_DIR="board/bsh/imx8mn-bsh-smm-s2/patches" +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/bsh/imx8mn-bsh-smm-s2/post-build.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.18" +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/bsh/imx8mn-bsh-smm-s2/linux.config" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mn-bsh-smm-s2" +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_PACKAGE_FREESCALE_IMX=y +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN=y +BR2_PACKAGE_FIRMWARE_IMX=y +BR2_PACKAGE_FIRMWARE_IMX_DDR3=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +BR2_TARGET_ROOTFS_UBIFS=y +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000 +BR2_TARGET_ROOTFS_UBIFS_RT_NONE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mn" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30a60000" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07-rc2" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin" +BR2_TARGET_UBOOT_SPL=y +BR2_PACKAGE_HOST_UUU=y From patchwork Tue Jun 7 07:28:52 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 2012 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-il1-f198.google.com (mail-il1-f198.google.com [209.85.166.198]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id EE1893F066 for ; Tue, 7 Jun 2022 09:29:52 +0200 (CEST) Received: by mail-il1-f198.google.com with SMTP id j5-20020a922005000000b002d1c2659644sf13280166ile.8 for ; Tue, 07 Jun 2022 00:29:52 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1654586992; cv=pass; d=google.com; s=arc-20160816; b=HJWGg2tq1i8F86bWgLPfGLraFm1LpepW5CdKjfldX6JtSEHLhsrMPzSL/FvjbNXC7h S6kPArBH/rU4lO1MOugJyA1SKKNCEH4FU36t/kuu1B58Gu+/BElsp4ypYzG20IMrtsx2 14ohSXIAkk9CBkLQpIv3G1K3IXwNf9Nb8Pv13IcPYzffDTRMgp5aAZWsZmcDMVtq5hM7 TA7MFHDzNrcIKp2bvfw2cdjalqOC2NnUy6qQncbP0LNRFg5yYuaP563cEPIEUNbJef77 O4c98jpiAcsAdgg+kBnvGSrgsjm1WdrL1cm7+JJfVJWZ9n/r5iQbh8kwC29D2NqTIGwx XIIQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=wHAiN3cy9FkxFdW3m4cMKr04LiZANcT18KE47qdmO3A=; b=UHT+2AqU9ZBNCuiwU2CSu8xAEVSSKg4//nhgik2z5Q/qXNkz58hGCWJI5iUkGUEfaB mq8OreQqTWJS948sl/9bDoenQxefyhKZrOLGXTwLflflD5Kl/TiNqtxidVoiZUdAVoYs aj9lkQ6iL81tyIyvGhGJdTiqi4XI/+cHvtWyweIEwB3Kg5+GeqW/aE5tpfRYNrW+iKwG 7xX7RFMF3aiHuhT+2Ci7sTMKJ5+oPYcPzXpHQvLgTZQBIMG6f9aKU1kNyOOpzBDc7g1F hX2JHiNG0j0DbQMTwpSSw8Ti5uXT4xHUF67/pyilE/8ISl4acNkTiyVqGSZyLLw48kR2 Fo5w== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="hpZG7X/U"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :list-post:list-help:list-archive:list-unsubscribe; bh=wHAiN3cy9FkxFdW3m4cMKr04LiZANcT18KE47qdmO3A=; b=cVfmMs1nuBNBynKNrW55V0U+JdJH4GDBOg/rQQERRtOoyUZFZvFenf/AmG0K0cfP5+ aEVto8Ju9BVsnS8ODtJ8ajcwaLMjgWDaXK0EardhfH2d5mr1UZSSHhguDRWJNUHqI6F7 Kz6M0NjE16T3dNBXWStIDblZ5wq5VLMz9gMNE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-spam-checked-in-group:list-post:list-help:list-archive :list-unsubscribe; bh=wHAiN3cy9FkxFdW3m4cMKr04LiZANcT18KE47qdmO3A=; b=8LwydAe3WeQQ3yhtKKbVRF4cW455qhcIKHNvDc+GwMVSb8g1bKE2ZcYixGZC7U43t0 0JpVx76IfxjnMHCrOQVODt06E70kg092BNA1kWSCuF23i8Wf16CRCxrqMw1YayG3VGzM /sZCYcIpk4Zi7cF+ppu9UW3bEzTOB02PKL6ca4R4VEQw+5WbTO/96eV1Y+TPPH8ceKMl kLyKsqMN4tLTPSj7SKqOUZPwUdAiNsbO74FHMAq5mEEWtTknDJTNpG68/fS+6nx34WoF w01H4zW27phd087N9/YL31qSm2Of9fffFQwjOBiVnDvjA6u+1JIjoCzEDQbJWW77EwlV bznw== X-Gm-Message-State: AOAM532s0CGgAv1ZqMptRTldPhewxSp6SdCvYXDCVpfM429oNi17Wkdi eMRGRFToNTmpjykQfhWTOKdddbYf X-Google-Smtp-Source: ABdhPJyKqkGzAN5sAVE+n/+RX3cKyH61lU/oicfES8fqErOaPKJwZAJREWfXHl9Uuc3UUJ3hWys/Zw== X-Received: by 2002:a05:6e02:17c9:b0:2d1:a85f:7bd3 with SMTP id z9-20020a056e0217c900b002d1a85f7bd3mr16429784ilu.92.1654586991897; Tue, 07 Jun 2022 00:29:51 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a05:6602:1355:b0:60a:9e26:930a with SMTP id i21-20020a056602135500b0060a9e26930als1057916iov.7.gmail; Tue, 07 Jun 2022 00:29:51 -0700 (PDT) X-Received: by 2002:a6b:7310:0:b0:669:5402:a345 with SMTP id e16-20020a6b7310000000b006695402a345mr4661437ioh.58.1654586991218; Tue, 07 Jun 2022 00:29:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654586991; cv=none; d=google.com; s=arc-20160816; b=rNWdQvZrdLKk874/iMxk+xtRIStfh4KpdYT29TXH46txlLVxoVa2mAaC3AJg+7AfVz +SMpNTAp+gcS9KJ0OoR/lnApg12TEqXIox+JOhhqGueJwEcJVwCJz5crnKCQgrx7itdN T4hOLB/3h3MtE0JFUPtN9vg1T6530KQnkgoUCGUPhUKl+/dXGIpBvnPC/r7vMpcJRS4l YxGuTRUVpg2weporx1Kcxs6P9K4xuHq7e3fcJ+/LQTEHYg4r1JVzGb9YJ3svwCba67/3 dAT+7aCPGTOwjGKuMdSyOPz+KPxFbnf/EFwY+H2GqsOdukyLqgUctu9n2lfIdYPFgyOe JYFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=RpfY4/ZzJxyHHKlYrOzA2v6TF/OQIw1GeugwCc/qdw4=; b=p3MtjrsWP1RLfSP0uaakRL9Q46RN6XMQwPyvqNwxtSIsfHduvX8/OG306AHtscr80w NkOoeXDyLb2QIoR8GsaZaMBRs6wNovS9rPO2UdEKm8HT4wFD94V8OQNmeBXoF09jMpah wBEWENwyvCd5UPx+6K0cls9a+fG92J0q2xOmq9v99n3OIakXCsOJPkUhTQ+lfZeASfWP KbwlqpfdEiXqdIXHiaeC4LIBz/Cd6kYh/KccdYq2fiI/+tc2cIBDcUXEVOfFQuc7LtKM +FRzB/9JhohTk9/uYExuJvWiahrmtfVbQw7/vdW/ZgxT7Y4FVQw4NV+7hYzNceXWH8i8 BGoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="hpZG7X/U"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id o44-20020a02742c000000b0032bb1799c11sor7205438jac.107.2022.06.07.00.29.51 for (Google Transport Security); Tue, 07 Jun 2022 00:29:51 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Received: by 2002:a05:6638:1c07:b0:331:a800:1062 with SMTP id ca7-20020a0566381c0700b00331a8001062mr5379172jab.4.1654586990945; Tue, 07 Jun 2022 00:29:50 -0700 (PDT) Received: from dario-ThinkPad-T14s-Gen-2i.pdxnet.pdxeng.ch (host-80-116-90-174.retail.telecomitalia.it. [80.116.90.174]) by smtp.gmail.com with ESMTPSA id cx4-20020a056638490400b0033126faae3asm6406075jab.116.2022.06.07.00.29.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jun 2022 00:29:50 -0700 (PDT) From: Dario Binacchi To: buildroot@buildroot.org Cc: Arnout Vandecappelle , linux-amarula@amarulasolutions.com, dario.binacchi@amarulasolutions.com, michael@amarulasolutions.com, Samuel Martin , Ariel D'Alessandro , Giulio Benetti , Heiko Thiery , Jagan Teki Subject: [PATCH 3/3] board/bsh: add support for iMX8MN BSH SMM S2 PRO board Date: Tue, 7 Jun 2022 09:28:52 +0200 Message-Id: <20220607072852.1007185-4-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> References: <20220607072852.1007185-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="hpZG7X/U"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , From: Michael Trimarchi BSH SMM S2 PRO (SystemMaster S2 Pro) Board is an add-on board which provide input and output interfaces to a dedicated carrier board. It is designed mainly to provide graphical/video and connectivity interfaces to the appliance. Board support package includes the following components: - mainline Linux kernel 5.18 - mainline U-Boot 2022-07-rc2 - Default packages from buildroot https://www.apertis.org/reference_hardware/imx8mn_bsh_smm_s2pro_setup/ Add Ariel D'Alessandro and Dario Binacchi as co-maintainer, we work together on platform mainline Build and tested using: docker pull registry.gitlab.com/buildroot.org/buildroot/base:20220105.2314 Cc: Ariel D'Alessandro Cc: Jagan Teki Cc: Heiko Thiery Cc: Giulio Benetti Reviewed-by: Giulio Benetti Signed-off-by: Michael Trimarchi Tested-by: Ariel D'Alessandro Signed-off-by: Dario Binacchi --- DEVELOPERS | 4 + .../imx8mn-bsh-smm-s2/linux.config | 0 board/bsh/imx8mn-bsh-smm-s2-pro/extlinux.conf | 4 + board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh | 19 +++++ board/bsh/imx8mn-bsh-smm-s2-pro/genimage.cfg | 17 +++++ board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh | 7 ++ board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh | 3 + board/bsh/imx8mn-bsh-smm-s2-pro/readme.txt | 73 +++++++++++++++++++ configs/imx8mn_bsh_smm_s2_defconfig | 2 +- configs/imx8mn_bsh_smm_s2_pro_defconfig | 41 +++++++++++ 10 files changed, 169 insertions(+), 1 deletion(-) rename board/bsh/{ => common}/imx8mn-bsh-smm-s2/linux.config (100%) create mode 100644 board/bsh/imx8mn-bsh-smm-s2-pro/extlinux.conf create mode 100755 board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh create mode 100644 board/bsh/imx8mn-bsh-smm-s2-pro/genimage.cfg create mode 100755 board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh create mode 100755 board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh create mode 100644 board/bsh/imx8mn-bsh-smm-s2-pro/readme.txt create mode 100644 configs/imx8mn_bsh_smm_s2_pro_defconfig diff --git a/DEVELOPERS b/DEVELOPERS index 02fd23af8b82..7fa67389c9d7 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -214,6 +214,8 @@ F: configs/snps_archs38_haps_defconfig F: configs/snps_archs38_hsdk_defconfig N: Ariel D'Alessandro +F: board/bsh/ +F: configs/imx8mn_bsh_smm_s2_pro_defconfig F: package/axfsutils/ F: package/mali-t76x/ @@ -653,6 +655,7 @@ F: package/xinetd/ N: Dario Binacchi F: board/bsh/ F: configs/imx8mn_bsh_smm_s2_defconfig +F: configs/imx8mn_bsh_smm_s2_pro_defconfig F: package/uuu/ N: Dario Binacchi @@ -2044,6 +2047,7 @@ F: package/python-pyzmq/ N: Michael Trimarchi F: board/bsh/ F: configs/imx8mn_bsh_smm_s2_defconfig +F: configs/imx8mn_bsh_smm_s2_pro_defconfig F: package/python-spidev/ N: Michael Vetter diff --git a/board/bsh/imx8mn-bsh-smm-s2/linux.config b/board/bsh/common/imx8mn-bsh-smm-s2/linux.config similarity index 100% rename from board/bsh/imx8mn-bsh-smm-s2/linux.config rename to board/bsh/common/imx8mn-bsh-smm-s2/linux.config diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/extlinux.conf b/board/bsh/imx8mn-bsh-smm-s2-pro/extlinux.conf new file mode 100644 index 000000000000..911135474253 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/extlinux.conf @@ -0,0 +1,4 @@ +label buildroot + kernel /boot/Image + devicetree /boot/freescale/imx8mn-bsh-smm-s2pro.dtb + append root=PARTUUID=%PARTUUID% rootwait rw diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh b/board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh new file mode 100755 index 000000000000..afce8ea41682 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +OUTPUT_DIR=$1 + +if ! test -d "${OUTPUT_DIR}" ; then + echo "ERROR: no output directory specified." + echo "Usage: $0 OUTPUT_DIR" + echo "" + echo "Arguments:" + echo " OUTPUT_DIR The Buildroot output directory." + exit 1 +fi + +IMAGES_DIR=${OUTPUT_DIR}/images + +${OUTPUT_DIR}/host/bin/uuu -v -b emmc_all \ + ${IMAGES_DIR}/flash.bin \ + ${IMAGES_DIR}/sdcard.img + diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/genimage.cfg b/board/bsh/imx8mn-bsh-smm-s2-pro/genimage.cfg new file mode 100644 index 000000000000..bc100b171dd6 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/genimage.cfg @@ -0,0 +1,17 @@ +image sdcard.img { + hdimage { + partition-table-type = "gpt" + } + + partition imx-boot { + in-partition-table = "no" + image = "flash.bin" + offset = 33K + } + + partition rootfs { + offset = 8M + image = "rootfs.ext4" + partition-uuid = %PARTUUID% + } +} diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh b/board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh new file mode 100755 index 000000000000..bf8861f6a914 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh @@ -0,0 +1,7 @@ +#!/bin/sh +BOARD_DIR="$(dirname $0)" +PARTUUID="$($HOST_DIR/bin/uuidgen)" + +install -d "$TARGET_DIR/boot/extlinux/" +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf" +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg" diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh b/board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh new file mode 100755 index 000000000000..3452fd4501f8 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +support/scripts/genimage.sh -c ${BINARIES_DIR}/genimage.cfg diff --git a/board/bsh/imx8mn-bsh-smm-s2-pro/readme.txt b/board/bsh/imx8mn-bsh-smm-s2-pro/readme.txt new file mode 100644 index 000000000000..5763f164fe13 --- /dev/null +++ b/board/bsh/imx8mn-bsh-smm-s2-pro/readme.txt @@ -0,0 +1,73 @@ +i.MX8MN BSH SMM S2 PRO +====================== + +How to build it +--------------- + +Configure buildroot: + + $ make imx8mn_bsh_smm_s2_pro_defconfig + +Change settings to fit your needs (optional): + + $ make menuconfig + +Compile everything and build the rootfs image: + + $ make + + +Result of the build +------------------- + +After building, the output/images directory contains: + + output/images/ + ├── bl31.bin + ├── Image + ├── flash.bin + ├── ddr3* + ├── rootfs.ext2 + ├── rootfs.ext4 -> rootfs.ext2 + ├── rootfs.tar + ├── sdcard.img + ├── u-boot.bin + ├── u-boot-nodtb.bin + └── u-boot-spl.bin + + +Preparing the board +------------------- + +Plug the USB type A to micro B cable into the USB Debug +Connector (DBG UART). Use serial port settings 115200 8N1 +to access the debug console. + +Plug another USB type A to micro B cable into the USB-OTG +Connector (USB1). This connection is used to flash the board +firmware using the Freescale/NXP UUU tool. + +Connect the power supply/adaptor to the DC Power Jack (labelled ++5V). + + +Flashing the emmc card image +---------------------------- + +Power up the board by switching on the Power ON Switch, which is +placed right next to the DC Jack. + +Enter the following U-Boot commands on the debug serial console: + + $ fastboot usb 0 + +Flash the images on eMMC. On your computer, run: + + $ board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh output/ + + +Booting the board +----------------- + +By default the bootloader will search for the first valid image, +starting with the internal eMMC. diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig index d500f2fc7b99..2d8dbfe740ac 100644 --- a/configs/imx8mn_bsh_smm_s2_defconfig +++ b/configs/imx8mn_bsh_smm_s2_defconfig @@ -6,7 +6,7 @@ BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.18" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/bsh/imx8mn-bsh-smm-s2/linux.config" +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/bsh/common/imx8mn-bsh-smm-s2/linux.config" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mn-bsh-smm-s2" BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y diff --git a/configs/imx8mn_bsh_smm_s2_pro_defconfig b/configs/imx8mn_bsh_smm_s2_pro_defconfig new file mode 100644 index 000000000000..4128257c4599 --- /dev/null +++ b/configs/imx8mn_bsh_smm_s2_pro_defconfig @@ -0,0 +1,41 @@ +BR2_aarch64=y +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.18" +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/bsh/common/imx8mn-bsh-smm-s2/linux.config" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mn-bsh-smm-s2pro" +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_PACKAGE_FREESCALE_IMX=y +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN=y +BR2_PACKAGE_FIRMWARE_IMX=y +BR2_PACKAGE_FIRMWARE_IMX_DDR3=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mn" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30a60000" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07-rc2" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2pro" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin" +BR2_TARGET_UBOOT_SPL=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_UUU=y