diff --git a/README.md b/README.md
index 55e8ecffa12404a5c1fabd96594fd883d5565316..ede3bd8eb82f2417048198a52be0ea27776b5e78 100644
--- a/README.md
+++ b/README.md
@@ -70,7 +70,7 @@ RDCU-compatible compression mode depending on if the Model (-m) option is set.
 | `2`         | default mode                    |
 | `3`         | brute force                     |
 
-**Example of Compression Parmeter guessing:**
+**Example of Compression Parameter guessing:**
 
 ``./cmp_tool --guess RDCU -d test_data/test_data1.dat -o myguess``
 
diff --git a/include/byteorder.h b/include/byteorder.h
index d299ac944fb104420b740cb1573edc3347996137..d6ebce239e532868d8db205f3161d0436ec5a9ba 100644
--- a/include/byteorder.h
+++ b/include/byteorder.h
@@ -13,7 +13,7 @@
  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
  * more details.
  *
- * @brief This is a set of macros for consistent endianess conversion. They work
+ * @brief This is a set of macros for consistent endianness conversion. They work
  *	for both little and big endian cpus.
  *
  * conversion of XX-bit integers (16- or 32-) between native CPU format
diff --git a/include/list.h b/include/list.h
index 78bc5f0647bfac6aef8ee0520211367c2635b56b..3fb02e1048e688785b2fc7bf2aad620bf8cd2bae 100644
--- a/include/list.h
+++ b/include/list.h
@@ -48,7 +48,7 @@
  * slow because of how they work algorithmically (*the opposite is true*),
  * but rather because how their cache hit (or miss) rate is in
  * configurations where entries are randomly scattered in memory rather
- * than layed out in one big chunk.
+ * than laid out in one big chunk.
  *
  * Be smart. Don't do that. Allocate a pool in a __single chunk__ and enjoy the
  * cache performance. Do not use larger chunks than the page size of your
@@ -240,7 +240,7 @@ static inline void INIT_LIST_HEAD(struct list_head *list)
 	}
 
 /**
- * @brief the list entry do-while equivalent fo a code block
+ * @brief the list entry do-while equivalent for a code block
  * @param pos:	the type * to use as a loop counter.
  * @param head:	the head for your list.
  * @param member:	the name of the list_struct within the struct.
diff --git a/lib/cmp_entity.c b/lib/cmp_entity.c
index 37261833649c0894e45aaa006974deb929c83fd0..5841ecf72b3b8bddf51611a622ec13f513cecf45 100644
--- a/lib/cmp_entity.c
+++ b/lib/cmp_entity.c
@@ -2136,7 +2136,7 @@ size_t cmp_ent_build(struct cmp_entity *ent, uint32_t version_id,
 
 #ifdef HAS_TIME_H
 /*
- * @brief Covert a calendar time expressed as a struct tm object to time since
+ * @brief Convert a calendar time expressed as a struct tm object to time since
  *	 epoch as a time_t object. The function interprets the input structure
  *	 as representing Universal Coordinated Time (UTC).
  * @note timegm is a GNU C Library extension, not standardized. This function
diff --git a/lib/cmp_icu.c b/lib/cmp_icu.c
index 6ad7af218a3f48e77be59103d8843ce2ec9413ac..b710750153b93bb79de187604ed615cc52061ad0 100644
--- a/lib/cmp_icu.c
+++ b/lib/cmp_icu.c
@@ -106,7 +106,7 @@ struct cmp_cfg cmp_cfg_icu_create(enum cmp_data_type data_type, enum cmp_mode cm
  *				with the cmp_cfg_icu_create() function)
  * @param data_to_compress	pointer to the data to be compressed
  * @param data_samples		length of the data to be compressed measured in
- *				data samples/entitys (collection header not
+ *				data samples/entities (collection header not
  *				included by imagette data)
  * @param model_of_data		pointer to model data buffer (can be NULL if no
  *				model compression mode is used)
diff --git a/lib/cmp_rdcu.c b/lib/cmp_rdcu.c
index 5c6b01591f281d2e247ceec271cc08c6f4ae1b25..2469988e42af7988fcfad1f121cb6292c58db7d0 100644
--- a/lib/cmp_rdcu.c
+++ b/lib/cmp_rdcu.c
@@ -414,7 +414,7 @@ int rdcu_interrupt_compression(void)
 	sync();
 
 	/* clear local bit immediately, this is a write-only register.
-	 * we would not want to restart compression by accidentially calling
+	 * we would not want to restart compression by accidentally calling
 	 * rdcu_sync_compr_ctrl() again
 	 */
 	rdcu_clear_data_compr_interrupt();
