Merge branch 'master' of github:OpenIPC/firmware

pull/333/head
Igor Zalatov (from Citadel PC) 2022-08-11 19:53:12 +03:00
commit 01e0409de6
83 changed files with 4403 additions and 410 deletions

View File

@ -17,6 +17,7 @@ BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc"
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TOOLCHAIN_BUILDROOT_LOCALE=y
BR2_TOOLCHAIN_BUILDROOT_USE_SSP=y
BR2_TOOLCHAIN_EXTRA_LIBS="libasan liblsan libtsan libubsan"
# Kernel
BR2_LINUX_KERNEL=y

View File

@ -1,19 +0,0 @@
--- a/arch/mips/math-emu/cp1emu.c
+++ b/arch/mips/math-emu/cp1emu.c
@@ -874,13 +874,13 @@
#define SIFROMREG(si, x) ((si) = cop1_64bit(xcp) || !(x & 1) ? \
(int)ctx->fpr[x] : (int)(ctx->fpr[x & ~1] >> 32))
-#define SITOREG(si, x) (ctx->fpr[x & ~(cop1_64bit(xcp) == 0)] = \
+#define SITOREG(si, x) (ctx->fpr[x & !(cop1_64bit(xcp) == 0)] = \
cop1_64bit(xcp) || !(x & 1) ? \
ctx->fpr[x & ~1] >> 32 << 32 | (u32)(si) : \
ctx->fpr[x & ~1] << 32 >> 32 | (u64)(si) << 32)
-#define DIFROMREG(di, x) ((di) = ctx->fpr[x & ~(cop1_64bit(xcp) == 0)])
-#define DITOREG(di, x) (ctx->fpr[x & ~(cop1_64bit(xcp) == 0)] = (di))
+#define DIFROMREG(di, x) ((di) = ctx->fpr[x & !(cop1_64bit(xcp) == 0)])
+#define DITOREG(di, x) (ctx->fpr[x & !(cop1_64bit(xcp) == 0)] = (di))
#define SPFROMREG(sp, x) SIFROMREG((sp).bits, x)
#define SPTOREG(sp, x) SITOREG((sp).bits, x)

View File

@ -1,36 +1,3 @@
--- a/arch/mips/xburst/soc-t31/common/clk/clk_cgu.c
+++ b/arch/mips/xburst/soc-t31/common/clk/clk_cgu.c
@@ -113,18 +113,18 @@
unsigned long x;
unsigned long flags;
int no = CLK_CGU_NO(clk->flags);
-
- if (!(strcmp(clk->name, "cgu_i2s_spk")) || !(strcmp(clk->name, "cgu_i2s_mic"))) {
- unsigned int reg_val = 0;
- int m = 0, n = 0;
- reg_val = cpm_inl(cgu_clks[no].off) & 0xf0000000;
- n = reg_val & 0xfffff;
- m = (reg_val >> 20) & 0x1ff;
-
- printk(KERN_DEBUG"%s, parent = %ld, rate = %ld, m = %d, n = %d, reg val = 0x%08x\n",
- __func__, clk->parent->rate, clk->rate, m, n, cpm_inl(cgu_clks[no].off));
- return (clk->parent->rate * m) / n;
- }
+// FixMe: This leads to hang during boot with GCC>5.5.0
+// if (!(strcmp(clk->name, "cgu_i2s_spk")) || !(strcmp(clk->name, "cgu_i2s_mic"))) {
+// unsigned int reg_val = 0;
+// int m = 0, n = 0;
+// reg_val = cpm_inl(cgu_clks[no].off) & 0xf0000000;
+// n = reg_val & 0xfffff;
+// m = (reg_val >> 20) & 0x1ff;
+//
+// printk(KERN_DEBUG"%s, parent = %ld, rate = %ld, m = %d, n = %d, reg val = 0x%08x\n",
+// __func__, clk->parent->rate, clk->rate, m, n, cpm_inl(cgu_clks[no].off));
+// return (clk->parent->rate * m) / n;
+// }
if(clk->parent == get_clk_from_id(CLK_ID_EXT1))
return clk->parent->rate;
--- a/arch/mips/xburst/soc-t21/common/clk/clk_cgu.c
+++ b/arch/mips/xburst/soc-t21/common/clk/clk_cgu.c
@@ -111,18 +111,19 @@

View File

@ -3,6 +3,8 @@
# OpenIPC.org | v.20220808
#
BR_VER=2020.02.12
MAX_KERNEL_SIZE=0x200000 # 2MiB, 2097152
MAX_KERNEL_SIZE_ULTIMATE=0x300000 # 3MiB, 3145728
MAX_KERNEL_SIZE_EXPERIMENTAL=0x3E8480 # ~3.9MiB, 4097152
@ -17,11 +19,11 @@ clone() {
fresh() {
echo -e "\nThe start-stop times\n" >/tmp/openipc_buildtime.txt
date >>/tmp/openipc_buildtime.txt
[ -d buildroot-2020.02.12/dl ] && mv buildroot-2020.02.12/dl .
[ -d buildroot-${BR_VER}/dl ] && mv buildroot-${BR_VER}/dl .
rm -rf ./dl/majestic ./dl/ipctool ./dl/microbe-web
make distclean #clean
[ -d buildroot* ] && echo -e "\nBuildroot found, OK\n" || make prepare
[ -d dl ] && mv dl buildroot-2020.02.12/dl || return 0
[ -d dl ] && mv dl buildroot-${BR_VER}/dl || return 0
}
should_fit() {

View File

@ -24,13 +24,19 @@ if [ $? -ne 0 ]; then
check_return "insmod sinfo"
fi
echo 1 >/proc/jz/sinfo/info
check_return "start sinfo"
if fw_printenv -n sensor >/dev/null; then
export SENSOR=$(fw_printenv -n sensor)
logger -s -p daemon.info -t ingenic "Get data from environment and set SENSOR as ${SENSOR}"
else
echo 1 >/proc/jz/sinfo/info
check_return "start sinfo"
SENSOR_INFO=$(cat /proc/jz/sinfo/info)
check_return "get sensor type"
SENSOR=${SENSOR_INFO#*:}
logger -s -p daemon.info -t ingenic "Get data from sinfo and set SENSOR as ${SENSOR}"
fw_setenv sensor $SENSOR && logger -s -p daemon.info -t ingenic "Write detected ${SENSOR} to U-Boot ENV"
fi
SENSOR_INFO=$(cat /proc/jz/sinfo/info)
check_return "get sensor type"
SENSOR=${SENSOR_INFO#*:}
case ${SENSOR} in
"sc2232")