diff --git a/COPYRIGHT.md b/COPYRIGHT.md new file mode 100644 index 0000000..43e4ad3 --- /dev/null +++ b/COPYRIGHT.md @@ -0,0 +1,89 @@ +By Xogium and contributors +-------------------------- + +GNU GPLv3 or later: +- board/myna-player-odyssey/scripts/initramfs_postbuild.sh +- board/myna-player-odyssey/scripts/initramfs_postimage.sh +- board/myna-player-odyssey/scripts/rootfs_postbuild.sh +- board/myna-player-odyssey/scripts/rootfs_postimage.sh +- changelog.md +- Config.in +- external.desc +- external.mk +- packages/Config.in +- packages/disabled-services/70-disabled.preset +- packages/disabled-services/Config.in +- packages/disabled-services/disabled-services.mk +- README +- COPYRIGHT +- scripts/rauc_fixups.sh + +Machine generated or uncopyrightable, CC0 if copyrighted: +- board/myna-player-odyssey/configs/barebox.config +- board/myna-player-odyssey/configs/busybox.config +- board/myna-player-odyssey/configs/linux.config +- board/myna-player-odyssey/initramfs_overlay/etc/fstab +- board/myna-player-odyssey/initramfs_overlay/etc/group +- board/myna-player-odyssey/initramfs_overlay/etc/initrd-release +- board/myna-player-odyssey/initramfs_overlay/etc/passwd +- board/myna-player-odyssey/initramfs_overlay/etc/shadow +- board/myna-player-odyssey/rootfs_overlay/etc/fstab +- board/myna-player-odyssey/rootfs_overlay/etc/pam.d/login +- board/myna-player-odyssey/rootfs_overlay/etc/pam.d/sshd +- board/myna-player-odyssey/rootfs_overlay/etc/profile +- board/myna-player-odyssey/rootfs_overlay/etc/rauc/system.conf +- board/myna-player-odyssey/rootfs_overlay/etc/ssh/sshd_config +- board/myna-player-odyssey/rootfs_overlay/etc/systemd/system.conf.d/watchdog.conf +- board/myna-player-odyssey/rootfs_overlay/etc/systemd/system/rngd.service.d/override.conf +- board/myna-player-odyssey/rootfs_overlay/etc/systemd/system/sshdgenkeys.service +- board/myna-player-odyssey/rootfs_overlay/etc/systemd/system/sshd.service +- board/myna-player-odyssey/rootfs_overlay/loader/entries/myna-player.conf +- board/myna-player-odyssey/initramfs_overlay/etc/systemd/system/systemd-udevd.service.d/resolve-names.conf +- board/myna-player-odyssey/utilities/device-table +- board/myna-player-odyssey/utilities/genimage.tmp +- configs/myna_player_odyssey_defconfig +- configs/myna_player_odyssey_initramfs_defconfig +- scripts/certs.sh.example + +Third party +----------- + +Unclear: +- packages/duktape-pc/duktape-pc.pc +- packages/duktape-pc/duktape-pc.hash +- packages/duktape-pc/Config.in +- packages/duktape-pc/duktape-pc.mk +- packages/openssh-systemd/sshd-sysusers.conf +- packages/openssh-systemd/openssh-systemd.hash +- packages/openssh-systemd/sshd.service +- packages/openssh-systemd/Config.in +- packages/openssh-systemd/S50sshd +- packages/openssh-systemd/openssh-systemd.mk +- packages/polkit-duktape/polkit.service +- packages/polkit-duktape/polkit-duktape.hash +- packages/polkit-duktape/Config.in +- packages/polkit-duktape/polkit-duktape.mk +- LICENSE + +Patches under parent project licenses: +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0001-fdts-stm32mp157ca-dk1-Use-STPMIC-on-I2C2-and-eMMC-on.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0002-arch-rename-CNTBaseN-register-offsets-defines.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0003-aarch32-add-virtual-timer-control-support.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0004-stm32mp1-add-RTC-driver.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0005-stm32mp-add-function-to-protect-access-on-PWR-regist.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0006-ddr-stm32mp1-add-DDR-self-refresh-management.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0007-stm32mp1-add-low-power-management.patch +- board/myna-player-odyssey/initramfs_patches/arm-trusted-firmware/0008-fix-for-ethernet.patch +- board/myna-player-odyssey/initramfs_patches/barebox/0001-dts-stm32mp157c-odyssey-add-partitions-and-state-framework-support.patch +- board/myna-player-odyssey/initramfs_patches/barebox/0001-dts-stm32mp157c-odyssey-fix-location-of-last_chosen.patch +- board/myna-player-odyssey/initramfs_patches/barebox/0002-Revert-fs-free-inodes-we-no-longer-need.patch +- board/myna-player-odyssey/initramfs_patches/barebox/0003-dts-stm32mp157c-odyssey-Add-Ethernet-support.patch +- board/myna-player-odyssey/initramfs_patches/linux/0001-dt-bindings-vendor-prefixes-add-Seeed-Studio.patch +- board/myna-player-odyssey/initramfs_patches/linux/0002-ARM-dts-stm32-add-initial-support-for-stm32mp157-odyssey-board.patch +- board/myna-player-odyssey/initramfs_patches/linux/0003-ARM-dts-stm32mp157c-odyssey-fix-ethernet.patch +- board/myna-player-odyssey/rootfs_patches/dt-utils/0001-add-amba.patch +- board/myna-player-odyssey/rootfs_patches/openssh-systemd/0001-systemd-readyness.patch +- board/myna-player-odyssey/rootfs_patches/polkit-duktape/0001-add-duktape-support.patch +- packages/polkit-duktape/0001-make-netgroup-support-optional.patch +- packages/polkit-duktape/0002-jsauthority-memleak.patch +- packages/polkit-duktape/0003-polkit-0.116-pkttyagent-sigttou-bg-job.patch diff --git a/Config.in b/Config.in index 2aff75d..56d3019 100644 --- a/Config.in +++ b/Config.in @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + # packages source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/Config.in" diff --git a/README.md b/README.md new file mode 100644 index 0000000..aede68c --- /dev/null +++ b/README.md @@ -0,0 +1,129 @@ +This is the external Buildroot repository used to build system images and +updates for the MynaPlayer project. + +Building +-------- + +Building MynaPlayer is an easy process, though it requires decent hardware. + +First install Buildroot's required dependencies. See: +[The buildroot user manual, chapter 2: System requirements](https://buildroot.org/downloads/manual/manual.html#requirement) + +Then set up the required source code: + +``` +mkdir MYNA && cd MYNA +wget 'https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.7/EasyRSA-3.0.7.tgz' +wget 'https://git.buildroot.net/buildroot/snapshot/buildroot-2020.05.1.tar.gz' +tar -xf EasyRSA-3.0.7.tgz +tar -xf buildroot-2020.05.1.tar.gz +mv EasyRSA-3.0.7 easy-rsa +mv buildroot-2020.05.1 buildroot +git clone 'https://git.lumina-sensum.com/git/LuminaSensum/buildroot-MynaPlayer.git' +export BR2_EXTERNAL="$PWD/buildroot-MynaPlayer" +cd buildroot +for p in ../buildroot-MynaPlayer/buildroot-patches/*.patch; do patch -p1 < $p; done +cd .. +``` + +Create keys for RAUC updates: + +``` +cd easy-rsa +sed -i "s/extendedKeyUsage/#extendedKeyUsage/g" easyrsa3/x509-types/code-signing +./easyrsa3/easyrsa init-pki +./easyrsa3/easyrsa build-ca +./easyrsa3/easyrsa gen-req rauc +./easyrsa3/easyrsa sign-req code-signing rauc +cd .. +cat >buildroot-MynaPlayer/scripts/certs.sh < /proc/sys/kernel/hotplug + /sbin/udevd -d || { echo "FAIL"; exit 1; } + udevadm trigger --type=subsystems --action=add + udevadm trigger --type=devices --action=add + udevadm settle --timeout=30 || echo "udevadm settle failed" + echo "done" + ;; + stop) + # Stop execution of events + udevadm control --stop-exec-queue + killall udevd + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac + + +exit 0 diff --git a/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcK b/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcK new file mode 100644 index 0000000..59e9c54 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcK @@ -0,0 +1,27 @@ +#!/bin/sh + + +# Stop all init scripts in /etc/init.d +# executing them in reversed numerical order. +# +for i in $(ls -r /etc/init.d/S??*) ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set stop + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i stop + ;; + esac +done + diff --git a/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcS b/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcS new file mode 100644 index 0000000..de41153 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/etc/init.d-overlay/rcS @@ -0,0 +1,27 @@ +#!/bin/sh + + +# Start all init scripts in /etc/init.d +# executing them in numerical order. +# +for i in /etc/init.d/S??* ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set start + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + diff --git a/board/myna-player-odyssey/rootfs_overlay/etc/inittab b/board/myna-player-odyssey/rootfs_overlay/etc/inittab new file mode 100644 index 0000000..5c12b72 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/etc/inittab @@ -0,0 +1,33 @@ +# /etc/inittab +# +# Copyright (C) 2001 Erik Andersen +# +# Note: BusyBox init doesn't support runlevels. The runlevels field is +# completely ignored by BusyBox init. If you want runlevels, use +# sysvinit. +# +# Format for each entry: ::: +# +# id == tty to run on, or empty for /dev/console +# runlevels == ignored +# action == one of sysinit, respawn, askfirst, wait, and once +# process == program to run + +# Startup the system +::sysinit:/sysinit + +# now run any rc scripts +::sysinit:/etc/init.d/rcS + +# Put a getty on the serial port +ttySTM0::respawn:/sbin/getty -L ttySTM0 0 vt100 # GENERIC_SERIAL + +# start up runit +null::respawn:/bin/runsvdir -P /var/services + +# Stuff to do for the 3-finger salute +#::ctrlaltdel:/sbin/reboot + +# Stuff to do before rebooting +::shutdown:/bin/killall -1 runsvdir +::shutdown:/bin/umount -a -r diff --git a/board/myna-player-odyssey/rootfs_overlay/sysinit b/board/myna-player-odyssey/rootfs_overlay/sysinit new file mode 100755 index 0000000..9836576 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/sysinit @@ -0,0 +1,13 @@ +#!/bin/sh +/bin/mount -t proc none /proc& +(mkdir -p /dev/pts && /bin/mount -t devpts none /dev/pts)& +(mkdir -p /dev/shm && /bin/mount -t tmpfs none /dev/shm)& +/bin/mount -t sysfs none /sys& +/bin/mount -t tmpfs none /tmp& +/bin/mount -t tmpfs none /run& +#/bin/ln -sf /proc/self/fd /dev/fd& +#/bin/ln -sf /proc/self/fd/0 /dev/stdin& +#/bin/ln -sf /proc/self/fd/1 /dev/stdout& +#/bin/ln -sf /proc/self/fd/2 /dev/stderr& +/bin/hostname -F /etc/hostname& +wait diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/NetworkManager/run b/board/myna-player-odyssey/rootfs_overlay/var/services/NetworkManager/run new file mode 100755 index 0000000..0ba0aaf --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/NetworkManager/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/sbin/NetworkManager --no-daemon diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/dbus/run b/board/myna-player-odyssey/rootfs_overlay/var/services/dbus/run new file mode 100755 index 0000000..34dbd05 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/dbus/run @@ -0,0 +1,6 @@ +#!/bin/sh +mkdir -p /var/run/dbus +mkdir -p /var/lock/subsys +mkdir -p /tmp/dbus +dbus-uuidgen --ensure +exec dbus-daemon --system --nofork diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/klogd/run b/board/myna-player-odyssey/rootfs_overlay/var/services/klogd/run new file mode 100755 index 0000000..376f9af --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/klogd/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec klogd -n diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/lifepo4wered-daemon/run b/board/myna-player-odyssey/rootfs_overlay/var/services/lifepo4wered-daemon/run new file mode 100755 index 0000000..08e2f6e --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/lifepo4wered-daemon/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/sbin/lifepo4wered-daemon -f diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/rauc/run b/board/myna-player-odyssey/rootfs_overlay/var/services/rauc/run new file mode 100755 index 0000000..4eae1f3 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/rauc/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/rauc --mount=/run/rauc service diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/rngd/run b/board/myna-player-odyssey/rootfs_overlay/var/services/rngd/run new file mode 100755 index 0000000..be9b198 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/rngd/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec rngd -f diff --git a/board/myna-player-odyssey/rootfs_overlay/var/services/syslogd/run b/board/myna-player-odyssey/rootfs_overlay/var/services/syslogd/run new file mode 100755 index 0000000..cdcfeaf --- /dev/null +++ b/board/myna-player-odyssey/rootfs_overlay/var/services/syslogd/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec syslogd -n diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0001-dt-bindings-vendor-prefixes-add-Seeed-Studio.patch b/board/myna-player-odyssey/rootfs_patches/linux/0001-dt-bindings-vendor-prefixes-add-Seeed-Studio.patch deleted file mode 100644 index af9007c..0000000 --- a/board/myna-player-odyssey/rootfs_patches/linux/0001-dt-bindings-vendor-prefixes-add-Seeed-Studio.patch +++ /dev/null @@ -1,160 +0,0 @@ -From patchwork Fri Jul 31 14:30:51 2020 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -X-Patchwork-Submitter: Marcin Sloniewski -X-Patchwork-Id: 11695067 -Return-Path: - -Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org - [172.30.200.123]) - by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B9F21722 - for ; - Fri, 31 Jul 2020 14:31:27 +0000 (UTC) -Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) - (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) - (No client certificate requested) - by mail.kernel.org (Postfix) with ESMTPS id 92601208E4 - for ; - Fri, 31 Jul 2020 14:31:27 +0000 (UTC) -Authentication-Results: mail.kernel.org; - dkim=pass (2048-bit key) header.d=lists.infradead.org - header.i=@lists.infradead.org header.b="Lt3YNq+v"; - dkim=fail reason="signature verification failed" (2048-bit key) - header.d=gmail.com header.i=@gmail.com header.b="rooF5Y/L" -DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 92601208E4 -Authentication-Results: mail.kernel.org; - dmarc=fail (p=none dis=none) header.from=gmail.com -Authentication-Results: mail.kernel.org; - spf=none - smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org -DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; - d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: - Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: - List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: - Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender - :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; - bh=5bfzbNe1z8q22R2VERGYLDMIQrfP7PggkAr/XL6D3mw=; b=Lt3YNq+vn+BoHN23MO3PZGlHVm - dqrgDQoV1elTWeHOcV6CkwIlovqZi8lwX+gBgjtKkkV+zYUS/kZiL+xI2L6R99cHzyqzJs/1PWlmJ - 27ySLX2cDxUVywgtQHJevjS9X6HqxUcwcU0K0pjpGimxqORMfVAU+Z4oRAlFTxgPs0sv2YaqhJmvk - GMjjg/yUqXA9nc6/vRZLWs2eOj/gPJ8MHa9IW25qB6cSgaVNlSTScEdZcC1TOyRW3zRW9WXFS/aO7 - hOjOksgfh5/LdBQK58rQ8ET42v8hmowPUckNRoLYOeScRel0omz6J3Cn/lvDHdr+ghoXw0ofj0nKR - qitF9cJQ==; -Received: from localhost ([::1] helo=merlin.infradead.org) - by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) - id 1k1W43-0007vm-3P; Fri, 31 Jul 2020 14:31:15 +0000 -Received: from mail-ej1-x641.google.com ([2a00:1450:4864:20::641]) - by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) - id 1k1W3z-0007uF-H5 - for linux-arm-kernel@lists.infradead.org; Fri, 31 Jul 2020 14:31:12 +0000 -Received: by mail-ej1-x641.google.com with SMTP id f24so11136917ejx.6 - for ; - Fri, 31 Jul 2020 07:31:09 -0700 (PDT) -DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; - h=from:to:cc:subject:date:message-id:mime-version - :content-transfer-encoding; - bh=TnSVvBPLgxOr7Okxa4+yFdbMwIKkVndKbRuepRfY/Zs=; - b=rooF5Y/LejVp6e+lkheBsBcOKwrWhHZzYXHf1m9XAOFNv87fHiPOh8t6nVxb4zVyuN - QDpyFEFyiTwlk8xKArO+TX4KUIY++pi8GQ2aMGQeJFu49tn7aim8G/kueOGS8tfEIrpQ - m8Eb/crBpL+aHjgty9b9jP36O8almuZhO0THmWfwhZOGRGmaQuoebyiVPkJPoZnWfb12 - IcMNREwMZeqv+FGO3XG63F7LBQcdiGEnQayFjSUl4e7jJzqbqQliGxVniSm03H8C3sTg - +qszh99IXLCLTlEOsKO0vTmCHnKjuYFc0sYdgnG4a917/G1WL5EJUUsElxaTKZz5mVRc - 1i7g== -X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; - d=1e100.net; s=20161025; - h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version - :content-transfer-encoding; - bh=TnSVvBPLgxOr7Okxa4+yFdbMwIKkVndKbRuepRfY/Zs=; - b=A2u1MUjMrLVbjxjdbxnHDqDlmYaHkw8q9FotqDJF3dCvdJvvyU2NxIeq5/j6zq3jpO - j31RaU/DPYHiSg5kplfdrgkSOZK+K0lTavU+S+ywyshX/2yCVI8nCl9OzuMkEov8bT/m - 43QDejJpL/SmgZRKu+LNQ8zDDpsj1NshF8wDd4xA0IKyL+kagoN5c00qIq3a6sIIrRJ2 - pgcyJ2akaa4WaIZIWOEMgTbYRLKi50FZSaPZWv90+dWNZxqeofPSMfNUkMWaB2FDVP/7 - 34cNkN4DkZW4PAiVWgnCAFOhW+uzvh/bb9ur5uuVgPHZlhSAXK7k6MxSqtGByrv5anj4 - 9AbQ== -X-Gm-Message-State: AOAM533qdoXA7OhRKnodwjuFemgbnuzB6M1Ezj5dK16V2RmuS2yAoxoY - Fh9bBRKH+4RTO9BMpR49AGXz1Asvs5w= -X-Google-Smtp-Source: - ABdhPJybf/XZgZB/Q/5YD/PtnotUkX1ldsL6Uu0I4qModtm+zX/Ggq7KmPlZXxlfNH2FA8a1tV0ngA== -X-Received: by 2002:a17:906:269a:: with SMTP id - t26mr4331783ejc.286.1596205867955; - Fri, 31 Jul 2020 07:31:07 -0700 (PDT) -Received: from blackhead.home ([2a01:112f:a1c:7900:7316:ce1e:7b0b:6bd7]) - by smtp.gmail.com with ESMTPSA id t19sm9749213edw.63.2020.07.31.07.31.05 - (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); - Fri, 31 Jul 2020 07:31:06 -0700 (PDT) -From: Marcin Sloniewski -To: linux-arm-kernel@lists.infradead.org -Subject: [PATCH v6 1/3] dt-bindings: vendor-prefixes: add Seeed Studio -Date: Fri, 31 Jul 2020 16:30:51 +0200 -Message-Id: <20200731143053.44866-1-marcin.sloniewski@gmail.com> -X-Mailer: git-send-email 2.27.0 -MIME-Version: 1.0 -X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 -X-CRM114-CacheID: sfid-20200731_103111_656264_F6F92A11 -X-CRM114-Status: GOOD ( 11.66 ) -X-Spam-Score: -0.2 (/) -X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: - Content analysis details: (-0.2 points) - pts rule name description - ---- ---------------------- - -------------------------------------------------- - -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, - no trust [2a00:1450:4864:20:0:0:0:641 listed in] - [list.dnswl.org] - 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail - provider [marcin.sloniewski[at]gmail.com] - -0.0 SPF_PASS SPF: sender matches SPF record - 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record - -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from - envelope-from domain - 0.1 DKIM_SIGNED Message has a DKIM or DK signature, - not necessarily - valid - -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature - -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from - author's domain -X-BeenThere: linux-arm-kernel@lists.infradead.org -X-Mailman-Version: 2.1.29 -Precedence: list -List-Id: -List-Unsubscribe: - , - -List-Archive: -List-Post: -List-Help: -List-Subscribe: - , - -Cc: robh@kernel.org, a.fatoum@pengutronix.de, alexandre.torgue@st.com, - stephan@gerhold.net, mani@kernel.org, heiko.stuebner@theobroma-systems.com, - linus.walleij@linaro.org, linux-kernel@vger.kernel.org, lkundrak@v3.sk, - marcin.sloniewski@gmail.com, robh+dt@kernel.org, broonie@kernel.org, - mcoquelin.stm32@gmail.com, allen.chen@ite.com.tw, sam@ravnborg.org, - linux-stm32@st-md-mailman.stormreply.com, devicetree@vger.kernel.org -Sender: "linux-arm-kernel" -Errors-To: - linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org - -Add the "seeed" vendor prefix for Seeed Technology Co., Ltd -Website: https://www.seeedstudio.com/ - -Signed-off-by: Marcin Sloniewski -Acked-by: Rob Herring ---- - Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml -index 9aeab66be85f..7dd03b3e9d3c 100644 ---- a/Documentation/devicetree/bindings/vendor-prefixes.yaml -+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml -@@ -902,6 +902,8 @@ patternProperties: - description: Schindler - "^seagate,.*": - description: Seagate Technology PLC -+ "^seeed,.*": -+ description: Seeed Technology Co., Ltd - "^seirobotics,.*": - description: Shenzhen SEI Robotics Co., Ltd - "^semtech,.*": diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0001-v6-3-3-ARM-dts-stm32-add-initial-support-for-stm32mp.patch b/board/myna-player-odyssey/rootfs_patches/linux/0001-v6-3-3-ARM-dts-stm32-add-initial-support-for-stm32mp.patch new file mode 100644 index 0000000..5318fc2 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0001-v6-3-3-ARM-dts-stm32-add-initial-support-for-stm32mp.patch @@ -0,0 +1,425 @@ +From b6f41804c3bc6f3bd674457361d94e405a655012 Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Tue, 4 Aug 2020 08:53:05 +1000 +Subject: [PATCH 1/7] [v6,3/3] ARM: dts: stm32: add initial support for + stm32mp157-odyssey board + +--- + arch/arm/boot/dts/Makefile | 3 +- + arch/arm/boot/dts/stm32mp15-pinctrl.dtsi | 18 ++ + .../arm/boot/dts/stm32mp157c-odyssey-som.dtsi | 276 ++++++++++++++++++ + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 76 +++++ + 4 files changed, 372 insertions(+), 1 deletion(-) + create mode 100644 arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi + create mode 100644 arch/arm/boot/dts/stm32mp157c-odyssey.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index e6a1cac0bfc7..a3ea2301c82c 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -1047,7 +1047,8 @@ dtb-$(CONFIG_ARCH_STM32) += \ + stm32mp157c-dk2.dtb \ + stm32mp157c-ed1.dtb \ + stm32mp157c-ev1.dtb \ +- stm32mp157c-lxa-mc1.dtb ++ stm32mp157c-lxa-mc1.dtb \ ++ stm32mp157c-odyssey.dtb + dtb-$(CONFIG_MACH_SUN4I) += \ + sun4i-a10-a1000.dtb \ + sun4i-a10-ba10-tvbox.dtb \ +diff --git a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +index 7eb858732d6d..2f75b631feac 100644 +--- a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi ++++ b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +@@ -1438,6 +1438,24 @@ + }; + }; + ++ sdmmc2_d47_pins_d: sdmmc2-d47-3 { ++ pins { ++ pinmux = , /* SDMMC2_D4 */ ++ , /* SDMMC2_D5 */ ++ , /* SDMMC2_D6 */ ++ ; /* SDMMC2_D7 */ ++ }; ++ }; ++ ++ sdmmc2_d47_sleep_pins_d: sdmmc2-d47-sleep-3 { ++ pins { ++ pinmux = , /* SDMMC2_D4 */ ++ , /* SDMMC2_D5 */ ++ , /* SDMMC2_D6 */ ++ ; /* SDMMC2_D7 */ ++ }; ++ }; ++ + sdmmc3_b4_pins_a: sdmmc3-b4-0 { + pins1 { + pinmux = , /* SDMMC3_D0 */ +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi b/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi +new file mode 100644 +index 000000000000..6cf49a0a9e69 +--- /dev/null ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi +@@ -0,0 +1,276 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) ++/* ++ * Copyright (C) 2020 Marcin Sloniewski . ++ */ ++ ++/dts-v1/; ++ ++#include "stm32mp157.dtsi" ++#include "stm32mp15xc.dtsi" ++#include "stm32mp15-pinctrl.dtsi" ++#include "stm32mp15xxac-pinctrl.dtsi" ++#include ++#include ++#include ++ ++/ { ++ model = "Seeed Studio Odyssey-STM32MP157C SOM"; ++ compatible = "seeed,stm32mp157c-odyssey-som", "st,stm32mp157"; ++ ++ memory@c0000000 { ++ device_type = "memory"; ++ reg = <0xc0000000 0x20000000>; ++ }; ++ ++ reserved-memory { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ranges; ++ ++ mcuram2: mcuram2@10000000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x10000000 0x40000>; ++ no-map; ++ }; ++ ++ vdev0vring0: vdev0vring0@10040000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x10040000 0x1000>; ++ no-map; ++ }; ++ ++ vdev0vring1: vdev0vring1@10041000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x10041000 0x1000>; ++ no-map; ++ }; ++ ++ vdev0buffer: vdev0buffer@10042000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x10042000 0x4000>; ++ no-map; ++ }; ++ ++ mcuram: mcuram@30000000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x30000000 0x40000>; ++ no-map; ++ }; ++ ++ retram: retram@38000000 { ++ compatible = "shared-dma-pool"; ++ reg = <0x38000000 0x10000>; ++ no-map; ++ }; ++ ++ gpu_reserved: gpu@d4000000 { ++ reg = <0xd4000000 0x4000000>; ++ no-map; ++ }; ++ }; ++ ++ led { ++ compatible = "gpio-leds"; ++ led-blue { ++ color = ; ++ function = LED_FUNCTION_HEARTBEAT; ++ gpios = <&gpiog 3 GPIO_ACTIVE_HIGH>; ++ linux,default-trigger = "heartbeat"; ++ }; ++ }; ++}; ++ ++&gpu { ++ contiguous-area = <&gpu_reserved>; ++ status = "okay"; ++}; ++ ++&i2c2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&i2c2_pins_a>; ++ i2c-scl-rising-time-ns = <185>; ++ i2c-scl-falling-time-ns = <20>; ++ status = "okay"; ++ /* spare dmas for other usage */ ++ /delete-property/dmas; ++ /delete-property/dma-names; ++ ++ pmic: stpmic@33 { ++ compatible = "st,stpmic1"; ++ reg = <0x33>; ++ interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; ++ interrupt-controller; ++ #interrupt-cells = <2>; ++ ++ regulators { ++ compatible = "st,stpmic1-regulators"; ++ ldo1-supply = <&v3v3>; ++ ldo3-supply = <&vdd_ddr>; ++ ldo6-supply = <&v3v3>; ++ pwr_sw1-supply = <&bst_out>; ++ pwr_sw2-supply = <&bst_out>; ++ ++ vddcore: buck1 { ++ regulator-name = "vddcore"; ++ regulator-min-microvolt = <800000>; ++ regulator-max-microvolt = <1350000>; ++ regulator-always-on; ++ regulator-initial-mode = <0>; ++ regulator-over-current-protection; ++ }; ++ ++ vdd_ddr: buck2 { ++ regulator-name = "vdd_ddr"; ++ regulator-min-microvolt = <1350000>; ++ regulator-max-microvolt = <1350000>; ++ regulator-always-on; ++ regulator-initial-mode = <0>; ++ regulator-over-current-protection; ++ }; ++ ++ vdd: buck3 { ++ regulator-name = "vdd"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ st,mask-reset; ++ regulator-initial-mode = <0>; ++ regulator-over-current-protection; ++ }; ++ ++ v3v3: buck4 { ++ regulator-name = "v3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ regulator-over-current-protection; ++ regulator-initial-mode = <0>; ++ }; ++ ++ v1v8_audio: ldo1 { ++ regulator-name = "v1v8_audio"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-always-on; ++ interrupts = ; ++ }; ++ ++ v3v3_hdmi: ldo2 { ++ regulator-name = "v3v3_hdmi"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ interrupts = ; ++ }; ++ ++ vtt_ddr: ldo3 { ++ regulator-name = "vtt_ddr"; ++ regulator-min-microvolt = <500000>; ++ regulator-max-microvolt = <750000>; ++ regulator-always-on; ++ regulator-over-current-protection; ++ }; ++ ++ vdd_usb: ldo4 { ++ regulator-name = "vdd_usb"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ interrupts = ; ++ }; ++ ++ vdda: ldo5 { ++ regulator-name = "vdda"; ++ regulator-min-microvolt = <2900000>; ++ regulator-max-microvolt = <2900000>; ++ interrupts = ; ++ regulator-boot-on; ++ }; ++ ++ v1v2_hdmi: ldo6 { ++ regulator-name = "v1v2_hdmi"; ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-always-on; ++ interrupts = ; ++ }; ++ ++ vref_ddr: vref_ddr { ++ regulator-name = "vref_ddr"; ++ regulator-always-on; ++ regulator-over-current-protection; ++ }; ++ ++ bst_out: boost { ++ regulator-name = "bst_out"; ++ interrupts = ; ++ }; ++ ++ vbus_otg: pwr_sw1 { ++ regulator-name = "vbus_otg"; ++ interrupts = ; ++ }; ++ ++ vbus_sw: pwr_sw2 { ++ regulator-name = "vbus_sw"; ++ interrupts = ; ++ regulator-active-discharge; ++ }; ++ }; ++ ++ onkey { ++ compatible = "st,stpmic1-onkey"; ++ interrupts = , ; ++ interrupt-names = "onkey-falling", "onkey-rising"; ++ power-off-time-sec = <10>; ++ }; ++ ++ watchdog { ++ compatible = "st,stpmic1-wdt"; ++ status = "disabled"; ++ }; ++ }; ++}; ++ ++&ipcc { ++ status = "okay"; ++}; ++ ++&iwdg2 { ++ timeout-sec = <32>; ++ status = "okay"; ++}; ++ ++&m4_rproc { ++ memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, ++ <&vdev0vring1>, <&vdev0buffer>; ++ mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; ++ mbox-names = "vq0", "vq1", "shutdown"; ++ interrupt-parent = <&exti>; ++ interrupts = <68 1>; ++ status = "okay"; ++}; ++ ++&rng1 { ++ status = "okay"; ++}; ++ ++&rtc { ++ status = "okay"; ++}; ++ ++&sdmmc2 { ++ pinctrl-names = "default", "opendrain", "sleep"; ++ pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_d>; ++ pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_d>; ++ pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_d>; ++ non-removable; ++ no-sd; ++ no-sdio; ++ st,neg-edge; ++ bus-width = <8>; ++ vmmc-supply = <&v3v3>; ++ vqmmc-supply = <&v3v3>; ++ mmc-ddr-3_3v; ++ status = "okay"; ++}; ++ +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +new file mode 100644 +index 000000000000..f2ac92f1ad10 +--- /dev/null ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -0,0 +1,76 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) ++/* ++ * Copyright (C) 2020 Marcin Sloniewski . ++ */ ++ ++/dts-v1/; ++ ++#include "stm32mp157c-odyssey-som.dtsi" ++ ++/ { ++ model = "Seeed Studio Odyssey-STM32MP157C Board"; ++ compatible = "seeed,stm32mp157c-odyssey", ++ "seeed,stm32mp157c-odyssey-som", "st,stm32mp157"; ++ ++ aliases { ++ ethernet0 = ðernet0; ++ serial0 = &uart4; ++ }; ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ }; ++}; ++ ++ðernet0 { ++ status = "okay"; ++ pinctrl-0 = <ðernet0_rgmii_pins_a>; ++ pinctrl-1 = <ðernet0_rgmii_sleep_pins_a>; ++ pinctrl-names = "default", "sleep"; ++ phy-mode = "rgmii-id"; ++ max-speed = <1000>; ++ phy-handle = <&phy0>; ++ ++ mdio0 { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ compatible = "snps,dwmac-mdio"; ++ phy0: ethernet-phy@7 { /* KSZ9031RN */ ++ reg = <7>; ++ reset-gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; /* ETH_RST# */ ++ reset-assert-us = <10000>; ++ reset-deassert-us = <300>; ++ }; ++ }; ++}; ++ ++&i2c1 { ++ pinctrl-names = "default", "sleep"; ++ pinctrl-0 = <&i2c1_pins_a>; ++ pinctrl-1 = <&i2c1_sleep_pins_a>; ++ i2c-scl-rising-time-ns = <100>; ++ i2c-scl-falling-time-ns = <7>; ++ status = "okay"; ++ /delete-property/dmas; ++ /delete-property/dma-names; ++}; ++ ++&sdmmc1 { ++ pinctrl-names = "default", "opendrain", "sleep"; ++ pinctrl-0 = <&sdmmc1_b4_pins_a>; ++ pinctrl-1 = <&sdmmc1_b4_od_pins_a>; ++ pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>; ++ cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; ++ disable-wp; ++ st,neg-edge; ++ bus-width = <4>; ++ vmmc-supply = <&v3v3>; ++ status = "okay"; ++}; ++ ++&uart4 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart4_pins_a>; ++ status = "okay"; ++}; ++ +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0002-ARM-dts-stm32-add-initial-support-for-stm32mp157-odyssey-board.patch b/board/myna-player-odyssey/rootfs_patches/linux/0002-ARM-dts-stm32-add-initial-support-for-stm32mp157-odyssey-board.patch deleted file mode 100644 index 12ce50e..0000000 --- a/board/myna-player-odyssey/rootfs_patches/linux/0002-ARM-dts-stm32-add-initial-support-for-stm32mp157-odyssey-board.patch +++ /dev/null @@ -1,592 +0,0 @@ -From patchwork Fri Jul 31 14:30:53 2020 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -X-Patchwork-Submitter: Marcin Sloniewski -X-Patchwork-Id: 11695069 -Return-Path: - -Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org - [172.30.200.123]) - by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0E2F7722 - for ; - Fri, 31 Jul 2020 14:31:41 +0000 (UTC) -Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) - (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) - (No client certificate requested) - by mail.kernel.org (Postfix) with ESMTPS id CDF28206FA - for ; - Fri, 31 Jul 2020 14:31:40 +0000 (UTC) -Authentication-Results: mail.kernel.org; - dkim=pass (2048-bit key) header.d=lists.infradead.org - header.i=@lists.infradead.org header.b="MVrwINxK"; - dkim=fail reason="signature verification failed" (2048-bit key) - header.d=gmail.com header.i=@gmail.com header.b="SZ9oG3H2" -DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CDF28206FA -Authentication-Results: mail.kernel.org; - dmarc=fail (p=none dis=none) header.from=gmail.com -Authentication-Results: mail.kernel.org; - spf=none - smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org -DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; - d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: - Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: - List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: - Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: - Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; - bh=ZqBehaVL3E9eAw7j29eP6hbbkkiJUDH1GEZqX8aJ6vw=; b=MVrwINxKoSfoJJrDJ6zIwcX37 - 1GLYn4tMDueqvtdwAOeCFeZXTUgKsF7XBTM36eEeqZl8DXUb4PcVqIl2uoaar1n07kU7g/XE5Z5Ub - fo1XQ6dROPOsp9Xyow/fq97tjuL4mnlMWy3Rc9a/KRXR/cjl0oVhK2E3KrtQjPDfDZI33QGljUs1l - 8KEu12M3vEcdIhnLMEgeUllRsw8EVOzTHWcRemhwiP0LuU8kNQri8fLuxmLiY7eyaU5HIx0Krxc5N - A39mlWUl9iBrvGgjZp9rGKHZWI8qi3eSRaEatIgFfjq5JLqzaZdAHP9/HnlCKsB6bqYDmrsmjOAp1 - GgcQA+G9A==; -Received: from localhost ([::1] helo=merlin.infradead.org) - by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) - id 1k1W4G-0007yo-4O; Fri, 31 Jul 2020 14:31:28 +0000 -Received: from mail-ed1-x544.google.com ([2a00:1450:4864:20::544]) - by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) - id 1k1W43-0007vl-7u - for linux-arm-kernel@lists.infradead.org; Fri, 31 Jul 2020 14:31:17 +0000 -Received: by mail-ed1-x544.google.com with SMTP id l23so8795737edv.11 - for ; - Fri, 31 Jul 2020 07:31:14 -0700 (PDT) -DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; - h=from:to:cc:subject:date:message-id:in-reply-to:references - :mime-version:content-transfer-encoding; - bh=gXlatC5AsQuoD+3uBEzYu5ZAaHxOzY+84bpiZ1VQWHU=; - b=SZ9oG3H2bHMpUbOj4x4iCst17tROZ9eCea4P1DW0ECVd1hFkPes3cu0AL/XuSpPGw/ - WkesdNpda3BgS++sJrC7xXCwguI2Td+FW4uoCTNnISb4e493jpVveY05k2AgKffIwpyB - Yjq3WTBKWAXCAS/p8PqSAoqicx7Rd1ixJ9WjnfumkCj7USMzHRjmSvYObi9BFNZmd6vA - 0m8oAlHULlRwp2IpHxJtjZn9FA8CMEl4wxzxKAYMPnvJ+Pxgj+oqUIYNYQ9qQikI5Rwa - 7dJlplf1iCDpK4H3fRXRS2zmnej+aTIx/dBmtmyBrkNEKukxreR/FGM6qALVkNG3s0F5 - wAfQ== -X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; - d=1e100.net; s=20161025; - h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to - :references:mime-version:content-transfer-encoding; - bh=gXlatC5AsQuoD+3uBEzYu5ZAaHxOzY+84bpiZ1VQWHU=; - b=WBpvi05OfM9vbn8I/rsaI9tdORKkPgIt2QagURBkQuhQUv+MUVYxBn0lQrwLsDupfE - dTd/KSF76FM48hi9Qpw9vWPCCjN3MbbxfCubOfitA6ERYn6UPJz0oKQ/q+R2PxWUe94j - 13v3fBMuk4K/F5OqoP307+3MEm7N+VhBb1SMpb7auCFpW5s/gbyCZgCmqK+nL+2LuH3S - L162gEzFnRnh+cVWTsmQO8ncEk8H1NjpG88bKcChy+l/s8YkUJyy/jrXOMcgKPtCnMMp - nk9E7AzVcCI5q9p48caCM7IyP1PsaIQXzGf4N50iXOtl99bmfT0dMvYoItedjAf3QQgL - 0p3w== -X-Gm-Message-State: AOAM5319nwH6eaYvyTpx6i1M+SMQF/vZWNWeyp+U85+s7yi4S3itOjhy - tg/ktc9PBOlYlDo4U7GSIGyw40qPJ0Q= -X-Google-Smtp-Source: - ABdhPJw0QytN7CLiwpQs2xmXp+75EYfsbHr8vacXofDKzvnNX7QWIqKT/e3FiqX8+/8CLuUUrimiJw== -X-Received: by 2002:a05:6402:1845:: with SMTP id - v5mr4340661edy.66.1596205873413; - Fri, 31 Jul 2020 07:31:13 -0700 (PDT) -Received: from blackhead.home ([2a01:112f:a1c:7900:7316:ce1e:7b0b:6bd7]) - by smtp.gmail.com with ESMTPSA id t19sm9749213edw.63.2020.07.31.07.31.11 - (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); - Fri, 31 Jul 2020 07:31:12 -0700 (PDT) -From: Marcin Sloniewski -To: linux-arm-kernel@lists.infradead.org -Subject: [PATCH v6 3/3] ARM: dts: stm32: add initial support for - stm32mp157-odyssey board -Date: Fri, 31 Jul 2020 16:30:53 +0200 -Message-Id: <20200731143053.44866-3-marcin.sloniewski@gmail.com> -X-Mailer: git-send-email 2.27.0 -In-Reply-To: <20200731143053.44866-1-marcin.sloniewski@gmail.com> -References: <20200731143053.44866-1-marcin.sloniewski@gmail.com> -MIME-Version: 1.0 -X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 -X-CRM114-CacheID: sfid-20200731_103115_377803_90B11FBF -X-CRM114-Status: GOOD ( 22.84 ) -X-Spam-Score: -0.2 (/) -X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: - Content analysis details: (-0.2 points) - pts rule name description - ---- ---------------------- - -------------------------------------------------- - -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, - no trust [2a00:1450:4864:20:0:0:0:544 listed in] - [list.dnswl.org] - 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail - provider [marcin.sloniewski[at]gmail.com] - -0.0 SPF_PASS SPF: sender matches SPF record - 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record - -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from - envelope-from domain - 0.1 DKIM_SIGNED Message has a DKIM or DK signature, - not necessarily - valid - -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature - -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from - author's domain -X-BeenThere: linux-arm-kernel@lists.infradead.org -X-Mailman-Version: 2.1.29 -Precedence: list -List-Id: -List-Unsubscribe: - , - -List-Archive: -List-Post: -List-Help: -List-Subscribe: - , - -Cc: robh@kernel.org, a.fatoum@pengutronix.de, alexandre.torgue@st.com, - stephan@gerhold.net, mani@kernel.org, heiko.stuebner@theobroma-systems.com, - linus.walleij@linaro.org, linux-kernel@vger.kernel.org, lkundrak@v3.sk, - marcin.sloniewski@gmail.com, robh+dt@kernel.org, broonie@kernel.org, - mcoquelin.stm32@gmail.com, allen.chen@ite.com.tw, sam@ravnborg.org, - linux-stm32@st-md-mailman.stormreply.com, devicetree@vger.kernel.org -Sender: "linux-arm-kernel" -Errors-To: - linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org - -Add support for Seeed Studio's stm32mp157c odyssey board. -Board consists of SoM with stm32mp157c with 4GB eMMC and 512 MB DDR3 RAM -and carrier board with USB and ETH interfaces, SD card connector, -wifi and BT chip AP6236. - -In this patch only basic kernel boot is supported and interfacing -SD card and on-board eMMC. - -Signed-off-by: Marcin Sloniewski ---- - -Changes in v6: -- add reset pin for eth phy -- move pinctrl for sdmmc2 to stm32mp15-pinctrl.dtsi - -Changes in v5: -- fix schema for board's dts - -Changes in v4: -- add seeed,stm32mp157c-odyssey-som in compatible - for carrier board -- fix sdmmc2 interface by changing one of the pins - to use -- change eth phy address to 7 - -Changes in v3: -- fix compilation on tip of stm32-next - due to change in names for pinctrl -- fix deprecated binding for led node -- fix redundant "okay" statuses -- add phy part number for eth in comment - -Changes in v2: -- add new odyssey dts to Makefile - - - arch/arm/boot/dts/Makefile | 3 +- - arch/arm/boot/dts/stm32mp15-pinctrl.dtsi | 18 ++ - .../arm/boot/dts/stm32mp157c-odyssey-som.dtsi | 276 ++++++++++++++++++ - arch/arm/boot/dts/stm32mp157c-odyssey.dts | 76 +++++ - 4 files changed, 372 insertions(+), 1 deletion(-) - create mode 100644 arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi - create mode 100644 arch/arm/boot/dts/stm32mp157c-odyssey.dts - -diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index e6a1cac0bfc7..a3ea2301c82c 100644 ---- a/arch/arm/boot/dts/Makefile -+++ b/arch/arm/boot/dts/Makefile -@@ -1047,7 +1047,8 @@ dtb-$(CONFIG_ARCH_STM32) += \ - stm32mp157c-dk2.dtb \ - stm32mp157c-ed1.dtb \ - stm32mp157c-ev1.dtb \ -- stm32mp157c-lxa-mc1.dtb -+ stm32mp157c-lxa-mc1.dtb \ -+ stm32mp157c-odyssey.dtb - dtb-$(CONFIG_MACH_SUN4I) += \ - sun4i-a10-a1000.dtb \ - sun4i-a10-ba10-tvbox.dtb \ -diff --git a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -index b5a66429670c..a47eaecbde42 100644 ---- a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -+++ b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -@@ -1437,6 +1437,24 @@ pins { - }; - }; - -+ sdmmc2_d47_pins_d: sdmmc2-d47-3 { -+ pins { -+ pinmux = , /* SDMMC2_D4 */ -+ , /* SDMMC2_D5 */ -+ , /* SDMMC2_D6 */ -+ ; /* SDMMC2_D7 */ -+ }; -+ }; -+ -+ sdmmc2_d47_sleep_pins_d: sdmmc2-d47-sleep-3 { -+ pins { -+ pinmux = , /* SDMMC2_D4 */ -+ , /* SDMMC2_D5 */ -+ , /* SDMMC2_D6 */ -+ ; /* SDMMC2_D7 */ -+ }; -+ }; -+ - sdmmc3_b4_pins_a: sdmmc3-b4-0 { - pins1 { - pinmux = , /* SDMMC3_D0 */ -diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi b/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi -new file mode 100644 -index 000000000000..6cf49a0a9e69 ---- /dev/null -+++ b/arch/arm/boot/dts/stm32mp157c-odyssey-som.dtsi -@@ -0,0 +1,276 @@ -+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) -+/* -+ * Copyright (C) 2020 Marcin Sloniewski . -+ */ -+ -+/dts-v1/; -+ -+#include "stm32mp157.dtsi" -+#include "stm32mp15xc.dtsi" -+#include "stm32mp15-pinctrl.dtsi" -+#include "stm32mp15xxac-pinctrl.dtsi" -+#include -+#include -+#include -+ -+/ { -+ model = "Seeed Studio Odyssey-STM32MP157C SOM"; -+ compatible = "seeed,stm32mp157c-odyssey-som", "st,stm32mp157"; -+ -+ memory@c0000000 { -+ device_type = "memory"; -+ reg = <0xc0000000 0x20000000>; -+ }; -+ -+ reserved-memory { -+ #address-cells = <1>; -+ #size-cells = <1>; -+ ranges; -+ -+ mcuram2: mcuram2@10000000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x10000000 0x40000>; -+ no-map; -+ }; -+ -+ vdev0vring0: vdev0vring0@10040000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x10040000 0x1000>; -+ no-map; -+ }; -+ -+ vdev0vring1: vdev0vring1@10041000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x10041000 0x1000>; -+ no-map; -+ }; -+ -+ vdev0buffer: vdev0buffer@10042000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x10042000 0x4000>; -+ no-map; -+ }; -+ -+ mcuram: mcuram@30000000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x30000000 0x40000>; -+ no-map; -+ }; -+ -+ retram: retram@38000000 { -+ compatible = "shared-dma-pool"; -+ reg = <0x38000000 0x10000>; -+ no-map; -+ }; -+ -+ gpu_reserved: gpu@d4000000 { -+ reg = <0xd4000000 0x4000000>; -+ no-map; -+ }; -+ }; -+ -+ led { -+ compatible = "gpio-leds"; -+ led-blue { -+ color = ; -+ function = LED_FUNCTION_HEARTBEAT; -+ gpios = <&gpiog 3 GPIO_ACTIVE_HIGH>; -+ linux,default-trigger = "heartbeat"; -+ }; -+ }; -+}; -+ -+&gpu { -+ contiguous-area = <&gpu_reserved>; -+ status = "okay"; -+}; -+ -+&i2c2 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&i2c2_pins_a>; -+ i2c-scl-rising-time-ns = <185>; -+ i2c-scl-falling-time-ns = <20>; -+ status = "okay"; -+ /* spare dmas for other usage */ -+ /delete-property/dmas; -+ /delete-property/dma-names; -+ -+ pmic: stpmic@33 { -+ compatible = "st,stpmic1"; -+ reg = <0x33>; -+ interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; -+ interrupt-controller; -+ #interrupt-cells = <2>; -+ -+ regulators { -+ compatible = "st,stpmic1-regulators"; -+ ldo1-supply = <&v3v3>; -+ ldo3-supply = <&vdd_ddr>; -+ ldo6-supply = <&v3v3>; -+ pwr_sw1-supply = <&bst_out>; -+ pwr_sw2-supply = <&bst_out>; -+ -+ vddcore: buck1 { -+ regulator-name = "vddcore"; -+ regulator-min-microvolt = <800000>; -+ regulator-max-microvolt = <1350000>; -+ regulator-always-on; -+ regulator-initial-mode = <0>; -+ regulator-over-current-protection; -+ }; -+ -+ vdd_ddr: buck2 { -+ regulator-name = "vdd_ddr"; -+ regulator-min-microvolt = <1350000>; -+ regulator-max-microvolt = <1350000>; -+ regulator-always-on; -+ regulator-initial-mode = <0>; -+ regulator-over-current-protection; -+ }; -+ -+ vdd: buck3 { -+ regulator-name = "vdd"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ st,mask-reset; -+ regulator-initial-mode = <0>; -+ regulator-over-current-protection; -+ }; -+ -+ v3v3: buck4 { -+ regulator-name = "v3v3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ regulator-over-current-protection; -+ regulator-initial-mode = <0>; -+ }; -+ -+ v1v8_audio: ldo1 { -+ regulator-name = "v1v8_audio"; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-always-on; -+ interrupts = ; -+ }; -+ -+ v3v3_hdmi: ldo2 { -+ regulator-name = "v3v3_hdmi"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ interrupts = ; -+ }; -+ -+ vtt_ddr: ldo3 { -+ regulator-name = "vtt_ddr"; -+ regulator-min-microvolt = <500000>; -+ regulator-max-microvolt = <750000>; -+ regulator-always-on; -+ regulator-over-current-protection; -+ }; -+ -+ vdd_usb: ldo4 { -+ regulator-name = "vdd_usb"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ interrupts = ; -+ }; -+ -+ vdda: ldo5 { -+ regulator-name = "vdda"; -+ regulator-min-microvolt = <2900000>; -+ regulator-max-microvolt = <2900000>; -+ interrupts = ; -+ regulator-boot-on; -+ }; -+ -+ v1v2_hdmi: ldo6 { -+ regulator-name = "v1v2_hdmi"; -+ regulator-min-microvolt = <1200000>; -+ regulator-max-microvolt = <1200000>; -+ regulator-always-on; -+ interrupts = ; -+ }; -+ -+ vref_ddr: vref_ddr { -+ regulator-name = "vref_ddr"; -+ regulator-always-on; -+ regulator-over-current-protection; -+ }; -+ -+ bst_out: boost { -+ regulator-name = "bst_out"; -+ interrupts = ; -+ }; -+ -+ vbus_otg: pwr_sw1 { -+ regulator-name = "vbus_otg"; -+ interrupts = ; -+ }; -+ -+ vbus_sw: pwr_sw2 { -+ regulator-name = "vbus_sw"; -+ interrupts = ; -+ regulator-active-discharge; -+ }; -+ }; -+ -+ onkey { -+ compatible = "st,stpmic1-onkey"; -+ interrupts = , ; -+ interrupt-names = "onkey-falling", "onkey-rising"; -+ power-off-time-sec = <10>; -+ }; -+ -+ watchdog { -+ compatible = "st,stpmic1-wdt"; -+ status = "disabled"; -+ }; -+ }; -+}; -+ -+&ipcc { -+ status = "okay"; -+}; -+ -+&iwdg2 { -+ timeout-sec = <32>; -+ status = "okay"; -+}; -+ -+&m4_rproc { -+ memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, -+ <&vdev0vring1>, <&vdev0buffer>; -+ mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; -+ mbox-names = "vq0", "vq1", "shutdown"; -+ interrupt-parent = <&exti>; -+ interrupts = <68 1>; -+ status = "okay"; -+}; -+ -+&rng1 { -+ status = "okay"; -+}; -+ -+&rtc { -+ status = "okay"; -+}; -+ -+&sdmmc2 { -+ pinctrl-names = "default", "opendrain", "sleep"; -+ pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_d>; -+ pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_d>; -+ pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_d>; -+ non-removable; -+ no-sd; -+ no-sdio; -+ st,neg-edge; -+ bus-width = <8>; -+ vmmc-supply = <&v3v3>; -+ vqmmc-supply = <&v3v3>; -+ mmc-ddr-3_3v; -+ status = "okay"; -+}; -+ -diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts -new file mode 100644 -index 000000000000..f2ac92f1ad10 ---- /dev/null -+++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts -@@ -0,0 +1,76 @@ -+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) -+/* -+ * Copyright (C) 2020 Marcin Sloniewski . -+ */ -+ -+/dts-v1/; -+ -+#include "stm32mp157c-odyssey-som.dtsi" -+ -+/ { -+ model = "Seeed Studio Odyssey-STM32MP157C Board"; -+ compatible = "seeed,stm32mp157c-odyssey", -+ "seeed,stm32mp157c-odyssey-som", "st,stm32mp157"; -+ -+ aliases { -+ ethernet0 = ðernet0; -+ serial0 = &uart4; -+ }; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+}; -+ -+ðernet0 { -+ status = "okay"; -+ pinctrl-0 = <ðernet0_rgmii_pins_a>; -+ pinctrl-1 = <ðernet0_rgmii_sleep_pins_a>; -+ pinctrl-names = "default", "sleep"; -+ phy-mode = "rgmii-id"; -+ max-speed = <1000>; -+ phy-handle = <&phy0>; -+ -+ mdio0 { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ compatible = "snps,dwmac-mdio"; -+ phy0: ethernet-phy@7 { /* KSZ9031RN */ -+ reg = <7>; -+ reset-gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; /* ETH_RST# */ -+ reset-assert-us = <10000>; -+ reset-deassert-us = <300>; -+ }; -+ }; -+}; -+ -+&i2c1 { -+ pinctrl-names = "default", "sleep"; -+ pinctrl-0 = <&i2c1_pins_a>; -+ pinctrl-1 = <&i2c1_sleep_pins_a>; -+ i2c-scl-rising-time-ns = <100>; -+ i2c-scl-falling-time-ns = <7>; -+ status = "okay"; -+ /delete-property/dmas; -+ /delete-property/dma-names; -+}; -+ -+&sdmmc1 { -+ pinctrl-names = "default", "opendrain", "sleep"; -+ pinctrl-0 = <&sdmmc1_b4_pins_a>; -+ pinctrl-1 = <&sdmmc1_b4_od_pins_a>; -+ pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>; -+ cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; -+ disable-wp; -+ st,neg-edge; -+ bus-width = <4>; -+ vmmc-supply = <&v3v3>; -+ status = "okay"; -+}; -+ -+&uart4 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&uart4_pins_a>; -+ status = "okay"; -+}; -+ diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0002-stm32mp157c-odyssey-Use-internal-Ethernet-clock.patch b/board/myna-player-odyssey/rootfs_patches/linux/0002-stm32mp157c-odyssey-Use-internal-Ethernet-clock.patch new file mode 100644 index 0000000..3343f08 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0002-stm32mp157c-odyssey-Use-internal-Ethernet-clock.patch @@ -0,0 +1,33 @@ +From 6f589b1dfa37cb449584b5e827ac3117369a4446 Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Tue, 4 Aug 2020 08:59:17 +1000 +Subject: [PATCH 2/7] stm32mp157c-odyssey: Use internal Ethernet clock + +This patch does two things: Set PLL4_P to 125MHz, then tell ST's +Ethernet MAC to use that as the Ethernet clock. + +This is almost the same as what Seeed does in its kernel, however ST's +vendor property 'st,eth_clk_sel', NOT 'st,eth-clk-sel' with dashes. +The dashes are needed for mainline Linux. +--- + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index f2ac92f1ad10..a7ffec8f1516 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -30,6 +30,10 @@ + phy-mode = "rgmii-id"; + max-speed = <1000>; + phy-handle = <&phy0>; ++ assigned-clocks = <&rcc ETHCK_K>, <&rcc PLL4_P>; ++ assigned-clock-parents = <&rcc PLL4_P>; ++ assigned-clock-rates = <125000000>; /* Clock PLL4 to 750Mhz in ATF/U-Boot */ ++ st,eth-clk-sel; + + mdio0 { + #address-cells = <1>; +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0003-ARM-dts-stm32mp157c-odyssey-fix-ethernet.patch b/board/myna-player-odyssey/rootfs_patches/linux/0003-ARM-dts-stm32mp157c-odyssey-fix-ethernet.patch deleted file mode 100644 index 41621cf..0000000 --- a/board/myna-player-odyssey/rootfs_patches/linux/0003-ARM-dts-stm32mp157c-odyssey-fix-ethernet.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -index 2f75b631feac..afeb85ac66ca 100644 ---- a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -+++ b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi -@@ -120,8 +120,7 @@ - - ethernet0_rgmii_pins_a: rgmii-0 { - pins1 { -- pinmux = , /* ETH_RGMII_CLK125 */ -- , /* ETH_RGMII_GTX_CLK */ -+ pinmux = , /* ETH_RGMII_GTX_CLK */ - , /* ETH_RGMII_TXD0 */ - , /* ETH_RGMII_TXD1 */ - , /* ETH_RGMII_TXD2 */ -diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts -index f2ac92f1ad10..ac9fa784419d 100644 ---- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts -+++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts -@@ -30,6 +30,22 @@ - phy-mode = "rgmii-id"; - max-speed = <1000>; - phy-handle = <&phy0>; -+ assigned-clocks = <&rcc ETHCK_K>, <&rcc PLL4_P>; -+ assigned-clock-parents = <&rcc PLL4_P>; -+ assigned-clock-rates = <125000000>; -+ st,eth-clk-sel; -+ clock-names = "stmmaceth", -+ "mac-clk-tx", -+ "mac-clk-rx", -+ "eth-ck", -+ "syscfg-clk", -+ "ethstp"; -+ clocks = <&rcc ETHMAC>, -+ <&rcc ETHTX>, -+ <&rcc ETHRX>, -+ <&rcc ETHCK_K>, -+ <&rcc SYSCFG>, -+ <&rcc ETHSTP>; - - mdio0 { - #address-cells = <1>; diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0003-stm32mp157c-odyssey-Fix-i2c1-pinctrl.patch b/board/myna-player-odyssey/rootfs_patches/linux/0003-stm32mp157c-odyssey-Fix-i2c1-pinctrl.patch new file mode 100644 index 0000000..8bf5ced --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0003-stm32mp157c-odyssey-Fix-i2c1-pinctrl.patch @@ -0,0 +1,27 @@ +From fedad83530b7dcfc606859cfcddfdcb8257d3a12 Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Wed, 12 Aug 2020 00:17:03 +1000 +Subject: [PATCH 3/7] stm32mp157c-odyssey: Fix i2c1 pinctrl + +--- + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index a7ffec8f1516..027aaa441e4f 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -50,8 +50,8 @@ + + &i2c1 { + pinctrl-names = "default", "sleep"; +- pinctrl-0 = <&i2c1_pins_a>; +- pinctrl-1 = <&i2c1_sleep_pins_a>; ++ pinctrl-0 = <&i2c1_pins_b>; ++ pinctrl-1 = <&i2c1_sleep_pins_b>; + i2c-scl-rising-time-ns = <100>; + i2c-scl-falling-time-ns = <7>; + status = "okay"; +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0004-stm32mp157c-odyssey-Add-i2c4-support.patch b/board/myna-player-odyssey/rootfs_patches/linux/0004-stm32mp157c-odyssey-Add-i2c4-support.patch new file mode 100644 index 0000000..c45eade --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0004-stm32mp157c-odyssey-Add-i2c4-support.patch @@ -0,0 +1,59 @@ +From 367296623f4885c5c4a10e2d77d8754dd8065d12 Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Wed, 12 Aug 2020 00:19:06 +1000 +Subject: [PATCH 4/7] stm32mp157c-odyssey: Add i2c4 support + +--- + arch/arm/boot/dts/stm32mp15-pinctrl.dtsi | 17 +++++++++++++++++ + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 10 ++++++++++ + 2 files changed, 27 insertions(+) + +diff --git a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +index 2f75b631feac..9828de2900a7 100644 +--- a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi ++++ b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +@@ -432,6 +432,23 @@ + }; + }; + ++ i2c4_pins_s: i2c4-0 { ++ pins { ++ pinmux = , /* I2C4_SCL */ ++ ; /* I2C4_SDA */ ++ bias-disable; ++ drive-open-drain; ++ slew-rate = <0>; ++ }; ++ }; ++ ++ i2c4_pins_sleep_s: i2c4-1 { ++ pins { ++ pinmux = , /* I2C4_SCL */ ++ ; /* I2C4_SDA */ ++ }; ++ }; ++ + i2c5_pins_a: i2c5-0 { + pins { + pinmux = , /* I2C5_SCL */ +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index 027aaa441e4f..f9861e8fdb3a 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -78,3 +78,13 @@ + status = "okay"; + }; + ++&i2c4 { ++ pinctrl-names = "default", "sleep"; ++ pinctrl-0 = <&i2c4_pins_s>; ++ pinctrl-1 = <&i2c4_pins_sleep_s>; ++ i2c-scl-rising-time-ns = <185>; ++ i2c-scl-falling-time-ns = <20>; ++ status = "okay"; ++ /delete-property/dmas; ++ /delete-property/dma-names; ++}; +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0005-stm32mp157c-odyssey-Add-Wi-Fi.patch b/board/myna-player-odyssey/rootfs_patches/linux/0005-stm32mp157c-odyssey-Add-Wi-Fi.patch new file mode 100644 index 0000000..00183f0 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0005-stm32mp157c-odyssey-Add-Wi-Fi.patch @@ -0,0 +1,121 @@ +From 0de9b6c2b09003d968b09cbb9c9af51a100ac05c Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Wed, 12 Aug 2020 00:28:50 +1000 +Subject: [PATCH 5/7] stm32mp157c-odyssey: Add Wi-Fi + +--- + arch/arm/boot/dts/stm32mp15-pinctrl.dtsi | 54 +++++++++++++++++++++++ + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 25 +++++++++++ + 2 files changed, 79 insertions(+) + +diff --git a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +index 9828de2900a7..617d1f0cc8ec 100644 +--- a/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi ++++ b/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +@@ -1581,6 +1581,60 @@ + }; + }; + ++ sdmmc3_b4_pins_s: sdmmc3-b4-1 { ++ pins1 { ++ pinmux = , /* SDMMC3_D0 */ ++ , /* SDMMC3_D1 */ ++ , /* SDMMC3_D2 */ ++ , /* SDMMC3_D3 */ ++ ; /* SDMMC3_CMD */ ++ slew-rate = <1>; ++ drive-push-pull; ++ bias-pull-up; ++ }; ++ pins2 { ++ pinmux = ; /* SDMMC3_CLK */ ++ slew-rate = <2>; ++ drive-push-pull; ++ bias-pull-up; ++ }; ++ }; ++ ++ sdmmc3_b4_od_pins_s: sdmmc3-b4-od-1 { ++ pins1 { ++ pinmux = , /* SDMMC3_D0 */ ++ , /* SDMMC3_D1 */ ++ , /* SDMMC3_D2 */ ++ ; /* SDMMC3_D3 */ ++ slew-rate = <1>; ++ drive-push-pull; ++ bias-pull-up; ++ }; ++ pins2 { ++ pinmux = ; /* SDMMC3_CLK */ ++ slew-rate = <2>; ++ drive-push-pull; ++ bias-pull-up; ++ }; ++ pins3 { ++ pinmux = ; /* SDMMC2_CMD */ ++ slew-rate = <1>; ++ drive-open-drain; ++ bias-pull-up; ++ }; ++ }; ++ ++ sdmmc3_b4_sleep_pins_s: sdmmc3-b4-sleep-1 { ++ pins { ++ pinmux = , /* SDMMC3_D0 */ ++ , /* SDMMC3_D1 */ ++ , /* SDMMC3_D2 */ ++ , /* SDMMC3_D3 */ ++ , /* SDMMC3_CK */ ++ ; /* SDMMC3_CMD */ ++ }; ++ }; ++ + spdifrx_pins_a: spdifrx-0 { + pins { + pinmux = ; /* SPDIF_IN1 */ +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index f9861e8fdb3a..787c001fadef 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -20,6 +20,12 @@ + chosen { + stdout-path = "serial0:115200n8"; + }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&gpiod 9 GPIO_ACTIVE_LOW>; ++ post-power-on-delay-ms = <1>; ++ }; + }; + + ðernet0 { +@@ -72,6 +78,25 @@ + status = "okay"; + }; + ++&sdmmc3 { ++ pinctrl-names = "default", "opendrain", "sleep"; ++ pinctrl-0 = <&sdmmc3_b4_pins_s>; ++ pinctrl-1 = <&sdmmc3_b4_od_pins_s>; ++ pinctrl-2 = <&sdmmc3_b4_sleep_pins_s>; ++ bus-width = <4>; ++ vmmc-supply = <&v3v3>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ status = "okay"; ++ keep-power-in-suspend; ++ ++ #address-cells = <1>; ++ #size-cells = <0>; ++ brcmf: bcrmf@1 { ++ reg = <1>; ++ compatible = "brcm,bcm4329-fmac"; ++ }; ++}; ++ + &uart4 { + pinctrl-names = "default"; + pinctrl-0 = <&uart4_pins_a>; +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0006-ASoC-wm8960-Add-multi-endpoint-support.patch b/board/myna-player-odyssey/rootfs_patches/linux/0006-ASoC-wm8960-Add-multi-endpoint-support.patch new file mode 100644 index 0000000..5c002ab --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0006-ASoC-wm8960-Add-multi-endpoint-support.patch @@ -0,0 +1,34 @@ +From e268ffe5a6691add8abd44e54d3b81779fed7bfd Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Wed, 12 Aug 2020 00:30:42 +1000 +Subject: [PATCH 6/7] ASoC: wm8960: Add multi endpoint support + +--- + sound/soc/codecs/wm8960.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/sound/soc/codecs/wm8960.c b/sound/soc/codecs/wm8960.c +index 6cf0f6612bda..ca822da4d359 100644 +--- a/sound/soc/codecs/wm8960.c ++++ b/sound/soc/codecs/wm8960.c +@@ -1357,9 +1357,17 @@ static int wm8960_probe(struct snd_soc_component *component) + return 0; + } + ++static int wm8960_of_xlate_dai_id(struct snd_soc_component *component, ++ struct device_node *endpoint) ++{ ++ /* return dai id 0, whatever the endpoint index */ ++ return 0; ++} ++ + static const struct snd_soc_component_driver soc_component_dev_wm8960 = { + .probe = wm8960_probe, + .set_bias_level = wm8960_set_bias_level, ++ .of_xlate_dai_id = wm8960_of_xlate_dai_id, + .suspend_bias_off = 1, + .idle_bias_on = 1, + .use_pmdown_time = 1, +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0007-stm32mp157c-odyssey-Add-sound.patch b/board/myna-player-odyssey/rootfs_patches/linux/0007-stm32mp157c-odyssey-Add-sound.patch new file mode 100644 index 0000000..ef120a9 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0007-stm32mp157c-odyssey-Add-sound.patch @@ -0,0 +1,119 @@ +From 8d232827731c93e8a013e45185b52381e57cf2ad Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Wed, 12 Aug 2020 00:34:17 +1000 +Subject: [PATCH 7/7] stm32mp157c-odyssey: Add sound + +--- + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 89 +++++++++++++++++++++++ + 1 file changed, 89 insertions(+) + +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index 787c001fadef..41392245b09c 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -26,6 +26,16 @@ + reset-gpios = <&gpiod 9 GPIO_ACTIVE_LOW>; + post-power-on-delay-ms = <1>; + }; ++ ++ sound { ++ compatible = "audio-graph-card"; ++ routing = ++ "Playback" , "MCLK", ++ "Capture" , "MCLK", ++ "LINPUT1" , "MICB"; ++ dais = <&sai2a_port &sai2b_port>; ++ status = "okay"; ++ }; + }; + + ðernet0 { +@@ -63,6 +73,85 @@ + status = "okay"; + /delete-property/dmas; + /delete-property/dma-names; ++ ++ wm8960: wm8960@1a { ++ compatible = "wlf,wm8960"; ++ reg = <0x1a>; ++ #sound-dai-cells = <0>; ++ VL-supply = <&v3v3>; ++ VD-supply = <&v1v8_audio>; ++ VA-supply = <&v1v8_audio>; ++ VAHP-supply = <&v1v8_audio>; ++ reset-gpios = <&gpiog 9 GPIO_ACTIVE_LOW>; ++ clocks = <&sai2a>; ++ clock-names = "MCLK"; ++ status = "okay"; ++ wlf,shared-lrclk; ++ ++ wm8960_port: port { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ wm8960_tx_endpoint: endpoint@0 { ++ reg = <0>; ++ remote-endpoint = <&sai2a_endpoint>; ++ frame-master; ++ bitclock-master; ++ }; ++ ++ wm8960_rx_endpoint: endpoint@1 { ++ reg = <1>; ++ remote-endpoint = <&sai2b_endpoint>; ++ frame-master; ++ bitclock-master; ++ }; ++ }; ++ }; ++}; ++ ++&sai2 { ++ clocks = <&rcc SAI2>, <&rcc PLL3_Q>, <&rcc PLL3_R>; ++ clock-names = "pclk", "x8k", "x11k"; ++ pinctrl-names = "default", "sleep"; ++ pinctrl-0 = <&sai2a_pins_b &sai2b_pins_b>; ++ pinctrl-1 = <&sai2a_sleep_pins_b &sai2b_sleep_pins_b>; ++ status = "okay"; ++ ++ sai2a: audio-controller@4400b004 { ++ #clock-cells = <0>; ++ dma-names = "tx"; ++ clocks = <&rcc SAI2_K>; ++ clock-names = "sai_ck"; ++ status = "okay"; ++ ++ sai2a_port: port { ++ sai2a_endpoint: endpoint { ++ remote-endpoint = <&wm8960_tx_endpoint>; ++ format = "i2s"; ++ mclk-fs = <256>; ++ dai-tdm-slot-num = <2>; ++ dai-tdm-slot-width = <0>; ++ }; ++ }; ++ }; ++ ++ sai2b: audio-controller@4400b024 { ++ dma-names = "rx"; ++ st,sync = <&sai2a 2>; ++ clocks = <&rcc SAI2_K>, <&sai2a>; ++ clock-names = "sai_ck", "MCLK"; ++ status = "okay"; ++ ++ sai2b_port: port { ++ sai2b_endpoint: endpoint { ++ remote-endpoint = <&wm8960_rx_endpoint>; ++ format = "i2s"; ++ mclk-fs = <256>; ++ dai-tdm-slot-num = <2>; ++ dai-tdm-slot-width = <0>; ++ }; ++ }; ++ }; + }; + + &sdmmc1 { +-- +2.20.1 + diff --git a/board/myna-player-odyssey/rootfs_patches/linux/0008-stm32mp157c-odyssey-Re-order-i2c-devices-for-Raspber.patch b/board/myna-player-odyssey/rootfs_patches/linux/0008-stm32mp157c-odyssey-Re-order-i2c-devices-for-Raspber.patch new file mode 100644 index 0000000..71c1659 --- /dev/null +++ b/board/myna-player-odyssey/rootfs_patches/linux/0008-stm32mp157c-odyssey-Re-order-i2c-devices-for-Raspber.patch @@ -0,0 +1,27 @@ +From 1bcab1dfb4ea78c2cab59813442231dc3d2bc67b Mon Sep 17 00:00:00 2001 +From: Jookia +Date: Fri, 14 Aug 2020 13:15:17 +1000 +Subject: [PATCH 8/8] stm32mp157c-odyssey: Re-order i2c devices for Raspberry + Pi compatibility + +--- + arch/arm/boot/dts/stm32mp157c-odyssey.dts | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +index 41392245b09c..a8c17c4e89cc 100644 +--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts ++++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts +@@ -15,6 +15,9 @@ + aliases { + ethernet0 = ðernet0; + serial0 = &uart4; ++ i2c0 = &i2c2; ++ i2c1 = &i2c4; /* RPi compatible */ ++ i2c2 = &i2c1; + }; + + chosen { +-- +2.20.1 + diff --git a/board/myna-player-odyssey/scripts/rootfs_postbuild.sh b/board/myna-player-odyssey/scripts/rootfs_postbuild.sh index 1df1054..6a9551f 100755 --- a/board/myna-player-odyssey/scripts/rootfs_postbuild.sh +++ b/board/myna-player-odyssey/scripts/rootfs_postbuild.sh @@ -1,14 +1,16 @@ #!/bin/sh +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium set -e . "${BR2_EXTERNAL_MynaPlayer_PATH}"/scripts/certs.sh -# lets point emergency.target to reboot.target +# remove /etc/init.d and replace with the one copied from overlay -rm "${TARGET_DIR}"/usr/lib/systemd/system/emergency.target -ln -sr "${TARGET_DIR}"/usr/lib/systemd/system/reboot.target \ - "${TARGET_DIR}"/usr/lib/systemd/system/emergency.target +rm -rf "${TARGET_DIR}"/etc/init.d +mv "${TARGET_DIR}"/etc/init.d-overlay \ + "${TARGET_DIR}"/etc/init.d # copy changelog into the target diff --git a/board/myna-player-odyssey/scripts/rootfs_postimage.sh b/board/myna-player-odyssey/scripts/rootfs_postimage.sh index ab994de..79a7999 100755 --- a/board/myna-player-odyssey/scripts/rootfs_postimage.sh +++ b/board/myna-player-odyssey/scripts/rootfs_postimage.sh @@ -1,4 +1,6 @@ #!/bin/bash +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium set -e diff --git a/buildroot-patches/0001-boot-arm-trusted-firmware-allow-to-select-ATF-with-barebox.patch b/buildroot-patches/0001-boot-arm-trusted-firmware-allow-to-select-ATF-with-barebox.patch new file mode 100644 index 0000000..af69f93 --- /dev/null +++ b/buildroot-patches/0001-boot-arm-trusted-firmware-allow-to-select-ATF-with-barebox.patch @@ -0,0 +1,25 @@ +From 1cd770b534550b588864223d2c99a01317bc4bb0 Mon Sep 17 00:00:00 2001 +From: Xogium +Date: Fri, 31 Jul 2020 05:20:57 -0400 +Subject: [PATCH] boot/arm-trusted-firmware: allow to select ATF with barebox. + +--- + boot/arm-trusted-firmware/Config.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in +index b1ca5d7ea1..28769131c9 100644 +--- a/boot/arm-trusted-firmware/Config.in ++++ b/boot/arm-trusted-firmware/Config.in +@@ -1,7 +1,7 @@ + config BR2_TARGET_ARM_TRUSTED_FIRMWARE + bool "ARM Trusted Firmware (ATF)" + depends on (BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A) && \ +- BR2_TARGET_UBOOT ++ BR2_TARGET_UBOOT || BR2_TARGET_BAREBOX + help + Enable this option if you want to build the ATF for your ARM + based embedded device. +-- +2.27.0 + diff --git a/buildroot-patches/0001-package-systemd-use-polkit-duktape.patch b/buildroot-patches/0001-package-systemd-use-polkit-duktape.patch new file mode 100644 index 0000000..b41f651 --- /dev/null +++ b/buildroot-patches/0001-package-systemd-use-polkit-duktape.patch @@ -0,0 +1,45 @@ +From 65c59d46db7c3070f6547603ff0e11d3dcfe3c4f Mon Sep 17 00:00:00 2001 +From: Xogium +Date: Thu, 11 Jun 2020 02:41:23 -0400 +Subject: [PATCH] package/systemd: use polkit-duktape. + +--- + package/systemd/Config.in | 7 +------ + package/systemd/systemd.mk | 2 +- + 2 files changed, 2 insertions(+), 7 deletions(-) + +diff --git a/package/systemd/Config.in b/package/systemd/Config.in +index dd3b8c534d..1614d484ee 100644 +--- a/package/systemd/Config.in ++++ b/package/systemd/Config.in +@@ -302,13 +302,8 @@ config BR2_PACKAGE_SYSTEMD_NETWORKD + + config BR2_PACKAGE_SYSTEMD_POLKIT + bool "enable polkit support" +- depends on BR2_HOST_GCC_AT_LEAST_4_9 # polkit +- depends on BR2_INSTALL_LIBSTDCPP # polkit +- depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS # polkit +- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # polkit +- depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # polkit + depends on BR2_USE_WCHAR # libglib2 +- select BR2_PACKAGE_POLKIT ++ select BR2_PACKAGE_POLKIT_DUKTAPE + help + If enabled, systemd is built with polkit support and policy + files for its services are generated and installed. It is +diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk +index 92de540725..021a084565 100644 +--- a/package/systemd/systemd.mk ++++ b/package/systemd/systemd.mk +@@ -370,7 +370,7 @@ endif + + ifeq ($(BR2_PACKAGE_SYSTEMD_POLKIT),y) + SYSTEMD_CONF_OPTS += -Dpolkit=true +-SYSTEMD_DEPENDENCIES += polkit ++SYSTEMD_DEPENDENCIES += polkit-duktape + else + SYSTEMD_CONF_OPTS += -Dpolkit=false + endif +-- +2.27.0 + diff --git a/configs/myna_player_odyssey_defconfig b/configs/myna_player_odyssey_defconfig index ba44216..82ff07c 100644 --- a/configs/myna_player_odyssey_defconfig +++ b/configs/myna_player_odyssey_defconfig @@ -1,5 +1,7 @@ BR2_arm=y BR2_cortex_a7=y +BR2_ARM_FPU_NEON=y +BR2_ARM_INSTRUCTIONS_THUMB2=y BR2_CCACHE=y BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_MynaPlayer_PATH)/board/myna-player-odyssey/rootfs_patches" BR2_PER_PACKAGE_DIRECTORIES=y @@ -15,10 +17,9 @@ BR2_TOOLCHAIN_EXTERNAL_CXX=y BR2_TARGET_GENERIC_HOSTNAME="MynaPlayer" BR2_TARGET_GENERIC_ISSUE="Welcome to MynaPlayer" -BR2_INIT_SYSTEMD=y -BR2_SYSTEM_BIN_SH_BASH=y -# BR2_TARGET_GENERIC_GETTY is not set -# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y +BR2_ROOTFS_MERGED_USR=y +BR2_TARGET_GENERIC_GETTY_PORT="ttySTM0" BR2_ENABLE_LOCALE_WHITELIST="en_US.UTF-8" BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_MynaPlayer_PATH)/board/myna-player-odyssey/rootfs_overlay" BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MynaPlayer_PATH)/board/myna-player-odyssey/scripts/rootfs_postbuild.sh" @@ -36,12 +37,9 @@ BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y -# BR2_PACKAGE_BUSYBOX is not set +BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_MynaPlayer_PATH)/board/myna-player-odyssey/configs/busybox.config" BR2_PACKAGE_XZ=y BR2_PACKAGE_ZIP=y -BR2_PACKAGE_FINDUTILS=y -BR2_PACKAGE_GREP=y -BR2_PACKAGE_SED=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y @@ -51,13 +49,9 @@ BR2_PACKAGE_LINUX_FIRMWARE=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y -BR2_PACKAGE_DT_UTILS=y -BR2_PACKAGE_I2C_TOOLS=y BR2_PACKAGE_LM_SENSORS=y BR2_PACKAGE_RNG_TOOLS=y BR2_PACKAGE_RTC_TOOLS=y -BR2_PACKAGE_UBOOT_TOOLS=y -BR2_PACKAGE_USBUTILS=y BR2_PACKAGE_LIBARCHIVE=y BR2_PACKAGE_LIBARCHIVE_BSDTAR=y BR2_PACKAGE_LIBARCHIVE_BSDCAT=y @@ -68,43 +62,48 @@ BR2_PACKAGE_IPROUTE2=y BR2_PACKAGE_IPUTILS=y BR2_PACKAGE_NETWORK_MANAGER=y -BR2_PACKAGE_NETWORK_MANAGER_TUI=y +BR2_PACKAGE_OPENSSH=y BR2_PACKAGE_RSYNC=y +<<<<<<< HEAD BR2_PACKAGE_WGET=y +======= +>>>>>>> WIP_busybox +BR2_PACKAGE_WPA_SUPPLICANT=y +BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y +BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y +BR2_PACKAGE_WPA_SUPPLICANT_CLI=y +BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y +BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y +BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y +<<<<<<< HEAD BR2_PACKAGE_BASH_COMPLETION=y +======= +>>>>>>> WIP_busybox BR2_PACKAGE_FILE=y -BR2_PACKAGE_WHICH=y BR2_PACKAGE_ACL=y -BR2_PACKAGE_COREUTILS=y -BR2_PACKAGE_PROCPS_NG=y -BR2_PACKAGE_PSMISC=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y -# BR2_PACKAGE_SYSTEMD_PSTORE is not set -# BR2_PACKAGE_SYSTEMD_HWDB is not set -BR2_PACKAGE_SYSTEMD_LOGIND=y -# BR2_PACKAGE_SYSTEMD_NETWORKD is not set -BR2_PACKAGE_SYSTEMD_POLKIT=y -# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set -BR2_PACKAGE_SYSTEMD_BOOTCHART=y -BR2_PACKAGE_TAR=y +BR2_PACKAGE_UTIL_LINUX_BINARIES=y +BR2_PACKAGE_UTIL_LINUX_AGETTY=y +BR2_PACKAGE_UTIL_LINUX_FSCK=y BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y BR2_PACKAGE_UTIL_LINUX_KILL=y BR2_PACKAGE_UTIL_LINUX_LAST=y BR2_PACKAGE_UTIL_LINUX_LOGIN=y BR2_PACKAGE_UTIL_LINUX_LOSETUP=y +BR2_PACKAGE_UTIL_LINUX_MESG=y +BR2_PACKAGE_UTIL_LINUX_MOUNT=y BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT=y BR2_PACKAGE_UTIL_LINUX_NEWGRP=y +BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS=y BR2_PACKAGE_UTIL_LINUX_SULOGIN=y +BR2_PACKAGE_UTIL_LINUX_UTMPDUMP=y BR2_PACKAGE_UTIL_LINUX_UUIDD=y BR2_PACKAGE_UTIL_LINUX_WALL=y BR2_PACKAGE_UTIL_LINUX_WIPEFS=y -BR2_PACKAGE_LESS=y BR2_PACKAGE_NANO=y -BR2_PACKAGE_VIM=y -# BR2_PACKAGE_VIM_RUNTIME is not set BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="512M" @@ -124,5 +123,4 @@ BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_MynaPlayer_PATH)/board/myna-player-odyssey/configs/barebox.config" BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_RAUC=y -BR2_PACKAGE_DISABLED_SERVICES=y -BR2_PACKAGE_OPENSSH_SYSTEMD=y +BR2_PACKAGE_LIFEPO4WERED_PI=y diff --git a/external.mk b/external.mk index 3f7c98a..8ee8019 100644 --- a/external.mk +++ b/external.mk @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-3.0-or-later + include $(sort $(wildcard $(BR2_EXTERNAL_MynaPlayer_PATH)/packages/*/*.mk)) export MODULES_PLACE = $(BASE_DIR)/../kmod diff --git a/packages/Config.in b/packages/Config.in index b6acc54..9d820b5 100644 --- a/packages/Config.in +++ b/packages/Config.in @@ -1,7 +1,11 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + menu "Target packages" source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/disabled-services/Config.in" source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/duktape-pc/Config.in" +source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/lifepo4wered-pi/Config.in" source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/openssh-systemd/Config.in" source "$BR2_EXTERNAL_MynaPlayer_PATH/packages/polkit-duktape/Config.in" diff --git a/packages/disabled-services/70-disabled.preset b/packages/disabled-services/70-disabled.preset index 1b6ec28..6b1796b 100644 --- a/packages/disabled-services/70-disabled.preset +++ b/packages/disabled-services/70-disabled.preset @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + disable alsa-state.service disable alsa-restore.service disable ninfod.service diff --git a/packages/disabled-services/Config.in b/packages/disabled-services/Config.in index e353713..1143b79 100644 --- a/packages/disabled-services/Config.in +++ b/packages/disabled-services/Config.in @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + config BR2_PACKAGE_DISABLED_SERVICES bool "disabled-services" help diff --git a/packages/disabled-services/disabled-services.mk b/packages/disabled-services/disabled-services.mk index dcfa1c4..46ccf62 100644 --- a/packages/disabled-services/disabled-services.mk +++ b/packages/disabled-services/disabled-services.mk @@ -3,6 +3,8 @@ # disabled-services # ################################################################################ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium DISABLED_SERVICES_VERSION = local DISABLED_SERVICES_SITE = $(DISABLED_SERVICES_PKGDIR)/. diff --git a/packages/duktape-pc/Config.in b/packages/duktape-pc/Config.in index d086a76..1bc3b0a 100644 --- a/packages/duktape-pc/Config.in +++ b/packages/duktape-pc/Config.in @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + config BR2_PACKAGE_DUKTAPE_PC bool "duktape-pc" depends on !BR2_STATIC_LIBS diff --git a/packages/duktape-pc/duktape-pc.mk b/packages/duktape-pc/duktape-pc.mk index 00b4e69..eb490d3 100644 --- a/packages/duktape-pc/duktape-pc.mk +++ b/packages/duktape-pc/duktape-pc.mk @@ -3,6 +3,8 @@ # duktape-pkgconfig # ################################################################################ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium DUKTAPE_PC_VERSION = 2.5.0 DUKTAPE_PC_SITE = $(call github,svaarala,duktape-releases,v$(DUKTAPE_PC_VERSION)) diff --git a/packages/lifepo4wered-pi/Config.in b/packages/lifepo4wered-pi/Config.in new file mode 100644 index 0000000..881d161 --- /dev/null +++ b/packages/lifepo4wered-pi/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIFEPO4WERED_PI + bool "LiFePO4wered-Pi" + help + Access library, command line tool and daemon + for the LiFePO4wered/Pi module. + + https://github.com/Jookia/LiFePO4wered-Pi diff --git a/packages/lifepo4wered-pi/lifepo4wered-pi.hash b/packages/lifepo4wered-pi/lifepo4wered-pi.hash new file mode 100644 index 0000000..4ece60d --- /dev/null +++ b/packages/lifepo4wered-pi/lifepo4wered-pi.hash @@ -0,0 +1,3 @@ +# locally computed: + +sha256 93079f577b3468e09113099d48129214afdf2a653521f4deee079a4c34ca17cb LiFePO4wered-Pi-82010fb9d87c36038cafc45587e673ebb5473d5b.tar.gz diff --git a/packages/lifepo4wered-pi/lifepo4wered-pi.mk b/packages/lifepo4wered-pi/lifepo4wered-pi.mk new file mode 100644 index 0000000..415a042 --- /dev/null +++ b/packages/lifepo4wered-pi/lifepo4wered-pi.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# LiFePo4wered-Pi +# +################################################################################ + +LIFEPO4WERED_PI_VERSION = 82010fb9d87c36038cafc45587e673ebb5473d5b +LIFEPO4WERED_PI_SITE = $(call github,Jookia,LiFePO4wered-Pi,$(LIFEPO4WERED_PI_VERSION)) +LIFEPO4WERED_PI_SOURCE = LiFePO4wered-Pi-$(LIFEPO4WERED_PI_VERSION).tar.gz +LIFEPO4WERED_PI_LICENSE = GPL-2.0 +LIFEPO4WERED_PI_LICENSE_FILES = LICENSE + +define LIFEPO4WERED_PI_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) USE_SYSTEMD=0 +endef + +define LIFEPO4WERED_PI_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) install PREFIX=/usr DESTDIR=$(TARGET_DIR) -C $(@D) +endef + +$(eval $(generic-package)) diff --git a/packages/openssh-systemd/Config.in b/packages/openssh-systemd/Config.in index 7de1cad..9968487 100644 --- a/packages/openssh-systemd/Config.in +++ b/packages/openssh-systemd/Config.in @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + config BR2_PACKAGE_OPENSSH_SYSTEMD bool "openssh-systemd" depends on BR2_USE_MMU # fork() diff --git a/packages/openssh-systemd/openssh-systemd.mk b/packages/openssh-systemd/openssh-systemd.mk index bb8f60c..f36b734 100644 --- a/packages/openssh-systemd/openssh-systemd.mk +++ b/packages/openssh-systemd/openssh-systemd.mk @@ -3,6 +3,8 @@ # openssh-systemd # ################################################################################ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium OPENSSH_SYSTEMD_VERSION = 8.2p1 OPENSSH_SYSTEMD_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable diff --git a/packages/polkit-duktape/Config.in b/packages/polkit-duktape/Config.in index deae3ff..a769ea4 100644 --- a/packages/polkit-duktape/Config.in +++ b/packages/polkit-duktape/Config.in @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium + config BR2_PACKAGE_POLKIT_DUKTAPE bool "polkit-duktape" depends on BR2_USE_MMU # libglib2, dbus diff --git a/packages/polkit-duktape/polkit-duktape.mk b/packages/polkit-duktape/polkit-duktape.mk index 70602bb..dcefe4f 100644 --- a/packages/polkit-duktape/polkit-duktape.mk +++ b/packages/polkit-duktape/polkit-duktape.mk @@ -3,6 +3,8 @@ # polkit-duktape # ################################################################################ +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium POLKIT_DUKTAPE_VERSION = 0.116 POLKIT_DUKTAPE_SITE = http://www.freedesktop.org/software/polkit/releases diff --git a/scripts/rauc_fixups.sh b/scripts/rauc_fixups.sh index 45add5e..0f1c639 100755 --- a/scripts/rauc_fixups.sh +++ b/scripts/rauc_fixups.sh @@ -1,4 +1,6 @@ #!/bin/sh +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright 2020 Xogium set -e diff --git a/t b/t new file mode 100644 index 0000000..823c90b --- /dev/null +++ b/t @@ -0,0 +1 @@ +add t file