aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/imx6
Commit message (Collapse)AuthorAgeFilesLines
* treewide: use new procd sysupgrade $UPGRADE_BACKUP variableRafał Miłecki2019-09-051-1/+1
| | | | | | | | | | It's a variable set by procd that should replace hardcoded /tmp/sysupgrade.tgz. This change requires the most recent procd with the commit 0f3c136 ("sysupgrade: set UPGRADE_BACKUP env variable"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: when copying a backup file always specify dest nameRafał Miłecki2019-09-051-1/+1
| | | | | | | $CONF_TAR shouldn't be assumed to always point to the sysupgrade.tgz. This change makes code more generic and allows refactoring $CONF_TAR. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: don't hardcode "sysupgrade.tgz" file nameRafał Miłecki2019-09-051-1/+2
| | | | | | | | 1) Add BACKUP_FILE and use it when copying an archive to be restored after sysupgrade (on the next preinit). 2) Use CONF_TAR for copying backup prepared by the /sbin/sysupgrade Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: replace remaining (not working now) $SAVE_CONFIG usesRafał Miłecki2019-09-051-1/+1
| | | | | | | This var has been replaced by the $UPGRADE_OPT_UPGRADE_OPT_SAVE_CONFIG Fixes: b534ba961100 ("base-files: pass "save_config" option to the "sysupgrade" method") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* imx6: bump SDMA firmware to 3.5Koen Vandeputte2019-07-311-0/+0
| | | | | | | | | | - add uart rom script address in header of sdma firmware to support the uart driver of latest kernel working well while old firmware assume ram script used for uart driver as NXP internal legacy kernel. - add multi-fifo SAI/PDM scripts. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: apalis: add missing jffs2reset to ramfs during sysupgradePetr Štetiar2019-07-171-1/+1
| | | | | | | | | | | | | jffs2reset is used to cleanup the rootfs_data overlay, but it's currently missing in the ramfs during sysupgrade leading to the following error: Switching to ramdisk... Performing system upgrade... /lib/upgrade/do_stage2: line 27: jffs2reset: not found Fixes: 2f1a11d0089c ("imx6: apalis: fix config survival after sysupgrade -n") Signed-off-by: Petr Štetiar <ynezz@true.cz>
* imx6: apalis: fix sysupgrade pathsPetr Štetiar2019-07-171-5/+2
| | | | | | | | We can't use $board_name in sysupgrade paths for kernel and rootfs as we currently generate one image which could be used on two different base boards. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* treewide: kernel: bump some targets to 4.19Petr Štetiar2019-06-181-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lets bump kernel to 4.19 on targets which were run tested or got ACKed so we've enough time to make it ready for next release: armvirt/32 (runtested in qemu) armvirt/64 (runtested in qemu) ath79/generic (runtested on Carambola2) gemini/generic (runtested on DIR-685, DNS-313, SQ201, SL93512R) imx6/generic (runtested on Apalis) ipq40xx/generic (runtested on nbg6617) malta/be64 (runtested in qemu) malta/be (runtested in qemu) malta/le (runtested in qemu) malta/le64 (runtested in qemu) mpc85xx/generic (runtested on TL-WDR4900) mpc85xx/p2020 (runtested on P2020RDB) mvebu/cortexa53 mvebu/cortexa72 mvebu/cortexa10 octeon/generic (runtested on EdgeRouter Lite) sunxi/cortexa53 (build tested only) sunxi/cortexa7 (runtested on Lime2-K) sunxi/cortexa8 (build tested only) tegra/generic x86/64 (runtested in qemu) Acked-by: Zoltan HERPAI <wigyori@uid0.hu> [sunxi] Tested-by: Linus Walleij <linus.walleij@linaro.org> [gemini] Tested-by: Tomasz Maciej Nowak <tomek_n@o2.pl> [mvebu, tegra] Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net> [octeon] Tested-by: Pawel Dembicki <paweldembicki@gmail.com> [mpc85xx/generic mpc85xx/p2020] Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* imx6: apalis: fix config survival after sysupgrade -nPetr Štetiar2019-05-201-0/+13
| | | | | | | | | This patch fixes `sysupgrade -n` when flashed with rootfs of the same size as currently running, so the rootfs_data wouldn't get destroyed and thus survive reboot. So let's fix it by always cleaning up the content of the rootfs_data during sysupgrade. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: Move some DSA config options to generic configHauke Mehrtens2019-05-141-3/+0
| | | | | | | This moves some new configuration options to the generic kernel configuration instead of configuring them for each target on our own. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* build: add a config option for enabling a testing version of the target kernelFelix Fietkau2019-05-111-0/+1
| | | | | | | If the target supports a newer kernel version that is not used by default yet, it can be enabled with this option Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: bump 4.19 to 4.19.35Koen Vandeputte2019-04-222-12/+12
| | | | | | | | | | | | | | | Refreshed all patches. Fixes: - CVE-2019-3887 New symbol: - CONFIG_LDISC_AUTOLOAD Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: bump sdma firmware to 3.4Koen Vandeputte2019-04-091-0/+0
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: Add support for Toradex Apalis family of CoMsPetr Štetiar2019-04-0811-1/+495
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the following computer on modules (CoM) from Toradex[A]: Apalis iMX6 Quad 2GB IT - i.MX 6Quad 800MHz, 2GB DDR3, 4GB eMMC -40° to +85° C Temp Apalis iMX6 Quad 1GB - i.MX 6Quad 1GHz, 1GB DDR3, 4GB eMMC 0° to +70° C Temp Apalis iMX6 Dual 1GB IT - i.MX 6Dual 800MHz, 1GB DDR3, 4GB eMMC -40° to +85° C Temp Apalis iMX6 Dual 512MB - i.MX 6Dual 1GHz, 512MB DDR3, 4GB eMMC 0° to +70° C Temp I've developed and tested it on Quad 2GB IT v1.1A and Dual 512MB v1.1A CoMs, using Ixora[B] carrier board v1.0A, but it should hopefuly work on Eval[C] board as well. A. https://www.toradex.com/computer-on-modules/apalis-arm-family/nxp-freescale-imx-6 B. https://www.toradex.com/products/carrier-board/ixora-carrier-board C. https://www.toradex.com/products/carrier-board/apalis-evaluation-board Flashing/recovery instructions: 1. Download and compile imx_loader for OpenWrt from https://github.com/ynezz/imx_loader 2. Enter recovery mode as desribed in https://developer.toradex.com/knowledge-base/imx-recovery-mode 3. Connect board via USB to the host computer, check that it's connected by lsusb: 15a2:0054 Freescale Semiconductor, Inc. i.MX 6Dual/6Quad SystemOnChip in RecoveryMode 4. Copy following OpenWrt images to imx_loader directory: SPL u-boot.img u-boot-with-spl.imx openwrt-imx6-apalis-recovery.scr openwrt-imx6-apalis-squashfs.combined.bin 5. Run imx_usb in imx_loader directory Signed-off-by: Petr Štetiar <ynezz@true.cz>
* imx6: image: Split imx6-sdcard image for reusabilityPetr Štetiar2019-04-081-3/+16
| | | | | | | I'm going to reuse the imx6-sdcard image commands for building of Apalis eMMC images. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* imx6: fix legacy IRQ support (4.19)Koen Vandeputte2019-03-221-0/+2
| | | | | | | | | | | | | | | The PCIe DWC host controller is now using MSI (Message-signaled-interrupts) by default. While ath9k itself does support MSI here, a lot of wlan adapters do not. Avoid non-functioning cards by simply continue to disable MSI for now. This can be done by appending "pci=nomsi" to the boot cmdline. Also an extra fix needs to be backported which avoids MSI initialization which prevented legacy IRQ's init from taking over. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: enable PCIe (4.19)Koen Vandeputte2019-03-221-0/+9
| | | | | | | The DWC host controller symbols are now depending on a few others Fixes: ca1b93f038a5 ("imx6: add support for kernel 4.19") Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: enable crypto acceleration (4.19)Koen Vandeputte2019-03-221-5/+8
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: enable crypto accelerationKoen Vandeputte2019-03-221-5/+8
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: refresh kernel configsKoen Vandeputte2019-03-222-5/+5
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: disable CONFIG_USB_IMX21_HCD in default for kernel 4.14Yangbo Lu2019-02-171-1/+0
| | | | | | | | | | | CONFIG_USB_IMX21_HCD should be handled in generic config and module package. So moved it into generic config. This also fixed build issue (kernel config question) of layerscape armv8_32b since it also used ARCH_MXC. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> [Deactivate CONFIG_USB_IMX21_HCD also for kernel 4.19] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* imx6: add support for kernel 4.19Koen Vandeputte2019-01-282-0/+541
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: image: ventana: Add missing BOOT_SCRIPT variablePetr Štetiar2018-11-251-0/+1
| | | | | | | | | | This is probably theoretical problem as the Ventana is defined first in the image Makefile, but once the position of the definition would change in the future (alphabetical sorting?) it would get bootscript from the previous board which would have BOOT_SCRIPT set. Cc: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* imx6: fix DMA transaction errorsKoen Vandeputte2018-11-063-23/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following errors were seen in the past on imx6 when using serial: [ 22.617622] imx-uart 2020000.serial: DMA transaction error. [ 22.623228] imx-uart 2020000.serial: DMA transaction error. [ 22.628826] imx-uart 2020000.serial: DMA transaction error. [ 22.648951] imx-uart 2020000.serial: DMA transaction error. [ 22.654558] imx-uart 2020000.serial: DMA transaction error. [ 22.660156] imx-uart 2020000.serial: DMA transaction error. Which is the reason why DMA for the serial ports got disabled in commits: efb362cd93b0 ("imx6: disable dma on uart") 3b4241071dd4 ("imx6: disable UART dma") As indicated on mailinglist discussion, the cause seems to be the usage of very old SDMA firmware which is present in the soc: [ 0.624302] imx-sdma 20ec000.sdma: Direct firmware load for imx/sdma/sdma-imx6q.bin failed with error -2 [ 0.624318] imx-sdma 20ec000.sdma: Falling back to user helper [ 64.531607] imx-sdma 20ec000.sdma: external firmware not found, using ROM firmware This patch adds the new firmware binary. (2196 bytes) It is required to embed the binary into the kernel image, as it gets loaded very early in the boot process where the rootfs is not available yet: [ 0.622966] imx-sdma 20ec000.sdma: loaded firmware 3.3 Extended testing shows that the DMA errors are not seen anymore when using this newer firmware version. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.77Koen Vandeputte2018-10-191-0/+1
| | | | | | | | | | | | | | | Refreshed all patches. Altered patches: - 666-Add-support-for-MAP-E-FMRs-mesh-mode.patch New symbol for arm targets: - HARDEN_BRANCH_PREDICTOR Compile-tested on: ar71xx, cns3xxx, imx6 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: use BUILD_DEVICES in uboot-imx6 for mx6cuboxiFelix Fietkau2018-09-051-1/+1
| | | | | | Fixes build with the default profile Signed-off-by: Felix Fietkau <nbd@nbd.name>
* imx6: rename Generic profile to Default, fixes u-boot image build issueFelix Fietkau2018-09-051-4/+4
| | | | | | | u-boot.mk checks for the Default profile to build images for all targets. This brings the target default profile in sync with other targets Signed-off-by: Felix Fietkau <nbd@nbd.name>
* imx6: extend cubox support to hummingboard, add support for building full imagesFelix Fietkau2018-09-033-12/+54
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* imx6: enable f2fs and loopback support in preparation for squashfs with ↵Felix Fietkau2018-09-032-1/+8
| | | | | | overlay support Signed-off-by: Felix Fietkau <nbd@nbd.name>
* imx6: Initial support for SolidRun CuBox-i devices based on i.MX6 processors ↵Vladimir Vid2018-08-254-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (i1, i2, i2eX, and i4Pro). - Specifications - CuBox i1: - SoC: i.MX6 Solo - Cores: 1 - Memory Size: 512MB - GPU: GC880 - Wifi/Bluetooth: Optional - USB 2.0 ports: 2 - Ethernet: 10/100/1000 Mbps CuBox i2 | i2eX: - SoC: i.MX6 Dual Lite - Cores: 2 - Memory Size: 1GB - GPU: GC2000 - Wifi/Bluetooth: Optional - USB 2.0 ports: 2 - Ethernet: 10/100/1000 Mbps CuBox i4Pro | i4x4: - SoC: i.MX6 Quad - Cores: 4 - Memory Size: 2/4 GB - GPU: GC2000 - Wifi/Bluetooth: Build In - USB 2.0 ports: 2 - Ethernet: 10/100/1000 Mbps Built-in u-boot requires SPL (secondary program loader) to be present on the SD-card regardless of the image type which will be loaded. SPL is generated by the u-boot-mx6cuboxi package which is preselected by the target device and can be found in bin/u-boot-mx6cuboxi directory. Flashing the SPL: dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=4 dd if=bin/targets/imx6/generic/u-boot-mx6cuboxi/SPL of=/dev/mmcblk0 bs=1K seek=1 Preparing the firmware on the SD-card: (echo o; echo n; echo p; echo 1; echo ''; echo ''; echo w) | fdisk /dev/mmcblk0 mkfs.ext4 /dev/mmcblk0p1 mount /dev/mmcblk0p1 /mnt tar -xzf bin/targets/imx6/generic/openwrt-imx6-device-cubox-i-rootfs.tar.gz -C /mnt/ mkdir -p /mnt/boot cp bin/targets/imx6/generic/{*-uImage,*.dtb,*.scr} /mnt/boot/ Generated u-boot.img needs to be placed on the first partition: cp bin/targets/imx6/generic/u-boot-mx6cuboxi/u-boot.img /mnt/ To boot from the SD card: Boot script which sets mmc/dtb parameters and boots the board is automatically sourced. If this does not work for any reason: mmc dev 0; load mmc 0:1 $scriptaddr boot/boot.scr; source $scriptaddr Currently imx6dl-cubox-i.dtb (Dual Lite) and imx6q-cubox-i.dtb (Quad) device trees are available. Tested on i4Pro, MMC, USB (+ HiD), HDMI and ethernet ports are working. Wireless and bluetooth are broken ATM. According to SolidRun forums, BCM4329/BCM4330 firmware is used which works fine on older kernels. Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
* kernel: enable THIN_ARCHIVES by defaultSergey Ryazanov2018-05-221-1/+0
| | | | | | | | THIN_ARCHIVES option is enabled by default in the kernel configuration and no one target config disables it. So enable it by default and remove this symbol from target specific configs to keep them light. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: enable FUTEX_PI by defaultSergey Ryazanov2018-05-221-1/+0
| | | | | | | | | New FUTEX_PI configuration symbol enabled if FUTEX and RT_MUTEX symbols are enabled. Both of these symbols are enabled by default in the generic config, so enable FUTEX_PI by default too to keep platform specific configs minimal. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: enable EXPORTFS by defaultSergey Ryazanov2018-05-221-1/+0
| | | | | | | | OVERLAY_FS config symbol selects EXPORTFS since 4.12 kernel, we have OVERLAY_FS enabled by default, so enable EXPORTFS in the generic config of 4.14 and remove this option from platform specific configs. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: disable DRM_LIB_RANDOM by defaultSergey Ryazanov2018-05-221-1/+0
| | | | | | | DRM_LIB_RANDOM config symbol selected only by DRM_DEBUG_MM_SELFTEST which is disable by default, so disable DRM_LIB_RANDOM by default too. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: disable DMA_{NOOP|VIRT}_OPS by defaultSergey Ryazanov2018-05-221-2/+0
| | | | | | | These options do not used by any supported arch, so disable them by default to make arch configs a bit more clean. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: disable ARCH_WANTS_THP_SWAP by defaultSergey Ryazanov2018-05-221-1/+0
| | | | | | | | Only one arch (x86_64) enables this option. So disable ARCH_WANTS_THP_SWAP by default and remove referencies to it from all configs (except x86_64) to make them clean. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: generic: Move config option to genericHauke Mehrtens2018-03-021-1/+0
| | | | | | | This is deactivated in all targets using the DSA switch driver with kernel 4.14. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* imx6: disable dma on uartKoen Vandeputte2018-02-221-0/+23
| | | | | | | | | | | | | | | | | | | | | | | When this target got updated to 4.14, this patch got removed to re-evaluate if it was still needed. Extensive testing now shows this issue is still present. Let's re-add the patch to fix it for now. As the uart bus is very low bandwidth .. performance impact is negligible. Boot log: [ 22.513051] imx-uart 2020000.serial: DMA transaction error. [ 22.522721] imx-uart 2020000.serial: DMA transaction error. As a sidenote: The patch mentiones an issue with RS485, but the bootlog errors above were recorded with the uart ports in standard RS232 mode. Compile/Run-tested on imx6/GW5200 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: remove support for 4.9Tim Harvey2018-02-198-1242/+0
| | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: switch to Linux 4.14Tim Harvey2018-02-191-1/+1
| | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: add support for Linux 4.14Tim Harvey2018-02-193-0/+549
| | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* treewide: move nand_do_upgrade call to platform_do_upgradeMathias Kresin2018-02-161-1/+1
| | | | | | | | | | Calling nand_do_upgrade() from platform_pre_upgrade() was deprecated with 30f61a34b4cf ("base-files: always use staged sysupgrade"). Update the platform upgrade code to use platform_do_upgrade() for NAND images as well. Signed-off-by: Mathias Kresin <dev@kresin.me>
* imx6: use DTS_DIR at image build codeAdrià Llaudet2018-02-101-1/+1
| | | | | | | | | Use "$(DTS_DIR)", defined at include/image.mk, instead of "$(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/dts" in order to generalize and allow a better Device/* device-tree parameterization (i.e. DEVICE_DTS_DIR and DTS_DIR). Signed-off-by: Adrià Llaudet <adria.llaudet@gmail.com>
* imx6: add support for the intel gbit driver on GW5520Koen Vandeputte2018-01-171-0/+1
| | | | | | | | | | The Gateworks GW5520 board uses 2x intel gigabit mac's, instead of the internal i.MX6 FEC. Add support for these. Signed-off-by: Scott V. Kamp <outbackdingo@gmail.com> Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* treewide: add only one device when appending to TARGET_DEVICESLuis Araneda2017-12-121-4/+3
| | | | | | | | | This will avoid some conflicts when doing a git rebase or merge, specially when adding support to a new device. Signed-off-by: Luis Araneda <luaraneda@gmail.com> [drop brcm47xx changes which rename the images] Signed-off-by: Mathias Kresin <dev@kresin.me>
* imx6: add driver for temp/voltage monitoringKoen Vandeputte2017-08-181-0/+3
| | | | | | | The Gateworks System Controller (GSC) mimics a standard AD7418 device on I2C bus 0 at slave 0x29. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: refresh kernel configKoen Vandeputte2017-08-181-5/+0
| | | | Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* treewide: drop target board_name functionsMathias Kresin2017-07-151-9/+0
| | | | | | They are not used any longer. Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: use the generic board_name functionMathias Kresin2017-07-152-6/+3
| | | | | | Use the generic function instead ot the target specific ones. Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: do board detection during preinitMathias Kresin2017-07-152-1/+9
| | | | | | Do the board detection during preinit to unify it across all targets. Signed-off-by: Mathias Kresin <dev@kresin.me>