summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/as3525.h1
-rw-r--r--firmware/export/config/sansac200v2.h9
-rw-r--r--firmware/export/config/sansaclip.h9
-rw-r--r--firmware/export/config/sansaclipplus.h9
-rw-r--r--firmware/export/config/sansaclipv2.h9
-rw-r--r--firmware/export/config/sansaclipzip.h9
-rw-r--r--firmware/export/config/sansae200v2.h9
-rw-r--r--firmware/export/config/sansafuze.h9
-rw-r--r--firmware/export/config/sansafuzev2.h9
-rw-r--r--firmware/export/config/sansam200v4.h9
-rw-r--r--firmware/export/pcm_sampr.h5
11 files changed, 76 insertions, 11 deletions
diff --git a/firmware/export/as3525.h b/firmware/export/as3525.h
index 87e3fc4..c5e01d5 100644
--- a/firmware/export/as3525.h
+++ b/firmware/export/as3525.h
@@ -526,7 +526,6 @@ CE lines
/* PCM addresses for obtaining buffers will be what DMA is using (physical) */
#define HAVE_PCM_DMA_ADDRESS
-#define HAVE_PCM_REC_DMA_ADDRESS
/* Timer frequency */
#define TIMER_FREQ (24000000 / 16)
diff --git a/firmware/export/config/sansac200v2.h b/firmware/export/config/sansac200v2.h
index 4223d41..a5b857f 100644
--- a/firmware/export/config/sansac200v2.h
+++ b/firmware/export/config/sansac200v2.h
@@ -14,7 +14,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansaclip.h b/firmware/export/config/sansaclip.h
index 7427d62..4e21466 100644
--- a/firmware/export/config/sansaclip.h
+++ b/firmware/export/config/sansaclip.h
@@ -14,7 +14,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansaclipplus.h b/firmware/export/config/sansaclipplus.h
index 8a0a040..0ae67b7 100644
--- a/firmware/export/config/sansaclipplus.h
+++ b/firmware/export/config/sansaclipplus.h
@@ -21,7 +21,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansaclipv2.h b/firmware/export/config/sansaclipv2.h
index a39fe3e..d7a50af 100644
--- a/firmware/export/config/sansaclipv2.h
+++ b/firmware/export/config/sansaclipv2.h
@@ -14,7 +14,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansaclipzip.h b/firmware/export/config/sansaclipzip.h
index 3df9ed5..e0f39af 100644
--- a/firmware/export/config/sansaclipzip.h
+++ b/firmware/export/config/sansaclipzip.h
@@ -21,7 +21,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansae200v2.h b/firmware/export/config/sansae200v2.h
index 34c2cd9..a03dfe0 100644
--- a/firmware/export/config/sansae200v2.h
+++ b/firmware/export/config/sansae200v2.h
@@ -12,7 +12,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/config/sansafuze.h b/firmware/export/config/sansafuze.h
index 8563664..2e9c261 100644
--- a/firmware/export/config/sansafuze.h
+++ b/firmware/export/config/sansafuze.h
@@ -12,7 +12,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Default recording levels */
#define DEFAULT_REC_MIC_GAIN 23
diff --git a/firmware/export/config/sansafuzev2.h b/firmware/export/config/sansafuzev2.h
index 1c0f8a9..7465010 100644
--- a/firmware/export/config/sansafuzev2.h
+++ b/firmware/export/config/sansafuzev2.h
@@ -12,7 +12,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Default recording levels */
#define DEFAULT_REC_MIC_GAIN 23
diff --git a/firmware/export/config/sansam200v4.h b/firmware/export/config/sansam200v4.h
index 88679c1..52b10a4 100644
--- a/firmware/export/config/sansam200v4.h
+++ b/firmware/export/config/sansam200v4.h
@@ -16,7 +16,14 @@
/* define this if you have recording possibility */
#define HAVE_RECORDING
-#define REC_SAMPR_CAPS SAMPR_CAP_ALL
+#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
+ SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
+ SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
+
+/* because the samplerates don't match at each point, we must be able to
+ * tell PCM which set of rates to use. not needed if recording rates are
+ * a simple subset of playback rates and are equal values. */
+#define CONFIG_SAMPR_TYPES
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
diff --git a/firmware/export/pcm_sampr.h b/firmware/export/pcm_sampr.h
index 62bfd00..01a8ed4 100644
--- a/firmware/export/pcm_sampr.h
+++ b/firmware/export/pcm_sampr.h
@@ -305,6 +305,8 @@ enum rec_freq_indexes
#define REC_SAMPR_DEFAULT SAMPR_44
#endif
+#define HW_SAMPR_RESET 0
+
#define REC_FREQ_CFG_VAL_LIST &REC_HAVE_96_(",96") REC_HAVE_88_(",88") \
REC_HAVE_64_(",64") REC_HAVE_48_(",48") \
REC_HAVE_44_(",44") REC_HAVE_32_(",32") \
@@ -324,7 +326,8 @@ extern const unsigned long rec_freq_sampr[REC_NUM_FREQ];
#define SAMPR_TYPE_REC (0x01 << 24)
#endif
-unsigned int pcm_sampr_type_rec_to_play(unsigned int samplerate);
+unsigned int pcm_sampr_to_hw_sampr(unsigned int samplerate,
+ unsigned int type);
#else /* ndef CONFIG_SAMPR_TYPES */