Compare commits

...

4 commits

Author SHA1 Message Date
Stephan I. Böttcher
b71770f57c arm ssp_isr: disable interrupt when no buffer
Count the occurences of DMA buffer unavailable.
Disable ssp interrupts when no dma buffer is available.  The irq
condition will persist, probably reentering the isr at high rate.
2025-07-29 16:30:38 +02:00
Stephan I. Böttcher
d087cb4254 arm: udp: do not reset eth when udp_poll_message sent a packet 2025-07-29 16:29:50 +02:00
Stephan I. Böttcher
6e411b523b HK Vprim SETH calib 2025-07-29 16:04:01 +02:00
Stephan I. Böttcher
a4451ae8a8 fix for SETH flight s/V/var/ 2025-07-29 16:03:23 +02:00
8 changed files with 19 additions and 12 deletions

View file

@ -1048,6 +1048,7 @@ const struct keywords altera_variable_names[] = {
{"ssp_block_size", {.par=&ssp_block_size}},
{"ssp_write_ptr", {.par=&ssp_injection_write_ptr}},
{"ssp_read_ptr", {.par=&ssp_injection_read_ptr}},
{"ssp_nobuffer_count",{.par=&ssp_nobuffer_count}},
{"alterastatus", {.par=&alterastatus}},
{"altera2status", {.par=&altera2status}},
{"psconfig2", {.par=&psconfig2}},

View file

@ -1,3 +1,3 @@
@s/if pres<8000 or pres>11000 or temp > 3432 or temp < 2432: s/exit
s/exec "SAFE.RC" 3
@e not reached, spy file is closed
@e not reached after three hits

View file

@ -1,16 +1,16 @@
@alt/stream/off
@s/exe "PRESSURE.RC"
var/set spi_min_qtime = 665
@var/set udp_reset = 1000000
var spi_min_qtime = 665
@var udp_reset = 1000000
@al/fifo/clear 1
@al/fifo/set 10
@al/fifo/reset 0x1f0
@var/set sd_write_size = 0
@v/set sd_write_count = 0
@v/set udp_count = 0
@v/set udp_size = 0
@V W=600
@v/set R=-1
@var sd_write_size = 0
@var sd_write_count = 0
@var udp_count = 0
@var udp_size = 0
@var W=600
@var R=-1
@script/cron/none
@var/cache ssp_dma spy_return second time hk_count hk_mes
@var/cache sd_status udp_rx_cmd udp_size enc altera

View file

@ -1,9 +1,9 @@
@var/cache pressure temp
@var F=4
@pres/read/verify
pres/read/verify
@s/if errno >= 500: s/exit
@pressure/spy/on
script/spy "ASCENT.SPY"
s/spy "ASCENT.SPY"
@var F=1
@var N=0
@var script_cron_prio=3

View file

@ -8,7 +8,7 @@ def HK():
Vss = hk2mvolt("adc_Vmcsa")*(-0.002)
Icc = hk2mvolt("adc_Ipcsa")*0.1
Iss = hk2mvolt("adc_Imcsa")*(-0.1)
Vprim = hk2mvolt("adc_Vprim")*(0.011)
Vprim = hk2mvolt("adc_Vprim")*(0.0163)
Vbias = hk2mvolt("adc_Vbias")*(-0.05)
Ibias = hk2mvolt("adc_Ibias")*0.0955
Ibiasp = hk2mvolt("adc_dac")*0.0955

3
ssp.c
View file

@ -29,6 +29,7 @@ unsigned int ssp_dma_size;
unsigned int ssp_min_size = 1;
unsigned int ssp_block_idle = 256;
unsigned int ssp_block_size = 3;
unsigned int ssp_nobuffer_count;
unsigned int ssp_get_status(void)
{
@ -139,6 +140,8 @@ static void ssp_isr(void)
// Try again.
if (!j->buf_count) {
if (get_new_buffer(j->buf_start)) {
SSPIMSC = 0;
ssp_nobuffer_count++;
VICVectAddr = 0;
return;
}

1
ssp.h
View file

@ -21,6 +21,7 @@ extern unsigned int ssp_lastword;
extern unsigned int ssp_dma_size;
extern unsigned int ssp_block_idle;
extern unsigned int ssp_block_size;
extern unsigned int ssp_nobuffer_count;
enum ssp_flags {
ssp_compress = 1,

2
udp.c
View file

@ -161,6 +161,8 @@ int udp_write_stream(void *buf)
return 0;
case 1:
break;
case 3:
return 1;
default:
if (udp_stream_reset
&& dropped_tick