13 Feb, 2020
2 commits
-
It's a very rare if at all existing occasion when ARC CPU template
is used as is w/o any changes - in the end it's a beauty and competitive
advantage of ARC cores to be tailored for a particular use-case - and
so it doesn't make a lot of sense to offer template-based "-mcpu" selection.
Given for each and every platform we end-up adding quite a few more flags
it's logical to move "-mcpu" selection to platform's definition as well
which we exactly do here.Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin -
Given now nsim_hs38 configuration is usable on QEMU and in QEMU
we have Virtio working perfectly fine the next logical step
is to add support of supported & known to work net & bkl to this
config.Signed-off-by: Alexey Brodkin
06 Feb, 2020
1 commit
-
At present dm/device.h includes the linux-compatible features. This
requires including linux/compat.h which in turn includes a lot of headers.
One of these is malloc.h which we thus end up including in every file in
U-Boot. Apart from the inefficiency of this, it is problematic for sandbox
which needs to use the system malloc() in some files.Move the compatibility features into a separate header file.
Signed-off-by: Simon Glass
18 Jan, 2020
1 commit
-
Move this function out of common.h and into a relevant header file.
Signed-off-by: Simon Glass
03 Dec, 2019
4 commits
-
A number of board function belong in init.h with the others. Move them.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Move these two functions into the irq_funcs.h header file. Also move
interrupt_handler_t as this is used by the irq_install_handler() function.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
These functions belong in cpu_func.h. Another option would be cache.h
but that code uses driver model and we have not moved these cache
functions to use driver model. Since they are CPU-related it seems
reasonable to put them here.Move them over.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
These functions belong in cpu_func.h so move them over.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini
01 Nov, 2019
2 commits
-
Back in the day on early board samples built-in Digilent JTAG probe
was not functional so we used externally attached Ashling Opella-XD
probe. But now with production units everything works as expected and
so we anybody may enjoy readily avaialble built-in JTAG probe so
we specify Digilent oprion on MDB's command line example.Signed-off-by: Alexey Brodkin
-
Somehow EMSDP & IoT DK boards were skipped on ARC boads conversion
to DM MMC. So doing it now.Signed-off-by: Alexey Brodkin
04 Sep, 2019
2 commits
-
Even though EM SDP is FPGA-based board and different FPGA
images (known as .bit-files) are awailable for the board still
there's a common subset of options we may rely on for all configs.These are:
* Normalizer
* Swap instructions
* Simple multiplier
* Barrel-shifter
* Floating-point unit
* Shorter instructions (code density)This among other improvements allows to compile code with
64-bit divisions, see [1].[1] https://patchwork.ozlabs.org/patch/1156541/
Signed-off-by: Alexey Brodkin
Cc: Kever Yang -
If the "Page Mode" is not enabled on the device,
read operations from PSRAM may result in incorrect data.Signed-off-by: Alexey Brodkin
12 Aug, 2019
2 commits
-
Move env_get_ulong() over to the new header file.
Signed-off-by: Simon Glass
Acked-by: Joe Hershberger -
Move env_set_ulong() over to the new header file.
Signed-off-by: Simon Glass
Acked-by: Joe Hershberger
18 Apr, 2019
2 commits
-
Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin -
Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin
28 Mar, 2019
2 commits
-
Signed-off-by: Alexey Brodkin
Suggested-by: Yunir Salimzyanov -
On AXS10x boards we have non-standard NAND controller
which was never really used a lot as there're other much more
convenient [as they are standard & removable] persistent media
like SD-card and USB mass storage.Moreover after recent changes we face with some NAND controller
runtime issues. So instead of keeping support of yet another
non-standard peripheral we're dropping its support for good.Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin
03 Dec, 2018
4 commits
-
This allows us to print nice board name on boot.
Signed-off-by: Alexey Brodkin
-
Instead of "base + offset" define all registers right away
and access them later via direct defines.Generate bit masks with "BIT" macro.
Signed-off-by: Alexey Brodkin
-
We do real CPU clock measurement with help of built-in
counters. Thus we may accommodate different real clock values
that appear in different FPA images instead of relying on
something hard-coded in the .dtb.And while at it make make SDIO base address define
look similar to others with casting to "(void *)".Signed-off-by: Alexey Brodkin
-
Since we now do advanced CPU identification in
generic ARC code there's no need to have per-board
hardcoded data.Signed-off-by: Alexey Brodkin
02 Nov, 2018
2 commits
-
Signed-off-by: Alexey Brodkin
-
Real marketing name of the board was recently updated so
to accommodate that change renaming the board and all
related to it.Signed-off-by: Alexey Brodkin
12 Oct, 2018
5 commits
-
So now we may detect MMC/SD-card existence and
instead of completely misleading message on missing card:
------------------------>8-----------------------
Loading Environment from FAT... Card did not respond to voltage select!
------------------------>8-----------------------we now get very clear one:
------------------------>8-----------------------
Loading Environment from FAT... MMC: no card present
------------------------>8-----------------------Signed-off-by: Alexey Brodkin
-
Since gd->cpu_clk is a global item we may once populate it from .dtb
ans use it then in other places like for printing CPU info etc.Signed-off-by: Alexey Brodkin
-
Signed-off-by: Alexey Brodkin
-
It is done by writing some magic sequence in a special register.
Signed-off-by: Alexey Brodkin
-
ARC IDENTITY register only encodes major architecture
type and version while for a particular board/silicon we
may know better which template was used and so we may identify
CPU more precise, which exactly we do here.Signed-off-by: Alexey Brodkin
05 Oct, 2018
1 commit
-
The DesignWare ARC IoT Development Kit is a versatile platform
that includes the necessary hardware and software to accelerate
software development and debugging of sensor fusion,
voice recognition and face detection designs.More information is avaialble here [1] and here [2].
The board is based on real silicon with
ARC EM9D-based Data Fusion IP Subsystem.It sports a rich set of I/O including
* DW USB OTG
* DW MobileStorage (used for micro SD-card)
* GPIO
* multiple serial interface including DW APB UART
* ADC, PWM and eFlash, SRAM and SPI Flash memory
* Real-Time Clock (RTC)
* Bluetooth module with worldwide regulatory compliance
(FCC, IC, CE, ETSI, TELEC)
* On-board 9-axis sensor (gyro, accelerometer and compass)Extensible with Arduino, Pmod, mikroBUS connectors and a 2x18
extension header.One of the most interesting features for developers is built-in
Digilent USB JTAG probe so only micro-USB cable is needed![1] https://www.synopsys.com/dw/ipdir.php?ds=arc_iot_development_kit
[2] https://www.synopsys.com/dw/doc.php/ds/cc/iot_dev_kit.pdfSigned-off-by: Alexey Brodkin
31 Jul, 2018
3 commits
-
1. Explained prerequisites for "make bsp-generate" command.
2. Cleaned-up duplicatesSigned-off-by: Alexey Brodkin
-
Since U-Boot tools are being built anyways it's much nicer
to use them instead of relying on some of them bein installed
on build host (which might easily not be the case).Signed-off-by: Alexey Brodkin
-
AXS10x boards have preloader that reads SPI flash pages and searches
special image header to fetch and load binary.Add tool, make target (bsp-generate) to generate
update script and u-boot binary image with header for preloader.Also add script to default environment to apply updates.
Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin
21 Jun, 2018
1 commit
-
Signed-off-by: Alexey Brodkin
15 Jun, 2018
2 commits
-
Signed-off-by: Alexey Brodkin
-
HSDK board has preloader that reads SPI flash pages and searches
for a special image header to fetch and load binary.Add tool, make target (bsp-generate) to generate
update script and u-boot binary image with header for preloader.Also add script to default environment to apply updates.
Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin
01 Jun, 2018
1 commit
-
Synopsys DesignWare ARC EM Development Kit (ARC EMDK) is
an FPGA-based development platform from Synopsys aimed to speed-up
development of software for ARC EM cores and entire subsystems based on
ARC EM like Data Fusion, Secure and Sensor & Control subsystems.U-Boot is supposed to be used as a primary bootloader on EMDK allowing
users to easily load and start their application from micro-SD card.Signed-off-by: Alexey Brodkin
07 May, 2018
1 commit
-
When U-Boot started using SPDX tags we were among the early adopters and
there weren't a lot of other examples to borrow from. So we picked the
area of the file that usually had a full license text and replaced it
with an appropriate SPDX-License-Identifier: entry. Since then, the
Linux Kernel has adopted SPDX tags and they place it as the very first
line in a file (except where shebangs are used, then it's second line)
and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibility
and in part for other minor reasons, switch over to that style.This commit changes all instances where we have a single declared
license in the tag as both the before and after are identical in tag
contents. There's also a few places where I found we did not have a tag
and have introduced one.Signed-off-by: Tom Rini
02 Apr, 2018
1 commit
-
This patch add support of hsdk platform-specific commands:
hsdk_clock set - set clock from axi_freq, cpu_freq and tun_freq
environment variables/command line argumentshsdk_clock get - save clock frequencies to axi_freq, cpu_freq
and tun_freq environment variableshsdk_clock print - show CPU, AXI, DDR and TUNNEL current
clock frequencies.hsdk_clock print_all - show all currently used clock frequencies.
hsdk_init - setup board HW in one of pre-defined configuration
(hsdk_hs34 / hsdk_hs36 / hsdk_hs36_ccm / hsdk_hs38 /
hsdk_hs38_ccm / hsdk_hs38x2 / hsdk_hs38x3 / hsdk_hs38x4)hsdk_go - run baremetal application on hsdk configured
by hsdk_init command.This patch changes default behaviour of 'bootm' command:
now we are able to set number of CPUs to be kicked by setting
'core_mask' environment variable before 'bootm' command run.Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin
23 Mar, 2018
1 commit
-
Refactor GO and PREP subcommands implementation for a simpler
override in the boards platform code.Signed-off-by: Eugeniy Paltsev
Signed-off-by: Alexey Brodkin