-
Notifications
You must be signed in to change notification settings - Fork 328
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #986 from riscv/from_upstream
Merge up to 16e9b9c from upstream.
- Loading branch information
Showing
71 changed files
with
3,214 additions
and
449 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# SPDX-License-Identifier: GPL-2.0-or-later | ||
|
||
# Espressif Xtensa Makefile to compile flasher stub wrapper | ||
# Copyright (C) 2023 Espressif Systems Ltd. | ||
|
||
# Prefix for Espressif xtensa cross compilers (can include a directory path) | ||
CROSS ?= xtensa-esp32-elf- | ||
|
||
APP_ARCH := xtensa | ||
APP_CHIP_PATH := $(shell pwd) | ||
SRCS := $(APP_CHIP_PATH)/esp_xtensa_stub_tramp_win.S | ||
|
||
BIN2C = ../../../../../src/helper/bin2char.sh | ||
BUILD_DIR = build | ||
|
||
APP = esp_xtensa_stub_tramp_win | ||
APP_OBJ = $(BUILD_DIR)/$(APP).o | ||
APP_BIN = $(BUILD_DIR)/$(APP).bin | ||
APP_CODE = $(APP).inc | ||
|
||
.PHONY: all clean | ||
|
||
all: $(BUILD_DIR) $(APP_OBJ) $(APP_CODE) | ||
|
||
$(BUILD_DIR): | ||
$(Q) mkdir $@ | ||
|
||
$(APP_OBJ): $(SRCS) | ||
@echo " CC $^ -> $@" | ||
$(Q) $(CROSS)gcc -c $(CFLAGS) -o $@ $^ | ||
|
||
$(APP_CODE): $(APP_OBJ) | ||
@echo " CC $^ -> $@" | ||
$(Q) $(CROSS)objcopy -O binary -j.text $^ $(APP_BIN) | ||
$(Q) $(BIN2C) < $(APP_BIN) > $@ | ||
|
||
clean: | ||
$(Q) rm -rf $(BUILD_DIR) |
41 changes: 41 additions & 0 deletions
41
contrib/loaders/trampoline/espressif/xtensa/esp_xtensa_stub_tramp_win.S
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
/* SPDX-License-Identifier: GPL-2.0-or-later */ | ||
|
||
/*************************************************************************** | ||
* Xtensa flasher stub wrapper * | ||
* Copyright (C) 2017 Espressif Systems Ltd. * | ||
***************************************************************************/ | ||
|
||
/* | ||
* Expects : | ||
* a0 = zero | ||
* a1 = stack_base + stack_size - 16, 16 bytes aligned | ||
* a8 = address of the function to call | ||
* Params : | ||
* a2 = command arg0, result (out) | ||
* a3 = command arg1 | ||
* a4 = command arg2 | ||
* a5 = command arg3 | ||
* a6 = command arg4 | ||
* Maximum 5 user args | ||
*/ | ||
.text | ||
|
||
.align 4 | ||
_stub_enter: | ||
/* initialize initial stack frame for callx8 */ | ||
addi a9, sp, 32 /* point 16 past extra save area */ | ||
s32e a9, sp, -12 /* access to extra save area */ | ||
/* prepare args */ | ||
mov a10, a2 | ||
mov a11, a3 | ||
mov a12, a4 | ||
mov a13, a5 | ||
mov a14, a6 | ||
/* call stub */ | ||
callx8 a8 | ||
/* prepare return value */ | ||
mov a2, a10 | ||
break 0,0 | ||
|
||
_idle_loop: | ||
j _idle_loop |
3 changes: 3 additions & 0 deletions
3
contrib/loaders/trampoline/espressif/xtensa/esp_xtensa_stub_tramp_win.inc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
/* Autogenerated with ../../../../../src/helper/bin2char.sh */ | ||
0x92,0xc1,0x20,0x90,0xd1,0x49,0xad,0x02,0xbd,0x03,0xcd,0x04,0xdd,0x05,0x60,0xe6, | ||
0x20,0xe0,0x08,0x00,0x2d,0x0a,0x00,0x40,0x00,0x06,0xff,0xff, |
Oops, something went wrong.