Jenkins Builder has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34753?usp=email )
Change subject: firmware/layer1: clean up l1s_tch_resp()
......................................................................
Patch Set 1:
(1 comment)
File src/target/firmware/layer1/prim_tch.c:
Robot Comment from checkpatch (run ID jenkins-gerrit-lint-11816):
https://gerrit.osmocom.org/c/osmocom-bb/+/34753/comment/68531df1_80588aa8
PS1, Line 330: skip_rx_traffic:
labels should not be indented
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34753?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ie4faf386f54720888e73171bee26f93dfa0562d5
Gerrit-Change-Number: 34753
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Comment-Date: Mon, 16 Oct 2023 05:23:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34694?usp=email )
Change subject: firmware/layer1: handle CSD related channel modes
......................................................................
Set Ready For Review
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34694?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ib73210b273826ded56d42c41ffeb835eef96dd2b
Gerrit-Change-Number: 34694
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Mon, 16 Oct 2023 05:22:41 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34751?usp=email )
Change subject: firmware/layer1: mute UL/DL vocodec if it's not needed
......................................................................
firmware/layer1: mute UL/DL vocodec if it's not needed
The upper layers usually request either of the two configurations:
* (AUDIO_TX_MICROPHONE | AUDIO_RX_SPEAKER) - in this configuration
the phone (PHY) is both the origin and the destination of the TCH
frames. DL frames are played via the built-in speaker; UL frames
recorded using the built-in microphone.
* (AUDIO_TX_TRAFFIC_REQ | AUDIO_RX_TRAFFIC_IND) - in this case
the upper layers (host side) become the origin and the destination
of the TCH frames. The built-in speaker and microphone are
expected to be disabled.
However, when using the second configuration, one can still hear
DL TCH frames being played by the built-in speaker. The built-in
microphone does not seem to be causing any issues, but still we
definitely don't want the vocoder to interfere with the host.
Change-Id: I390db1889f079dea8112794c3e039a9136b897df
Related: OS#4396
---
M src/target/firmware/include/calypso/l1_environment.h
M src/target/firmware/layer1/prim_tch.c
2 files changed, 41 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/51/34751/1
diff --git a/src/target/firmware/include/calypso/l1_environment.h b/src/target/firmware/include/calypso/l1_environment.h
index d49866e..476a8a8 100644
--- a/src/target/firmware/include/calypso/l1_environment.h
+++ b/src/target/firmware/include/calypso/l1_environment.h
@@ -104,6 +104,8 @@
#define B_PLAY_UL (1 << 3) // Play UL
#define B_DCO_ON (1 << 4) // DCO ON/OFF
#define B_AUDIO_ASYNC (1 << 1) // WCP reserved
+#define B_MUTE_VOCODEC_DL (1 << 14) // DL voice decoder
+#define B_MUTE_VOCODEC_UL (1 << 15) // UL voice encoder
// ****************************************************************
// PARAMETER AREA (PARAM) MCU<->DSP COMMUNICATION DEFINITIONS
diff --git a/src/target/firmware/layer1/prim_tch.c b/src/target/firmware/layer1/prim_tch.c
index e3cffd1..1e3ca75 100644
--- a/src/target/firmware/layer1/prim_tch.c
+++ b/src/target/firmware/layer1/prim_tch.c
@@ -85,6 +85,18 @@
*tch_mode = SIG_ONLY_MODE;
}
}
+
+ /* enable/disable the voice decoder (Downlink) */
+ if (l1s.audio_mode & AUDIO_RX_SPEAKER)
+ dsp_api.ndb->d_tch_mode &= ~B_MUTE_VOCODEC_DL; /* unmute */
+ else
+ dsp_api.ndb->d_tch_mode |= B_MUTE_VOCODEC_DL; /* mute */
+
+ /* enable/disable the voice encoder (Uplink) */
+ if (l1s.audio_mode & AUDIO_TX_MICROPHONE)
+ dsp_api.ndb->d_tch_mode &= ~B_MUTE_VOCODEC_UL; /* unmute */
+ else
+ dsp_api.ndb->d_tch_mode |= B_MUTE_VOCODEC_UL; /* mute */
}
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34751?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I390db1889f079dea8112794c3e039a9136b897df
Gerrit-Change-Number: 34751
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34756?usp=email )
Change subject: firmware/layer1: emit TRAFFIC.ind even if B_BFI is set
......................................................................
firmware/layer1: emit TRAFFIC.ind even if B_BFI is set
Even if the DSP marks a traffic frame as bad (B_BFI), we still want
to deliver something to the upper layers, just like we do for FACCH.
Change-Id: I559793a3506089b1c1758ee7022cceb7753afb30
Related: OS#4396
---
M src/target/firmware/layer1/prim_tch.c
1 file changed, 15 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/56/34756/1
diff --git a/src/target/firmware/layer1/prim_tch.c b/src/target/firmware/layer1/prim_tch.c
index 71ec077..ae60de9 100644
--- a/src/target/firmware/layer1/prim_tch.c
+++ b/src/target/firmware/layer1/prim_tch.c
@@ -313,8 +313,6 @@
goto skip_rx_traffic;
if (~traffic_buf[0] & (1 << B_BLUD))
goto skip_rx_traffic;
- if (~traffic_buf[0] & (1 << B_BFI))
- goto skip_rx_traffic;
/* Allocate msgb */
/* FIXME: we actually want all allocation out of L1S! */
@@ -341,6 +339,8 @@
else
dl->num_biterr = num_biterr;
+ dl->fire_crc = ((traffic_buf[0] & 0xffff) & ((1 << B_FIRE1) | (1 << B_FIRE0))) >> B_FIRE0;
+
/* Update rx level for pm report */
pu_update_rx_level(dl->rx_level);
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34756?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I559793a3506089b1c1758ee7022cceb7753afb30
Gerrit-Change-Number: 34756
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange