summaryrefslogtreecommitdiffstats
path: root/target/linux/arc770
Commit message (Collapse)AuthorAgeFilesLines
* kernel: update kernel 4.4 to version 4.4.20Álvaro Fernández Rojas2016-09-151-5/+0
| | | | | | | Refresh patches for all targets that support kernel 4.4. Compile-tested on brcm2708 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* build: fix subtarget descriptionsFelix Fietkau2016-09-041-2/+2
| | | | | | Move Target/Description above the target.mk include Signed-off-by: Felix Fietkau <nbd@nbd.name>
* arc770: Introduce images for SD-cardsAlexey Brodkin2016-08-288-73/+102
| | | | | | | | | | | | | | | | | | | Historically on ARC we started from initramfs-based images because: a) It was much easier to debug especially when toolchain and other components were changing quite dynamically b) It was our usual approach for embedded Linux But now with ARC port of Lede/OpenWRT getting more stable and mature we're ready for more real-life scenarios with FS permanently stored on SD-card. This essentially benefits from ability to setup devices that survive reboots with all settings and extra packages kept in place. Still we keep an ability to build images with initramfs. This allows us to use storage-less simulators for testing still. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: John Crispin <john@phrozen.org> Cc: Jo-Philipp Wich <jo@mein.io>
* arc770: Remove MMC kernel modules, they are built-in nowAlexey Brodkin2016-08-282-2/+2
| | | | | | | | If we want to boot from SD-card we need to have corresponding drivers already built-in so there's no point in having these modules. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* arc770: Update kernel configurationAlexey Brodkin2016-08-281-1/+9
| | | | | | | | | | | | | | Now when we're switching to FS on SD-card it's necessary to have full stack of MMC block & FC drivers built-in otherwise kernel won't be able to mount FS with needed modules. Also we enable parsing of input parameters passed to the kernel by U-Boot. Otherwise kernel won't know where to look for command line and what's worse device tree blob (we had to disable this by default for cases when kernel is loaded by JTAG and core registers may have undefined state lading to kernel going bonkers). Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* arc770: Reduce generalizationAlexey Brodkin2016-08-281-25/+13
| | | | | | | | | | | | | | As support of ARC 770 in OpenWRT/Lede matures we don't need debug-only output binaries any longer, so purging vmlinux for AXS10x boards. As for uImage for nSIM it makes completely no sense because there's no way to run U-Boot on nSIM. So we remove add_arcYYY_XXX scripts making code more compact and cleaner. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* linux/arc*: disable MAC frame filter in DW GMACAlexey Brodkin2016-08-241-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | DW GMAC on ARC SDP boards doesn't enter promiscuous mode if Ethernet PHY haven't got established link. Good examples are auto-negotiation in progress or disconnected cable. We do see Linux kernel sets GMAC's MAC filter register properly but GMAC's hardware doesn't accept new settings. We believe it is a hardware issue, most probably problem of integration of DW GMAC and PHY on the board. As a work-around we completely disable frame filtering in GMAC hardware (once and for good) which forces GMAC to enter promiscuous mode with the first write to MAC filter register. That gives us working bridge that consists of eth0 and wlan0 (USB Wi-Fi dongle). I.e. we finally have working "Dumb AP" setup made of ARC AXS10x boards. Given that hack is quite dirty (in loaded wired networks this will effectively load CPU with junk packets even if user doesn't need promisc mode) and there's no indication any other boards with DW GMAC suffer from the same issue we're patching only kernel for ARC boards. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: John Crispin <john@phrozen.org>, Cc: Felix Fietkau <nbd@nbd.name>
* arc: use patched .dts from sourcesAlexey Brodkin2016-08-166-456/+1
| | | | | | | | | | | | | | Instead of using off-the-tree .dts files for ARC boards we're switching to use in-tree ones. And for that to work properly we apply upstream patch that adds currently missing "model" property. Upstream patch and discussion could be found here: http://lists.infradead.org/pipermail/linux-snps-arc/2016-August/001394.html Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Jonas Gorski <jonas.gorski@gmail.com> Cc: John Crispin <john@phrozen.org>
* image.mk: clean up redundant code related to DEVICE_DTSFelix Fietkau2016-07-151-2/+1
| | | | | | | | It is used by a core build template, so the variable should be initialized and added to DEVICE_VARS in the core. Same for DEVICE_DTS_DIR Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Revert "linux: arc: disable kernel unwinding to fix modules loading"Alexey Brodkin2016-07-111-1/+2
| | | | | | | | | | This reverts commit acd41539d630688e9891003c9b51cace3e113316. There's a fix in upstream that will at some point land in 4.4 stable as well so we'll get rid of this hack and with the next commit will apply upstream fix. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* linux: arc: disable kernel unwinding to fix modules loadingAlexey Brodkin2016-06-221-2/+1
| | | | | | | | | | | | | | | | | | | | | With update of binutils for ARC (this is now based on upstream 2.26) we noticed issues with loadable kernel modules. Something like that was happening: --------------------->8------------------- mbcache: unknown relocation: 49 insmod: can't insert './mbcache.ko': invalid module format --------------------->8------------------- More details could be found in that discussion in binutils mailing list: http://thread.gmane.org/gmane.comp.gnu.binutils/74662 As of now the simplest work-around is to disable in-kernel unwinder for now. That will at least allow us to use modules again. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: John Crispin <john@phrozen.org>
* arc: Build uImage as well as vmlinux output filesAlexey Brodkin2016-06-051-8/+36
| | | | | | | | | | | | | | | | | | | | | | Initially for ARC we were building vmlinux images because it was both simpler and more convenient to debug Linux kernel in runt-time via JTAG. Now when base system works quite nice we may finally use U-Boot for loading the system image as well. Still we keep building vmlinux images as some of our boards are development boards and loading images with JTAG could be at some points very beneficial. Note for U-Boot header it's required to specify 2 values: * loading address * entry point (if it doesn't match loading address) and in case of ARC entry point (EP) not only differs from loading address but also changes from build to build due to initramfs being placed between loading address and text section. To accommodate that feature we have to calculate EP after vmlinux gets built and before call to mkimage. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* arc770: enable unaligned access handling simulation in softwareJohn Crispin2016-04-091-2/+3
| | | | | | | | | | | | This enables misaligned access handling by software in Linux kernel. With some wireless drivers (ath9k-htc and mt7601u for example) we see misaligned accesses here and there and to cope with that without fixing stuff in the drivers we're just gracefully handling it on ARC. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> SVN-Revision: 49134
* arc770: build kmod-ath9k-htc wpad-mini by defaultJohn Crispin2016-04-092-2/+2
| | | | | | | | | | | | | | | | AXS101 beind a development board lacks built-in wireles inerfaces. So we have to use external USB dongles to turn the board into wireless router. The best USB Wi-Fi dongles to work in AP-mode seem to be based on ath9k-htc chipset. And so with that change we add support of mentioned dongles in default and axs101 builds. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> SVN-Revision: 49133
* base-files: remove default /etc/config/network, generate it via board.d insteadFelix Fietkau2016-01-251-3/+0
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48493
* arc: clean-up and move CFLAGS to include/target.mkFelix Fietkau2016-01-181-1/+0
| | | | | | | | | | | | | | | | | | | Most of currently mentioned CFLAGS in arc770/Makefile are not really required because: [1] "-Os -pipe" are set by default in include/target.mk [2] "-fno-caller-saves" gets enabled via menuconfig as an extra compiler flag for developers So the only one that makes sense is "-matomic" and that one is really essential. Without it many software packges won't build complainin on unresolved atomic ops. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48326
* arc770/axs101: fix console outputFelix Fietkau2016-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While bumping kernel version kernel command line was unintentionally modified in attempt to make it closer to upstream version. In case of AXS that has not only serial port but HDMI/USB both capable of being debug console we have 2 entries in kernel's command line: ------------------->8----------------- console=tty0 console=ttyS3,115200n8 ------------------->8----------------- But as it turned out OpenWRT uses procd as init instead of Busybox. And in its turn procd gets the first "console" entry from kernel command line (/proc/cmdline) and uses it if default inittab is used: ------------------->8----------------- ... ::askconsole:/bin/ash --login ------------------->8----------------- So what we got is non-functional serial console. That change removes "console=tty0" which brings serial console back to life. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48325
* arc770: move arc patches to target/linux/genericFelix Fietkau2016-01-152-127/+0
| | | | | | | | | | | | | | | | Given those patches are relevant to any ARC platform and even ISA version it makes perfect sense for patches to exist in one place instead of being duplicated for each new ARC-based ASIC. Note this is a prerequisite for upstreaming of ARC HS38 support in OpenWRT. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48241
* arc770: bump linux kernel from 4.3 to 4.4Felix Fietkau2016-01-158-25/+30
| | | | | | | | | | | | | | | | This switch involved: [1] Regeneration of config (few options went away) [2] Regeneration of patches so they apply cleanly (different offsets) [3] Update of .dts files because we now explicitly specify memory regions in use as opposed to previously used offset from 0x8000_0000 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48240
* kernel/4.3: update to version 4.3.3Hauke Mehrtens2016-01-122-19/+5
| | | | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de SVN-Revision: 48224
* targets: add kernel image dependencies on device tree filesFelix Fietkau2016-01-061-0/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48146
* all: drop old uci-defaults.shJo-Philipp Wich2015-12-111-1/+1
| | | | | | | | | Replace former uci-defaults.sh implementation with the uci-defaults-new.sh one and update all users accordingly. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 47867
* all: remove redundant board.d/00_model filesJo-Philipp Wich2015-12-041-13/+0
| | | | | | Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 47753
* arc770: switch from uci-defaults to board.dJo-Philipp Wich2015-12-033-23/+32
| | | | | | Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 47743
* linux: add support of Synopsys ARC770-based boardsFelix Fietkau2015-11-2219-0/+981
This patch introduces support of new boards with ARC cores. [1] Synopsys SDP board This is a new-generation development board from Synopsys that consists of base-board and CPU tile-board (which might have a real ASIC or FPGA with CPU image). It sports a lot of DesignWare peripherals like GMAC, USB, SPI, I2C etc and is intended to be used for early development of ARC-based products. [2] nSIM This is a virtual board implemented in Synopsys proprietary software simulator (even though available for free for open source community). This board has only serial port as a peripheral and so it is meant to be used for runtime testing which is especially useful during bring-up of new tools and platforms. What's also important ARC cores are very configurable so there're many variations of options like cache sizes, their line lengths, additional hardware blocks like multipliers, dividers etc. And this board could be used to make sure built software still runs on different HW configurations. Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> SVN-Revision: 47589