diff --git a/lib/rdcu_cmd.c b/lib/rdcu_cmd.c
index 2c7feaedf9924080e70f404a38a5b33501ee90df..a4e21d265a663c0a3d62afaca55f894719611f67 100644
--- a/lib/rdcu_cmd.c
+++ b/lib/rdcu_cmd.c
@@ -700,7 +700,7 @@ int rdcu_write_cmd_compr_data_buf_len(uint16_t trans_id, uint8_t *cmd)
 
 
 /**
- * @brief create a command to read the RDCU used paramter 1 register
+ * @brief create a command to read the RDCU used parameter 1 register
  *
  * @param trans_id a transaction identifier
  *
@@ -717,7 +717,7 @@ int rdcu_read_cmd_used_param1(uint16_t trans_id, uint8_t *cmd)
 
 
 /**
- * @brief create a command to read the RDCU unused paramter 2 register
+ * @brief create a command to read the RDCU unused parameter 2 register
  *
  * @param trans_id a transaction identifier
  *
diff --git a/lib/rdcu_ctrl.c b/lib/rdcu_ctrl.c
index 774a7950930d0091750073674f117891d0db934d..579db5e15e761086504db66f5c5ca80fc21a5f1c 100644
--- a/lib/rdcu_ctrl.c
+++ b/lib/rdcu_ctrl.c
@@ -20,7 +20,7 @@
  *	All sync() calls respect the direction of the sync, i.e. read-only
  *	registers in the RDCU are synced to the local mirror
  *	and vice-versa for write-only register
- *	The only exception are SRAM (data) related syncs, they specifiy
+ *	The only exception are SRAM (data) related syncs, they specify
  *	the direction by a directional suffix, which is either _icu_rdcu
  *	for ICU->RDCU, i.e. transfer local to remote, or _rdcu_icu for a
  *	read-back
@@ -818,7 +818,7 @@ void rdcu_clear_rdcu_interrupt(void)
  * @note The bit will auto-clear in the FPGA once compression is complete.
  *	 To clear the local mirror, make sure to
  *	 rdcu_clear_data_compr_interrupt() so the FPGA does not interrupt
- *	 data compression unexepectedly when rdcu_sync_compr_ctrl()
+ *	 data compression unexpectedly when rdcu_sync_compr_ctrl()
  *	 is called, as write-only registers are not synced back from the RDCU.
  *
  */
@@ -847,7 +847,7 @@ void rdcu_clear_data_compr_interrupt(void)
  * @note The bit will auto-clear in the FPGA once compression is complete.
  *	 To clear the local mirror, make sure to
  *	 rdcu_clear_data_compr_start() so the FPGA does not start
- *	 data compression unexepectedly when rdcu_sync_compr_ctrl()
+ *	 data compression unexpectedly when rdcu_sync_compr_ctrl()
  *	 is called, as write-only registers are not synced back from the RDCU.
  */
 
@@ -2390,7 +2390,7 @@ int rdcu_sync_sram_to_mirror(uint32_t addr, uint32_t size, uint32_t mtu)
  * @note due to restrictions, the number of bytes and mtu must be a multiple
  *	 of 4; the address must be aligned to 32-bits as well
  *
