diff --git a/platforms/bananaPro/mageia4arm.cfg b/platforms/bananaPro/mageia4arm.cfg index b3c2e98..5e00da6 100644 --- a/platforms/bananaPro/mageia4arm.cfg +++ b/platforms/bananaPro/mageia4arm.cfg @@ -22,24 +22,19 @@ # FEX (DTS) : https://github.com/LeMaker/sunxi-boards # Mageia version 7 or later, cauldron. -# TO MODIFY MAGEIA_VERSION="7" # Arm version armv7hl, aarch64 -# TO MODIFY ARM_VERSION="armv7hl" # Target plateform (odroid or rpi) -# TO MODIFY TARGET="bananaPro" # Target version (0,2,3 for raspi, 3 or 4 for odroid) -#TO MODIFY TARGET_VERSION="1" # URL of the Mageia mirror used to install ( see mirrors.mageia.org ) MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/${MAGEIA_VERSION}/${ARM_VERSION}" # image will be created here -# TO MODIFY # INSTALL_PATH="./${TARGET}" # Should not be in this configuration file, it isn't related to the configuration but to the build platform. @@ -49,10 +44,6 @@ BUILD_PATH="${INSTALL_PATH}/build" #name of the image IMAGE="Mageia-${MAGEIA_VERSION}-${TARGET}.img" -#Mount point of image's partitions -BOOT="/mnt/boot" -ROOT="/mnt/root" - # Default user # If not set, no user will be defined. # ID_USER="banana" @@ -69,6 +60,10 @@ HOSTNAME="${TARGET}" SEPARATE_BOOT_PARTITION=0 BOOTFS="ext4" +#Mount point of image's partitions +BOOT="/mnt/boot" +ROOT="/mnt/root" + #kernel package to install KERNEL="kernel-desktop" diff --git a/platforms/rpi1/specialFunctions.sh b/platforms/rpi1/specialFunctions.sh index d388bcd..3d09d3f 100755 --- a/platforms/rpi1/specialFunctions.sh +++ b/platforms/rpi1/specialFunctions.sh @@ -132,7 +132,7 @@ function copyingCustomSystem() if ! [ -d "${ROOT}/usr/lib/firmware/brcm/" ]; then /bin/mkdir -p "${ROOT}/usr/lib/firmware/brcm/" fi - if ! [ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]; then + if ! [[ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]]; then /bin/cp --preserve=mode "${CONFIG_PATH}/brcmfmac434"* "${ROOT}/usr/lib/firmware/brcm/" if [ ${?} -ne 0 ]; then error "line ${LINENO} error copying wifi firmware in ${ROOTP}/usr/lib/firmware/brcm/ : exiting" diff --git a/platforms/rpi2/specialFunctions.sh b/platforms/rpi2/specialFunctions.sh index dec8c36..b63fa2a 100755 --- a/platforms/rpi2/specialFunctions.sh +++ b/platforms/rpi2/specialFunctions.sh @@ -131,7 +131,7 @@ function copyingCustomSystem() if ! [ -d "${ROOT}/usr/lib/firmware/brcm/" ]; then /bin/mkdir -p "${ROOT}/usr/lib/firmware/brcm/" fi - if ! [ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]; then + if ! [[ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]]; then /bin/cp --preserve=mode "${CONFIG_PATH}/brcmfmac434"* "${ROOT}/usr/lib/firmware/brcm/" if [ ${?} -ne 0 ]; then error "line ${LINENO} error copying wifi firmware in ${ROOTP}/usr/lib/firmware/brcm/ : exiting" diff --git a/platforms/rpi3+/firmware-stable.zip b/platforms/rpi3+/firmware-stable.zip new file mode 100644 index 0000000..b8e29c3 Binary files /dev/null and b/platforms/rpi3+/firmware-stable.zip differ diff --git a/platforms/rpi3+/mageia4arm.cfg b/platforms/rpi3+/mageia4arm.cfg index bf8a58a..8667978 100644 --- a/platforms/rpi3+/mageia4arm.cfg +++ b/platforms/rpi3+/mageia4arm.cfg @@ -25,21 +25,17 @@ TARGET="rpi" TARGET_VERSION="3+" # URL of the Mageia mirror used to install ( see mirrors.mageia.org ) -MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/$MAGEIA_VERSION/$ARM_VERSION" +MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/${MAGEIA_VERSION}/${ARM_VERSION}" #MIRROR="/mnt/STOCK/mageia/distrib/$MAGEIA_VERSION/$ARM_VERSION" -# image will be created here -INSTALL_PATH="/mnt/perso/raspi-test" +# image will be created here +# INSTALL_PATH="/mnt/perso/raspi-test" # Build directory will be created here -BUILD_PATH="$INSTALL_PATH/build" +BUILD_PATH="${INSTALL_PATH}/build" #name of the image -IMAGE="Mageia-${MAGEIA_VERSION}-$TARGET.img" - -#Mount point of image's partitions -BOOT="/mnt/boot" -ROOT="/mnt/root" +IMAGE="Mageia-${MAGEIA_VERSION}-${TARGET}.img" #Default user ID_USER="pi" @@ -49,16 +45,21 @@ PASSWORD="raspberry" ROOT_PWD="piroot" #Hostname -HOSTNAME="$TARGET.$ID_USER" +HOSTNAME="${TARGET}" #Filesystem of boot partitions (default ext4 raspberry pi need vfat) +SEPARATE_BOOT_PARTITION=1 BOOTFS="vfat" +#Mount point of image's partitions +BOOT="/mnt/boot" +ROOT="/mnt/root" + #The arguments for the Kernel BOOT_ARGS='dwc_otg.lpm_enable=0 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 rootwait fsck.repair=1 8250.nr_uarts=1 elevator=deadline cma=256M\@512M audit=0' #Path where the raspberry pi firmware is/will be installed -FIRMWARE_PATH="$INSTALL_PATH" +FIRMWARE_PATH="${INSTALL_PATH}" FIRMWARE_DIR="firmware-stable" FIRMWARE_DOWNLOAD_URL="https://github.com/raspberrypi/firmware/archive/stable.zip" diff --git a/platforms/rpi3+/specialFunctions.sh b/platforms/rpi3+/specialFunctions.sh index ad00c50..2dc08f5 100755 --- a/platforms/rpi3+/specialFunctions.sh +++ b/platforms/rpi3+/specialFunctions.sh @@ -132,7 +132,7 @@ function copyingCustomSystem() if ! [ -d "${ROOT}/usr/lib/firmware/brcm/" ]; then /bin/mkdir -p "${ROOT}/usr/lib/firmware/brcm/" fi - if ! [ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]; then + if ! [[ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]]; then /bin/cp --preserve=mode "${CONFIG_PATH}/brcmfmac434"* "${ROOT}/usr/lib/firmware/brcm/" if [ ${?} -ne 0 ]; then error "line ${LINENO} error copying wifi firmware in ${ROOTP}/usr/lib/firmware/brcm/ : exiting" diff --git a/platforms/rpi3+/stable.zip b/platforms/rpi3+/stable.zip new file mode 100644 index 0000000..fd6dc63 Binary files /dev/null and b/platforms/rpi3+/stable.zip differ diff --git a/platforms/rpi3+64/10-vchiq-permissions.rules b/platforms/rpi3+64/10-vchiq-permissions.rules new file mode 100644 index 0000000..bacea0e --- /dev/null +++ b/platforms/rpi3+64/10-vchiq-permissions.rules @@ -0,0 +1 @@ +SUBSYSTEM=="vchiq",GROUP="video",MODE="0660" diff --git a/platforms/rpi3+64/brcmfmac43430-sdio.txt b/platforms/rpi3+64/brcmfmac43430-sdio.txt new file mode 100644 index 0000000..ea4f648 --- /dev/null +++ b/platforms/rpi3+64/brcmfmac43430-sdio.txt @@ -0,0 +1,66 @@ +# NVRAM file for BCM943430WLPTH +# 2.4 GHz, 20 MHz BW mode + +# The following parameter values are just placeholders, need to be updated. +manfid=0x2d0 +prodid=0x0727 +vendid=0x14e4 +devid=0x43e2 +boardtype=0x0727 +boardrev=0x1101 +boardnum=22 +macaddr=00:90:4c:c5:12:38 +sromrev=11 +boardflags=0x00404201 +boardflags3=0x08000000 +xtalfreq=37400 +nocrc=1 +ag0=255 +aa2g=1 +ccode=ALL + +pa0itssit=0x20 +extpagain2g=0 +#PA parameters for 2.4GHz, measured at CHIP OUTPUT +pa2ga0=-168,7161,-820 +AvVmid_c0=0x0,0xc8 +cckpwroffset0=5 + +# PPR params +maxp2ga0=84 +txpwrbckof=6 +cckbw202gpo=0 +legofdmbw202gpo=0x66111111 +mcsbw202gpo=0x77711111 +propbw202gpo=0xdd + +# OFDM IIR : +ofdmdigfilttype=18 +ofdmdigfilttypebe=18 +# PAPD mode: +papdmode=1 +papdvalidtest=1 +pacalidx2g=42 +papdepsoffset=-22 +papdendidx=58 + +# LTECX flags +ltecxmux=0 +ltecxpadnum=0x0102 +ltecxfnsel=0x44 +ltecxgcigpio=0x01 + +il0macaddr=00:90:4c:c5:12:38 +wl0id=0x431b + +deadman_to=0xffffffff +# muxenab: 0x1 for UART enable, 0x2 for GPIOs, 0x8 for JTAG +muxenab=0x1 +# CLDO PWM voltage settings - 0x4 - 1.1 volt +#cldo_pwm=0x4 + +#VCO freq 326.4MHz +spurconfig=0x3 + +edonthd20l=-75 +edoffthd20ul=-80 diff --git a/platforms/rpi3+64/brcmfmac43455-sdio.clm_blob b/platforms/rpi3+64/brcmfmac43455-sdio.clm_blob new file mode 100644 index 0000000..09b930b Binary files /dev/null and b/platforms/rpi3+64/brcmfmac43455-sdio.clm_blob differ diff --git a/platforms/rpi3+64/brcmfmac43455-sdio.txt b/platforms/rpi3+64/brcmfmac43455-sdio.txt new file mode 100644 index 0000000..260c929 --- /dev/null +++ b/platforms/rpi3+64/brcmfmac43455-sdio.txt @@ -0,0 +1,92 @@ +# Cloned from bcm94345wlpagb_p2xx.txt +NVRAMRev=$Rev: 498373 $ +sromrev=11 +vendid=0x14e4 +devid=0x43ab +manfid=0x2d0 +prodid=0x06e4 +#macaddr=00:90:4c:c5:12:38 +macaddr=b8:27:eb:74:f2:6c +nocrc=1 +boardtype=0x6e4 +boardrev=0x1304 + +#XTAL 37.4MHz +xtalfreq=37400 + +btc_mode=1 +#------------------------------------------------------ +#boardflags: 5GHz eTR switch by default +# 2.4GHz eTR switch by default +# bit1 for btcoex +boardflags=0x00480201 +boardflags2=0x40800000 +boardflags3=0x48200100 +phycal_tempdelta=15 +rxchain=1 +txchain=1 +aa2g=1 +aa5g=1 +tssipos5g=1 +tssipos2g=1 +femctrl=0 +AvVmid_c0=1,165,2,100,2,100,2,100,2,100 +pa2ga0=-129,6525,-718 +pa2ga1=-149,4408,-601 +pa5ga0=-185,6836,-815,-186,6838,-815,-184,6859,-815,-184,6882,-818 +pa5ga1=-202,4285,-574,-201,4312,-578,-196,4391,-586,-201,4294,-575 +itrsw=1 +pdoffsetcckma0=2 +pdoffset2gperchan=0,-2,1,0,1,0,1,1,1,0,0,-1,-1,0 +pdoffset2g40ma0=16 +pdoffset40ma0=0x8888 +pdoffset80ma0=0x8888 +extpagain5g=2 +extpagain2g=2 +tworangetssi2g=1 +tworangetssi5g=1 +# LTECX flags +# WCI2 +ltecxmux=0 +ltecxpadnum=0x0504 +ltecxfnsel=0x22 +ltecxgcigpio=0x32 + +maxp2ga0=80 +ofdmlrbw202gpo=0x0022 +dot11agofdmhrbw202gpo=0x4442 +mcsbw202gpo=0x98444422 +mcsbw402gpo=0x98444422 +maxp5ga0=82,82,82,82 +mcsbw205glpo=0xb9555000 +mcsbw205gmpo=0xb9555000 +mcsbw205ghpo=0xb9555000 +mcsbw405glpo=0xb9555000 +mcsbw405gmpo=0xb9555000 +mcsbw405ghpo=0xb9555000 +mcsbw805glpo=0xb9555000 +mcsbw805gmpo=0xb9555000 +mcsbw805ghpo=0xb9555000 + +swctrlmap_2g=0x00000000,0x00000000,0x00000000,0x010000,0x3ff +swctrlmap_5g=0x00100010,0x00200020,0x00200020,0x010000,0x3fe +swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x3 +swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x3 + +vcodivmode=1 +deadman_to=481500000 + +ed_thresh2g=-54 +ed_thresh5g=-54 +eu_edthresh2g=-54 +eu_edthresh5g=-54 +ldo1=4 +rawtempsense=0x1ff +cckPwrIdxCorr=3 +cckTssiDelay=150 +ofdmTssiDelay=150 +txpwr2gAdcScale=1 +txpwr5gAdcScale=1 +dot11b_opts=0x3aa85 +cbfilttype=1 +fdsslevel_ch11=6 diff --git a/platforms/rpi3+64/extlinux.conf b/platforms/rpi3+64/extlinux.conf new file mode 100644 index 0000000..bd8b64e --- /dev/null +++ b/platforms/rpi3+64/extlinux.conf @@ -0,0 +1,10 @@ +menu Welcome to Mageia-Minimal. +timeout 20 +default linux + +label linux + kernel /boot/vmlinuz + append root=UUID= + fdtdir /usr/lib/ + initrd /boot/initrd + diff --git a/platforms/rpi3+64/firmware-stable.zip b/platforms/rpi3+64/firmware-stable.zip new file mode 100644 index 0000000..b8e29c3 Binary files /dev/null and b/platforms/rpi3+64/firmware-stable.zip differ diff --git a/platforms/rpi3+64/mageia4arm.cfg b/platforms/rpi3+64/mageia4arm.cfg new file mode 100644 index 0000000..f852972 --- /dev/null +++ b/platforms/rpi3+64/mageia4arm.cfg @@ -0,0 +1,65 @@ + +# Copyright (C) 2017-2018 Daniel Tartavel-jeannot +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +MAGEIA_VERSION="7" +ARM_VERSION="aarch64" + +#target plateform (xu3-4 or rpi) +TARGET="rpi" +#version of the target +# 0, 1, 2 ,3_32 for rpi and 3 or 4 for odroid +TARGET_VERSION="3+64" + +# URL of the Mageia mirror used to install ( see mirrors.mageia.org ) +MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/${MAGEIA_VERSION}/${ARM_VERSION}" +#MIRROR="/mnt/STOCK/mageia/distrib/$MAGEIA_VERSION/$ARM_VERSION" + +# image will be created here +# INSTALL_PATH="/mnt/perso/raspi-test" + +# Build directory will be created here +BUILD_PATH="${INSTALL_PATH}/build" + +#name of the image +IMAGE="Mageia-${MAGEIA_VERSION}-${TARGET}.img" + +#Default user +ID_USER="pi" +PASSWORD="raspberry" + +#root password +ROOT_PWD="piroot" + +#Hostname +HOSTNAME="${TARGET}" + +#Mount point of image's partitions +BOOT="/mnt/boot" +ROOT="/mnt/root" + +#Filesystem of boot partitions (default ext4 raspberry pi need vfat) +SEPARATE_BOOT_PARTITION=1 +BOOTFS="vfat" + +#The arguments for the Kernel +BOOT_ARGS='dwc_otg.lpm_enable=0 console=ttyS0,115200 kgdboc=ttyS0,115200 console=tty1 rootwait fsck.repair=1 8250.nr_uarts=1 elevator=deadline cma=256M\@512M audit=0' + +#Path where the raspberry pi firmware is/will be installed +FIRMWARE_PATH="$INSTALL_PATH" +FIRMWARE_DIR="firmware-stable" +FIRMWARE_DOWNLOAD_URL="https://github.com/raspberrypi/firmware/archive/stable.zip" + diff --git a/platforms/rpi3+64/mageia4arm.cfg.original b/platforms/rpi3+64/mageia4arm.cfg.original new file mode 100644 index 0000000..e1b78d9 --- /dev/null +++ b/platforms/rpi3+64/mageia4arm.cfg.original @@ -0,0 +1,56 @@ + +# Copyright (C) 2017-2018 Daniel Tartavel-jeannot +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +MAGEIA_VERSION="7" +ARM_VERSION="armv7hl" + +#target plateform (xu3-4 or rpi) +TARGET="rpi" + +# URL of the Mageia mirror used to install ( see mirrors.mageia.org ) +MIRROR="http://ftp.free.fr/mirrors/mageia.org/distrib/$MAGEIA_VERSION/$ARM_VERSION" +# image will be created here +INSTALL_PATH="" + +# Build directory will be created here +BUILD_PATH="$INSTALL_PATH/build" + +#name of the image +IMAGE="Mageia-${MAGEIA_VERSION}-$TARGET.img" + +#Mount point of image's partitions +#no need to be changed +BOOT="/mnt/boot" +ROOT="/mnt/root" + +#Default user +ID_USER="pi" +PASSWORD="raspberry" + +#root password +ROOT_PWD="piroot" + +#Hostname +HOSTNAME="$TARGET.$ID_USER" + +#Filesystem of boot partitions (default ext4 raspberry pi need vfat) +#DO NOT CHANGE THIS +BOOTFS="vfat" + +#Path where the raspberry pi firmware is/will be downloaded +FIRMWARE_PATH="$INSTALL_PATH" +FIRMWARE_DIR="firmware-stable" diff --git a/platforms/rpi3+64/modprobe.conf b/platforms/rpi3+64/modprobe.conf new file mode 100644 index 0000000..7725dae --- /dev/null +++ b/platforms/rpi3+64/modprobe.conf @@ -0,0 +1,3 @@ +alias wlan0 brcmfmac +alias eth0 smsc95xx +alias usb0 rndis_host diff --git a/platforms/rpi3+64/second_stage_install.sh b/platforms/rpi3+64/second_stage_install.sh new file mode 100644 index 0000000..eb105f7 --- /dev/null +++ b/platforms/rpi3+64/second_stage_install.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +# Copyright (C) 2017-2018 Daniel Tartavel-jeannot +# + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +/usr/bin/chown :shadow /etc/shadow /etc/gshadow /etc/login.defs /etc/pam.d/chage-chfn-chsh /etc/pam.d/chpasswd-newusers /etc/pam.d/system-auth /etc/pam.d/user-group-mod /bin/passwd /bin/chage + +/usr/bin/chown :systemd-journal -R /var/log/journal + +#Install all packages you need +# No verifying rpm due to a bug in packages, some are not signed + +/usr/sbin/urpmi --auto --no-verify-rpm basesystem chrony rng-tools man openssh-server rfkill wireless-tools bluez wpa_supplicant make binutils dracut u-boot rsync kernel-desktop-latest mlocate drakx-kbd-mouse-x11 glibc-i18ndata + + +/usr/bin/chown :chrony -R /etc/chrony.keys /var/log/chrony +/usr/bin/chown :daemon /etc/wpa_supplicant.conf +/usr/bin/chown :tty /bin/write /bin/wall +/usr/bin/chown :lock /sbin/lockdev +/usr/bin/chown :bin /sbin/traceroute +/usr/bin/chown polkitd /etc/polkit-1/rules.d + +KV=`basename /boot/vmlinuz-*` +KV=${KV#vmlinuz-} +dracut --kver $KV +rm -f $0 +cp /boot/vmlinuz-* /boot/vmlinuz +cp /boot/initrd-* /boot/initrd + +alternatives --set soundprofile /etc/sound/profiles/alsa diff --git a/platforms/rpi3+64/specialFunctions.sh b/platforms/rpi3+64/specialFunctions.sh new file mode 100755 index 0000000..c239b89 --- /dev/null +++ b/platforms/rpi3+64/specialFunctions.sh @@ -0,0 +1,149 @@ +#!/bin/bash + +# Copyright (C) 2017-2018 Daniel Tartavel-jeannot +# Copyright (C) 2019-2020 Jean-Baptiste Biernacki +# + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +#RPI partitionning : +DEFAULT="" +NEW_PART=n +PRIMARY=p +CHANGE_TYPE=t +CHANGE_BOOTFLAG=a +APPLY=w + +PART_BOOT=1 +PART_BOOT_FIRST_SECTOR=${DEFAULT} +PART_BOOT_SIZE="+128M" + +PART_ROOT=2 +PART_ROOT_FIRST_SECTOR=${DEFAULT} +PART_ROOT_SIZE=${DEFAULT} + +TYPE_FAT32LBA=c + +FDISK_SCRIPT="${NEW_PART}\n${PRIMARY}\n${PART_BOOT}\n${PART_BOOT_FIRST_SECTOR}\n${PART_BOOT_SIZE}\n${CHANGE_TYPE}\n${TYPE_FAT32LBA}\n${NEW_PART}\n${PRIMARY}\n${PART_ROOT}\n${PART_ROOT_FIRST_SECTOR}\n${PART_ROOT_SIZE}\n${CHANGE_BOOTFLAG}\n${PART_BOOT}\n${CHANGE_BOOTFLAG}\n${PART_ROOT}\n${APPLY}\n" + + +function preImgCreation() +{ + title "Creating Pi image" + + if ! [ -d "${FIRMWARE_PATH}/${FIRMWARE_DIR}" ]; then # the firmware directory does not exists + echo "$(ls *.zip| wc -l)" + if [ "$(ls *.zip| wc -l)" -eq 0 ]; then # the firmware archive does not exists + warning "The raspberry pi firmware need to be downloaded" + info "Downloading FIRMWARE_FILENAME" + wget ${FIRMWARE_DOWNLOAD_URL} +# curl -L -O -J ${FIRMWARE_DOWNLOAD_URL} +# curl -L ${FIRMWARE_DOWNLOAD_URL} -o firmware-stable.zip + if [ ${?} -ne 0 ]; then + error "line ${LINENO} error downloading raspberry firmware at ${FIRMWARE_DOWNLOAD_URL}: exiting" + exit 1 + fi + fi + info "extracting firmware" + unzip -d "${FIRMWARE_PATH}" *.zip + if [ ${?} -ne 0 ]; then + error "line ${LINENO} error unzipping ${FIRMWARE_PATH} : exiting" + exit 1 + fi + fi + + title "Making raspberry pi image" + return 0 +} + +function postPrepareChroot() +{ + #Nothing to do. (Except replacing default function.) + return 0 +} + + +function bunrningBootloader() +{ + #Nothing to do. (Except replacing default function.) + return 0 +} + + +function copyingCustomSystem() +{ + info "copying 10-vchiq-permissions.rules" + cp --preserve=mode "${CONFIG_PATH}/10-vchiq-permissions.rules" "${BUILD_PATH}/etc/udev/rules.d/" + info "Making /etc/modules" + echo -e "vchiq\nsnd_bcm2835\nvc4\nbrcmfmac" >> "${BUILD_PATH}"/etc/modules + + ARM_BOOT="${BUILD_PATH}/mnt/arm_boot" + if ! [ -d "${ARM_BOOT}" ]; then + mkdir -p "${ARM_BOOT}" + fi + info "copying modprobe.conf" + /usr/bin/cp -v --preserve=mode "${CONFIG_PATH}/modprobe.conf" "${BUILD_PATH}/etc/" + chown root:root "${BUILD_PATH}/etc/modprobe.conf" + + info "copying firmware, overlays in rpi boot partition" +# cp -v --preserve=mode "${BUILD_PATH}/usr/lib/linux-"* "${BOOT}/dtb" + cp -v --preserve=mode "${FIRMWARE_PATH}/${FIRMWARE_DIR}/boot/start"* "${ARM_BOOT}/" + cp -v --preserve=mode "${FIRMWARE_PATH}/${FIRMWARE_DIR}/boot/fixup"* "${ARM_BOOT}/" + cp -v --preserve=mode "${FIRMWARE_PATH}/${FIRMWARE_DIR}/boot/bootcode.bin"* "${ARM_BOOT}/" + cp -vR --preserve=mode "${FIRMWARE_PATH}/${FIRMWARE_DIR}/boot/overlays" "${ARM_BOOT}/" + + info "copying u-boot binary to ${ARM_BOOT}" + case ${TARGET_VERSION} in + "0") + info "copying u-boot for ${TARGET} 0" + cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/rpi_0_w/u-boot.bin" "${ARM_BOOT}/kernel.img" + ;; + "1") + info "copying u-boot for ${TARGET} 1" + cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/rpi/u-boot.bin" "${ARM_BOOT}/kernel.img" + ;; + "2") + info "copying u-boot for ${TARGET} 2" + cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/rpi_2/u-boot.bin" "${ARM_BOOT}/kernel.img" + ;; + "3_32") + info "copying u-boot for ${TARGET} 3 32 bits" + cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/rpi_3_32b/u-boot.bin" "${ARM_BOOT}/kernel.img" + ;; + "3+") + info "copying u-boot for ${TARGET} 3b+ 32 bits" + cp --preserve=mode "${BUILD_PATH}/usr/lib/u-boot/rpi_3_32b/u-boot.bin" "${ARM_BOOT}/kernel.img" + ;; + esac + +# info "copying raspberry optionals files in opt" +# /bin/rsync -rlptDH "${FIRMWARE_PATH}/${FIRMWARE_DIR}/opt/" "${BUILD_PATH}/opt/" + + info "copying wifi firmware file missing in kernel-firmware-nonfree" + if ! [ -d "${ROOT}/usr/lib/firmware/brcm/" ]; then + /bin/mkdir -p "${ROOT}/usr/lib/firmware/brcm/" + fi + if ! [[ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]]; then + /bin/cp --preserve=mode "${CONFIG_PATH}/brcmfmac434"* "${ROOT}/usr/lib/firmware/brcm/" + if [ ${?} -ne 0 ]; then + error "line ${LINENO} error copying wifi firmware in ${ROOTP}/usr/lib/firmware/brcm/ : exiting" + exit ${ERR_1} + fi + fi + + info "copying Mageia image to root partition" + /bin/rsync -rlptogDH --exclude "${ARM_BOOT}/" --exclude "qemu-arm-static*" "${BUILD_PATH}/" "${ROOT}/" + /bin/rsync -rlptogDH "${ARM_BOOT}/" "${BOOT}/" + return 0 +} diff --git a/platforms/rpi3+64/stable.zip b/platforms/rpi3+64/stable.zip new file mode 100644 index 0000000..fd6dc63 Binary files /dev/null and b/platforms/rpi3+64/stable.zip differ diff --git a/platforms/rpi3/specialFunctions.sh b/platforms/rpi3/specialFunctions.sh index dec8c36..b63fa2a 100755 --- a/platforms/rpi3/specialFunctions.sh +++ b/platforms/rpi3/specialFunctions.sh @@ -131,7 +131,7 @@ function copyingCustomSystem() if ! [ -d "${ROOT}/usr/lib/firmware/brcm/" ]; then /bin/mkdir -p "${ROOT}/usr/lib/firmware/brcm/" fi - if ! [ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]; then + if ! [[ -f "${ROOT}/usr/lib/firmware/brcm/brcmfmac434"* ]]; then /bin/cp --preserve=mode "${CONFIG_PATH}/brcmfmac434"* "${ROOT}/usr/lib/firmware/brcm/" if [ ${?} -ne 0 ]; then error "line ${LINENO} error copying wifi firmware in ${ROOTP}/usr/lib/firmware/brcm/ : exiting" diff --git a/platforms/xu4/specialFunctions.sh b/platforms/xu4/specialFunctions.sh index 640f18e..9860735 100755 --- a/platforms/xu4/specialFunctions.sh +++ b/platforms/xu4/specialFunctions.sh @@ -80,19 +80,11 @@ function bunrningBootloader() function copyingCustomSystem() { -<<<<<<< HEAD -# ODROID_BOOT="${BUILD_PATH}/mnt/odroid_boot" -# if ! [ -d "${ODROID_BOOT}" ]; then -# rm -rf "${ODROID_BOOT}" -# mkdir -p "${ODROID_BOOT}" -# fi -======= ODROID_BOOT="${BUILD_PATH}/mnt/odroid_boot" if ! [ -d "${ODROID_BOOT}" ]; then rm -rf "${ODROID_BOOT}" mkdir -p "${ODROID_BOOT}" fi ->>>>>>> d7c2376925bec483811b4bdada1c415b5a333b91 case ${TARGET_VERSION} in "xu4") info "copying u-boot for ${TARGET} ${TARGET_VERSION}" @@ -103,15 +95,9 @@ function copyingCustomSystem() info "Copying extlinux.conf on ${ODROID_BOOT}" cp --preserve=mode -R "${BUILD_PATH}/boot/extlinux" "${ODROID_BOOT}/" -<<<<<<< HEAD -# info "copying Mageia image to root partition" -# /bin/rsync -rlptogDH --exclude "${ODROID_BOOT}/" --exclude "qemu-arm-static*" "${BUILD_PATH}/" "${ROOT}/" -# /bin/rsync -rlptogDH "${ODROID_BOOT}/" "${BOOT}/" -======= info "copying Mageia image to root partition" /bin/rsync -rlptogDH --exclude "${ODROID_BOOT}/" --exclude "qemu-arm-static*" "${BUILD_PATH}/" "${ROOT}/" /bin/rsync -rlptogDH "${ODROID_BOOT}/" "${BOOT}/" ->>>>>>> d7c2376925bec483811b4bdada1c415b5a333b91 return 0 }