Anounce state of BIM switch which defines if U-boot is loaded
and started by preloader or not.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 7 +++
1 file changed, 7 insertions(+)
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index a3e0563ff45
Add reset phandle to EHCI device tree node to make on-chip reset
controller usable with EHCI.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/hsdk-common.dtsi | 7 +++
1 file changed, 7 insertions(+)
diff --git a/arch/arc/dts/hsdk-common.dtsi b/arch/arc/dts/hsdk-common.dtsi
index
Remove redundant '0x' from node names.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/axs10x_mb.dtsi | 4 ++--
arch/arc/dts/hsdk-common.dtsi | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arc/dts/axs10x_mb.dtsi b/arch/arc/dts/axs10x_mb.dtsi
index 5
Drop creg_div_oft offset as it doesn't vary (due to it is used for
CPU PLL only).
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 57 +++---
1 file changed, 28 insertions(+), 29 deletions(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/driver
HSDK and HSDK-4xD clock trees are slightly different.
commit 1dfb2ec0d7fb ("ARC: HSDK: CGU: add support for timer clock")
introduce regression for HSDK board cause crash when setting
tunnel clock.
Fix that and do required code cleanup.
Eugeniy Paltsev (8):
CLK: ARC: HSDK:
Minor code cleanup to improve readability. No functional change intended.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 75 --
1 file changed, 39 insertions(+), 36 deletions(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk-hsdk
* constify clocks config data where is possible
* use more appropriate data types for clocks config
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 41 +++---
1 file changed, 21 insertions(+), 20 deletions(-)
diff --git a/drivers/clk/clk-hsdk
The clock trees of HSDK and HSDK-4xD vary so we need to prepare
CGU driver for multiple clock maps support.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 27 ---
1 file changed, 20 insertions(+), 7 deletions(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b
We don't want to allow change some clocks, i.e. DDR clock.
So allow to have set_clock to be unset in clock map.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk
hsdk_axi_clk_cfg and hsdk_tun_clk_cfg clock divider structures
and functions for their processing are almost the same so
merge them to avoid code duplication.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 112 +
1 file changed, 40 insertions
HSDK and HSDK-4xD clock trees are slightly different.
commit 1dfb2ec0d7fb ("ARC: HSDK: CGU: add support for timer clock")
introduce regression for HSDK board cause crash when setting
tunnel clock. Fix that.
Fixes: 1dfb2ec0d7fb ("ARC: HSDK: CGU: add support for timer clock")
Si
Define clock map with DT binding constants so clock map can be
discontinuous.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 56 --
1 file changed, 29 insertions(+), 27 deletions(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk
As of today 'random' command return 1 (CMD_RET_FAILURE) in case
of successful execution and 0 (CMD_RET_SUCCESS) in case of bad
arguments. Fix that.
NOTE: we remove printing usage information from command body
so it won't print twice.
Signed-off-by: Eugeniy Paltsev
---
user bare-metal app so we may afford being not
super fast as we only being executed once.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/io.h | 49 ++-
1 file changed, 33 insertions(+), 16 deletions(-)
diff --git a/arch/arc/include/asm/io.h b/a
Fixing of DW SPI which was broken by
commit 07906b3dad15 ("ARC: Switch to generic accessors")
lead me to several fixes in ARC IO accessors code.
Eugeniy Paltsev (3):
ARC: IO: add volatile to accessors
ARC: IO: add compiler barriers to IO accessors
ARC: IO: add MB for __ra
ot is not that performance oriented as real run-time
software like OS or user bare-metal app so we may afford being not
super fast as we only being executed once.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/io.h | 58 +++
1 file changed, 35 inser
We must use 'volatile' in C-version read/write IO accessors
implementation to avoid merging several reads (writes) into
one read (write), or optimizing them out by compiler.
Fixes commit 07906b3dad15 ("ARC: Switch to generic accessors")
Signed-off-by: Eugeniy Paltsev
---
We must use compiler barriers in C-version read/write IO accessors
before and after operation (read or write) so it won't be reordered
by compiler.
Fixes commit 07906b3dad15 ("ARC: Switch to generic accessors")
Signed-off-by: Eugeniy Paltsev
---
arch/arc/includ
Hi Sean,
do you have branch with this code (all dw spi changes) in some public repo?
I would like to test it with our board (which have DW SPI).
---
Eugeniy Paltsev
From: Sean Anderson
Sent: Thursday, March 5, 2020 22:19
To: u-boot@lists.denx.de
Cc
error -2)
->8--
Tested from maix_spi HEAD (e338571bf528f58b3ced7fbd0c1f5d923caa1cfd)
---
Eugeniy Paltsev
From: Sean Anderson
Sent: Friday, March 6, 2020 03:48
To: Eugeniy Paltsev; u-boot@lists.denx.de
Cc: Simon Glass;
Eugeniy Paltsev (2):
ARC: CACHE: add support for SL$ disable
ARC: CACHE: mark IOC helper functions as inlined_cachefunc
arch/arc/include/asm/cache.h | 7 +++
arch/arc/lib/cache.c | 118 ---
2 files changed, 116 insertions(+), 9 deletions
Force inlining of IOC related functions used in other cache
functions. This is preventive change.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index c42723daeb2
Since version 3.0 ARC HS supports SL$ (L2 system level cache)
disable. So add support for SL$ disable/enable to code.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/cache.h | 7 +++
arch/arc/lib/cache.c | 114 ---
2 files changed, 114
As the driver of on-chip reset controller became available
we are ready to enable it.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/hsdk.dts | 7 +++
configs/hsdk_defconfig | 1 +
2 files changed, 8 insertions(+)
diff --git a/arch/arc/dts/hsdk.dts b/arch/arc/dts/hsdk.dts
index
Hi Sean,
even after fixing build errors with this patch I still have issues with
communications to flash IC.
Now it is detected correctly (JEDEC id is valid) but I have issues with read or
write.
I need to look to that more intently.
---
Eugeniy Paltsev
Enable unit tests on HSDK and AXS103 development platforms to
run it in verification flow.
Signed-off-by: Eugeniy Paltsev
---
configs/axs103_defconfig | 2 ++
configs/hsdk_defconfig | 2 ++
2 files changed, 4 insertions(+)
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
We set wrong tunnel PLL frequency when we request 125MHz tunnel clock.
Fix that.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk-hsdk-cgu.c
index 4637b9fdf15
As we've dropped NAND support for AXS101 and AXS103
see commit 4f5e552d95bb ("ARC: AXS10x: drop NAND support")
we don't need bounce buffer anymore.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/Kconfig | 2 --
1 file changed, 2 deletions(-)
diff --git a/arch/arc/Kconfig b/ar
Eugeniy Paltsev (14):
ARC: ARCv2: handle DSP presence in HW
ARC: HSDK: CGU: add support for timer clock
ARC: HSDK-4xD: add initial board support
ARC: HSDK: split HSDK and HSDK-4xD DTS
ARC: HSDK-4xD: use active low polarity of cpu_start pulse
ARC: HSDK-4xD: fix headerize script for HSDK
regardless
of DSP presence we need to set DSP_CTRL properly.
NOTE:
we do the same adjustments in Linux kernel, see in kernel tree:
commit 4827d0cf744e ("ARC: handle DSP presence in HW")
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/arcregs.h | 1 +
arch/arc/lib/start.S
: Eugeniy Paltsev
---
arch/arc/Kconfig| 2 +-
board/synopsys/hsdk/Kconfig | 17
board/synopsys/hsdk/MAINTAINERS | 3 +-
board/synopsys/hsdk/config.mk | 8
board/synopsys/hsdk/hsdk.c | 71 -
configs/hsdk_4xd_defconfig
Add quirk for HSDK-4xD - due to HW issues HSDK can use any pulse
polarity but HSDK-4xD require active low polarity of cpu_start pulse.
So use low polarity of cpu_start pulse for both board.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 26 +++---
1 file
Add support for additional timer clock which belongs to tunnel
domain.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c| 9 ++---
include/dt-bindings/clock/snps,hsdk-cgu.h | 5 +++--
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/drivers/clk/clk
Print timer clock value in hsdk_clock print_all command.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/hsdk-common.dtsi | 6 --
board/synopsys/hsdk/hsdk.c| 2 ++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/arc/dts/hsdk-common.dtsi b/arch/arc/dts/hsdk
HSDK-4xD has other GPU type so it consumes only GPU core clock.
Even we have additional GPU clock dividers they are not routed
to anything. So drop information about those additional clocks
in hsdk_clock print_all command.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 6
ARC HS CPU in HSDK-4xD has ARC ID = 0x54, so fix headerize script
accordingly.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/config.mk | 12 ++--
board/synopsys/hsdk/headerize-hsdk.py | 2 +-
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/board
Split HSDK and HSDK-4xD device tree files so they can have
different model names.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/Makefile | 2 +-
arch/arc/dts/hsdk-4xd.dts | 12 +++
arch/arc/dts/hsdk-common.dtsi | 150 ++
arch/arc/dts/hsdk.dts
Add support for SLC enable/disable via hsdk_init command.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 22 ++
1 file changed, 22 insertions(+)
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index b8b995db47d..b25b1331874 100644
--- a
For HSDK-4xD we do additional AXI bridge tweaking while doing
hsdk_init command:
- we shrink IOC region.
- we configure ARC HS CORE SLV1 aperture depending on
haps_apb_location environment variable.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 58
HSDK-4xD has HDMI working so let's print info about HDMI clocks.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index 577893de2a1..45bc5e
Add support for CSM enable/disable and CSM relocation via
hsdk_init command. We allow to relocate CSM to the beginning of
any aperture even if HW support finer granularity.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/arcregs.h | 3 +++
board/synopsys/hsdk/hsdk.c | 27
HSDK-4xD has quite different environment so let's split
HSDK and HSDK-4xD configs file.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/Kconfig | 3 +-
board/synopsys/hsdk/MAINTAINERS | 2 +
include/configs/hsdk-4xd.h | 120
3 files ch
ve after U-boot is reloaded via MDB.
Signed-off-by: Eugeniy Paltsev
---
board/synopsys/hsdk/hsdk.c | 28 +---
1 file changed, 25 insertions(+), 3 deletions(-)
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index 329427ed4ba..a3e0563ff45 100644
-
Print relocation information in bdinfo.
NOTE: this patch changes only ARC part of bdinfo code.
Signed-off-by: Eugeniy Paltsev
---
cmd/bdinfo.c | 4
1 file changed, 4 insertions(+)
diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c
index d6a7175b379..31ec4615641 100644
--- a/cmd/bdinfo.c
+++ b/cmd
Hi Simon, Tom,
I guess it's perfect time to apply this patch. Thanks!
---
Eugeniy Paltsev
From: Simon Glass
Sent: Monday, March 23, 2020 18:37
To: Eugeniy Paltsev
Cc: Tom Rini; U-Boot Mailing List; uboot-snps-...@synopsys.com; Alexey Brodkin;
Hi Sean,
do you have any public git branch with this patch series?
I want to test these changes on our board with DW SPI controller.
Thanks.
---
Eugeniy Paltsev
From: Sean Anderson
Sent: Friday, August 7, 2020 17:43
To: u-boot@lists.denx.de; uboot
FYI: I've tested on commit aa68b00a8259aa026591475f21a5c51311252ef2 (current
branch head) and I don't see any build/runtime issues.
Tested-by Eugeniy Paltsev
---
Eugeniy Paltsev
From: Sean Anderson
Sent: Monday, August 10, 2020 14:13
T
Pll bypass has priority over enable/disable.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk-hsdk-cgu.c
index 56ef08c032b..69e6b24b66c 100644
--- a/drivers/clk
HDMI PLL has its own xtal with 27 MHz output but we treat it the same
way as other PLLs with 33.33 MHz input.
Fix that.
Signed-off-by: Eugeniy Paltsev
---
drivers/clk/clk-hsdk-cgu.c | 31 +--
1 file changed, 21 insertions(+), 10 deletions(-)
diff --git a/drivers/clk
uot; 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
---
arch/arc/config.mk | 20 -
> From: Sean Anderson
> Sent: Monday, September 14, 2020 18:35
> To: u-boot@lists.denx.de; uboot-snps-...@synopsys.com
> Cc: Marek Vasut; Horatiu Vultur; Eugeniy Paltsev; Jagan Teki; Heinrich
> Schuchardt; Sean Anderson
> Subject: [PATCH v3 08/10] spi: dw: Add mem_ops
>
>
CPU (and hence cpu timers) on HSDK board runs at 500MHz after
preloader so fix wrong CPU frequency value in hsdk.dts
Signed-off-by: Eugeniy Paltsev
---
arch/arc/dts/hsdk.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arc/dts/hsdk.dts b/arch/arc/dts/hsdk.dts
index
-by: Eugeniy Paltsev
---
board/synopsys/hsdk/config.mk | 11 +++
board/synopsys/hsdk/headerize-hsdk.py | 147 ++
include/configs/hsdk.h| 6 ++
3 files changed, 164 insertions(+)
create mode 100644 board/synopsys/hsdk/config.mk
create mode
-by: Eugeniy Paltsev
---
Changes v1->v2:
* Comments change
board/synopsys/hsdk/config.mk | 11 +++
board/synopsys/hsdk/headerize-hsdk.py | 149 ++
include/configs/hsdk.h| 6 ++
3 files changed, 166 insertions(+)
create mode 100644 bo
pio line,
activate / deactivatei and shift values. Fix that by read them from
device tree to be able to use this driver for other boards.
Eugeniy Paltsev (2):
GPIO: CREG: improve flexibility of hsdk-creg-gpio driver
CREG GPIO: add device tree bindings
MAINTAINERS
pio line,
activate / deactivatei and shift values. Fix that by read them from
device tree to be able to use this driver for other boards.
Remove "hsdk" prefix from compatible string as this driver can be
used with different boards like HSDK, AXS101, AXS103, etc.
Signed-off-by: E
Signed-off-by: Eugeniy Paltsev
---
MAINTAINERS | 1 +
doc/device-tree-bindings/gpio/snps,creg-gpio.txt | 43
2 files changed, 44 insertions(+)
create mode 100644 doc/device-tree-bindings/gpio/snps,creg-gpio.txt
diff --git a
AXS10x boards have n25q512 spi flash IC, so add corresponding
nodes to device tree and enaple corresponding options in
defconfig.
Signed-off-by: Eugeniy Paltsev
---
NOTE: this patch has prerequisite:
http://patchwork.ozlabs.org/patch/926871/
arch/arc/dts/axs10x_mb.dtsi | 34
AXS10x boards have n25q512 spi flash IC, so add corresponding
nodes to device tree and enaple corresponding options in
defconfig.
Signed-off-by: Eugeniy Paltsev
---
NOTE: this patch has prerequisite:
http://patchwork.ozlabs.org/patch/926871/
Changes v1->v2:
* change SPI CS gpio compatible n
-off-by: Eugeniy Paltsev
---
board/synopsys/axs10x/config.mk| 23 +
board/synopsys/axs10x/headerize-axs.py | 176 +
include/configs/axs10x.h | 7 ++
3 files changed, 206 insertions(+)
create mode 100644 board/synopsys/axs10x/config.mk
spi_flash@0 {
> - compatible = "spi-flash";
> + compatible = "jedec,spi-nor";
> reg = <0>;
> spi-max-frequency = <400>;
> };
>
--
Eugeniy Paltsev
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot
Eugeniy Paltsev (18):
ARC: cache: move i$ entire operation to separate function
ARC: cache: remove per-line I$ operations as unused
ARC: cache: Add support of FLUSH_N_INV d$ operations
ARC: introduce is_isa_X functions
ARC: flush & invalidate D$ with a single command
ARC: cache:
Move icache entire operation to separate function as we are planing
to use it in another places (like sync_icache_dcache_all)
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 31 +++
1 file changed, 19 insertions(+), 12 deletions(-)
diff --git a/arch/arc
into slc entire/line functions instead of
their callers to avoid code duplication.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 22 +-
1 file changed, 17 insertions(+), 5 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index eac3d66..8633ba5
K points to invalidate_dcache_all, we call it again and
// loop forever.
Fortunately we may do flush and invalidation of D$ with a single one
instruction which automatically mitigates a situation described above.
And because invalidate_dcache_all isn't used in common u-boot code we
implem
Use CONFIG_ARC_DBG_IOC_ENABLE Kconfig option instead of
ioc_enable global variable.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/Kconfig | 18
arch/arc/include/asm/cache.h | 5 +
arch/arc/lib/cache.c | 49 ++--
3
called with OP_INV_IC parameter.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 30 +++---
1 file changed, 7 insertions(+), 23 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index 26f0a1f..2252542 100644
--- a/arch/arc/lib/cache.c
+++ b
We don't want to invalidate SLC in invalidate_icache_all as we
can lose some data from SLC (especially if L1 D$ is disabled)
because SLC is shared for data and instructions.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 7 +--
1 file changed, 5 insertions(+), 2 dele
hat we may really start from ROM.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/global_data.h | 6 ++
arch/arc/lib/cache.c | 19 +--
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/arch/arc/include/asm/global_data.h
b/arch/arc/i
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/arc-bcr.h | 77 ++
arch/arc/lib/cache.c | 67 +---
2 files changed, 85 insertions(+), 59 deletions(-)
create mode 100644 arch/arc/include/asm/arc-bcr.h
diff
ation area for some reason.
Fix this by implementing specialized sync_icache_dcache_all
function.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/cache.h | 1 +
arch/arc/lib/cache.c | 10 ++
arch/arc/lib/init_helpers.c | 6 +++---
3 files changed, 14 insertions(
Move IOC initialization to separate function from cache_init
function.
This is the preparation for the next patch when we will switch
to is_isa_arcv2() function using instead of "CONFIG_ISA_ARCV2"
ifdef using.
Also it makes cache_init function clear.
Signed-off-by: Eugeniy Paltsev
---
Implement specialized function to clenup caches (and therefore
sync I/D caches) which can be used for cleanup before linux
launch instead of flush_dcache_all/invalidate_icache_all pair.
It also allow us to safely invalidate L1 D$ and SLC before
linux launch.
Signed-off-by: Eugeniy Paltsev
n the L1 D$ was disabled.
* Invalidate L1 I$ before disabling. Otherwise we can execute wrong
instructions after L1 I$ enable if we modified any code when
L1 I$ was disabled.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 15 ---
1 file changed, 12 insertions(
Move pae exists check into slc_upper_region_init function itself
instead of its caller as more appropriate place.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 15 +--
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib
check BCRs every time instead of corresponding
global variables.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 65 +---
1 file changed, 42 insertions(+), 23 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index
onfigure();
-->8---
instead of
-->8---
ifdef CONFIG_ISA_ARCV2
ioc_configure();
endif
-->8---
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/arcregs.h | 11 +++
1 file changed, 11 insertions(+)
diff
if we enable dcache in runtime.
As we need to check status before *each* function call and we
dcache entire/line functions from different places we add
this check directly into dcache entire/line functions instead of
their callers to avoid code duplication.
Signed-off-by: Eugeniy Paltsev
---
arc
Use is_isa_arcv2() function instead of CONFIG_ISA_ARCV2
define check to make code clear at the same time keeping
pretty much the same functionality - code in branches
under "if (is_isa_arcv2())" won't be compiled if CONFIG_ISA_ARCV2
is not defined.
Signed-off-by: Eugeniy Paltsev
As of today __dc_line_op and __dc_entire_op support
only flush (OP_FLUSH) and invalidate (OP_INV) operations.
Add support of flush and invalidate (OP_FLUSH_N_INV)
operation which we planing to use in next patches.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 42
Hi Jagan,
Maybe you have any comments or remarks about this patch? And if you don't could
you please apply it. Thanks!
On Tue, 2018-02-06 at 18:15 +0300, Eugeniy Paltsev wrote:
> sst26wf flash series block protection implementation differs
> from other SST series, so add impleme
Various fixes and improvements of designware spi driver.
Eugeniy Paltsev (5):
DW SPI: fix tx data loss on FIFO flush
DW SPI: fix transmit only mode
DW SPI: refactor poll_transfer functions
DW SPI: add option to use external gpio for chip select
DW SPI: use 32 bit access instead of 16
we return with error.
Fix that by using SPI_TMOD_TR instead of SPI_TMOD_TO which allows to use
RX FIFO.
Signed-off-by: Eugeniy Paltsev
---
drivers/spi/designware_spi.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/spi/designware_spi.c b/drivers/spi
. After that we can get rid
of dw_reader return value check in poll_transfer function.
With these changes we're getting closer to Linux DW SPI driver.
Signed-off-by: Eugeniy Paltsev
---
drivers/spi/designware_spi.c | 26 --
1 file changed, 4 insertions(+), 22 deletions(-)
that current transmit operation is finished before new one.
Signed-off-by: Eugeniy Paltsev
---
drivers/spi/designware_spi.c | 17 +
1 file changed, 17 insertions(+)
diff --git a/drivers/spi/designware_spi.c b/drivers/spi/designware_spi.c
index c501aeea16..71d8839d55 100644
--- a
gpio bindings.
Signed-off-by: Eugeniy Paltsev
---
drivers/spi/designware_spi.c | 51 +++-
1 file changed, 50 insertions(+), 1 deletion(-)
diff --git a/drivers/spi/designware_spi.c b/drivers/spi/designware_spi.c
index 630dc17f16..099c9c4d03 100644
--- a
these bits has no
effect; reading from these bits returns 0." [1]
[1] Section 6.1 of dw_apb_ssi.pdf (version 3.22a)
Signed-off-by: Eugeniy Paltsev
---
drivers/spi/designware_spi.c | 44 +---
1 file changed, 17 insertions(+), 27 deletions(-)
diff --gi
Hi Jagan,
On Tue, 2018-03-13 at 22:11 +0530, Jagan Teki wrote:
> On Tue, Feb 6, 2018 at 8:45 PM, Eugeniy Paltsev
> wrote:
> > sst26wf flash series block protection implementation differs
> > from other SST series, so add implementation for sst26wf
> > lock/unlock/is_locke
This iv v2 version of "ARC: cache subsystem improvement/refactoring"
patch series. You can find v1 patch series here:
http://patchwork.ozlabs.org/cover/873039/
Eugeniy Paltsev (20):
ARC: cache: move i$ entire operation to separate function
ARC: cache: remove per-line I$ operations
called with OP_INV_IC parameter.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 30 +++---
1 file changed, 7 insertions(+), 23 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index 26f0a1ff9b..2252542f16 100644
--- a/arch/arc/lib/cache.c
Move icache entire operation to separate function as we are planing
to use it in another places (like sync_icache_dcache_all)
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 31 +++
1 file changed, 19 insertions(+), 12 deletions(-)
diff --git a/arch/arc
K points to invalidate_dcache_all, we call it again and
// loop forever.
Fortunately we may do flush and invalidation of D$ with a single one
instruction which automatically mitigates a situation described above.
And because invalidate_dcache_all isn't used in common u-boot code we
implem
As of today __dc_line_op and __dc_entire_op support
only flush (OP_FLUSH) and invalidate (OP_INV) operations.
Add support of flush and invalidate (OP_FLUSH_N_INV)
operation which we planing to use in next patches.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 42
Implement specialized function to clenup caches (and therefore
sync I/D caches) which can be used for cleanup before linux
launch or to sync caches during uboot relocation.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/cache.h | 1 +
arch/arc/lib/bootm.c | 4 ++--
arch/arc
check BCRs every time instead of corresponding
global variables.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 67 +---
1 file changed, 43 insertions(+), 24 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index
Signed-off-by: Eugeniy Paltsev
---
arch/arc/include/asm/arc-bcr.h | 77 ++
arch/arc/lib/cache.c | 67 +---
2 files changed, 85 insertions(+), 59 deletions(-)
create mode 100644 arch/arc/include/asm/arc-bcr.h
diff
Add additional cache configuration checks and note about
supported configurations.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 75
1 file changed, 75 insertions(+)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index
Use CONFIG_ARC_DBG_IOC_ENABLE Kconfig option instead of
ioc_enable global variable.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/Kconfig | 18
arch/arc/include/asm/cache.h | 5 +
arch/arc/lib/cache.c | 49 ++--
3
into slc entire/line functions instead of
their callers to avoid code duplication.
Signed-off-by: Eugeniy Paltsev
---
arch/arc/lib/cache.c | 16 +++-
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index 354dbc600e..f147674ae8
Move IOC initialization to separate function from cache_init
function.
This is the preparation for the next patch when we will switch
to is_isa_arcv2() function using instead of "CONFIG_ISA_ARCV2"
ifdef using.
Also it makes cache_init function clear.
Signed-off-by: Eugeniy Paltsev
---
1 - 100 of 223 matches
Mail list logo