- * @returns 0 on succes, otherwise error
+ * @returns 0 on success, otherwise error
  */
 
 int rdcu_sync_sram_mirror_parallel(uint32_t rx_addr, uint32_t rx_size,
diff --git a/lib/rdcu_pkt_to_file.c b/lib/rdcu_pkt_to_file.c
index 36e200bcb70eefe1adc901e54b54130404787e26..80da5b2442783ef6c4ca6011108ae42b8f7232ff 100644
--- a/lib/rdcu_pkt_to_file.c
+++ b/lib/rdcu_pkt_to_file.c
@@ -152,7 +152,7 @@ static int32_t rmap_tx_to_file(const void *hdr, uint32_t hdr_size,
 		return -1;
 	blob = malloc((unsigned int)n);
 	if (!blob) {
-		printf("malloc for tx_pkt faild\n");
+		printf("malloc for tx_pkt failed\n");
 		return -1;
 	}
 
diff --git a/lib/rdcu_rmap.c b/lib/rdcu_rmap.c
index 73d90cf69fd33b0b6511d2d6ded9b304fd5feb18..0e14b775f9dace881025ee7e7a51d85095d825d8 100644
--- a/lib/rdcu_rmap.c
+++ b/lib/rdcu_rmap.c
@@ -292,7 +292,7 @@ static int rdcu_process_rx(void)
 		if (rp->data_len) {
 			uint8_t crc8;
 
-			/* convert endianess if needed */
+			/* convert endianness if needed */
 #if (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
 			{
 				unsigned int i;
@@ -465,7 +465,7 @@ int rdcu_sync(int (*fn)(uint16_t trans_id, uint8_t *cmd),
 		return -1;
 	}
 
-	/* convert endianess if needed */
+	/* convert endianness if needed */
 #if (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
 	if (data_len) {
 		int i;
@@ -501,7 +501,7 @@ int rdcu_sync(int (*fn)(uint16_t trans_id, uint8_t *cmd),
  * @note this one is a little redundant, but otherwise we'd have a lot of
  *	 unused parameters on most of the control functions
  *
- * XXX need a paramter for read...meh...must think of something else
+ * XXX need a parameter for read...meh...must think of something else
  */
 
 
diff --git a/lib/rmap.c b/lib/rmap.c
index 113ad1ebdab3ac700bc57532d6dafb26a5e226a6..686e3b1047cf5b3b549fd52a4accbaf8b43fef4a 100644
--- a/lib/rmap.c
+++ b/lib/rmap.c
@@ -405,7 +405,7 @@ void rmap_set_data_addr(struct rmap_pkt *pkt, uint32_t addr)
  *
  * @note the length is at most 2^24-1 bytes
  * @note if the RMAP command is of 'SINGLE' type, only multiples of 4
- *	 will result in successfull execution of the command (at least
+ *	 will result in successful execution of the command (at least
  *	 with the GRSPW2 core)
  */
 
@@ -656,7 +656,7 @@ static int rmap_check_status(uint8_t status)
 		printf("Reserved");
 		break;
 	case RMAP_STATUS_VERIFY_BUFFER_OVERRRUN:
-		printf("Verify buffer overrrun");
+		printf("Verify buffer overrun");
 		break;
 	case RMAP_STATUS_CMD_NOT_IMPL_OR_AUTH:
 		printf("RMAP Command not implemented or not authorised");
diff --git a/test/cmp_icu/test_decmp.c b/test/cmp_icu/test_decmp.c
index 599f50af78fd874a8e9a1f7d20a5b74144c1de86..86993365c45170f68db75095ba7e167deebc7545 100644
--- a/test/cmp_icu/test_decmp.c
+++ b/test/cmp_icu/test_decmp.c
@@ -328,7 +328,7 @@ void test_decode_zero(void)
 	TEST_ASSERT_EQUAL_HEX(7, decoded_value);
 	TEST_ASSERT_EQUAL_INT(28, stream_pos);
 
-	 /* TODO error case: negativ stream_pos */
+	 /* TODO error case: negative stream_pos */
 }
 
 void test_decode_multi(void)