diff options
Diffstat (limited to 'os')
-rw-r--r-- | os/hal/platforms/STM32/mac_lld.c | 6 | ||||
-rw-r--r-- | os/hal/platforms/STM32F2xx/hal_lld.h | 8 | ||||
-rw-r--r-- | os/hal/platforms/STM32F4xx/hal_lld.h | 8 |
3 files changed, 13 insertions, 9 deletions
diff --git a/os/hal/platforms/STM32/mac_lld.c b/os/hal/platforms/STM32/mac_lld.c index aff58342e..2799aab85 100644 --- a/os/hal/platforms/STM32/mac_lld.c +++ b/os/hal/platforms/STM32/mac_lld.c @@ -41,7 +41,11 @@ #define BUFFER_SIZE ((((STM32_MAC_BUFFERS_SIZE - 1) | 3) + 1) / 4)
/* MII divider optimal value.*/
-#if (STM32_HCLK >= 60000000)
+#if (STM32_HCLK >= 150000000)
+#define MACMIIDR_CR ETH_MACMIIAR_CR_Div102
+#elif (STM32_HCLK >= 100000000)
+#define MACMIIDR_CR ETH_MACMIIAR_CR_Div62
+#elif (STM32_HCLK >= 60000000)
#define MACMIIDR_CR ETH_MACMIIAR_CR_Div42
#elif (STM32_HCLK >= 35000000)
#define MACMIIDR_CR ETH_MACMIIAR_CR_Div26
diff --git a/os/hal/platforms/STM32F2xx/hal_lld.h b/os/hal/platforms/STM32F2xx/hal_lld.h index e704b7fa2..4d63324ce 100644 --- a/os/hal/platforms/STM32F2xx/hal_lld.h +++ b/os/hal/platforms/STM32F2xx/hal_lld.h @@ -221,10 +221,10 @@ #define STM32_MCO1PRE_MASK (7 << 24) /**< MCO1PRE mask. */
#define STM32_MCO1PRE_DIV1 (0 << 24) /**< MCO1 divided by 1. */
-#define STM32_MCO1PRE_DIV2 (1 << 24) /**< MCO1 divided by 2. */
-#define STM32_MCO1PRE_DIV3 (2 << 24) /**< MCO1 divided by 3. */
-#define STM32_MCO1PRE_DIV4 (3 << 24) /**< MCO1 divided by 4. */
-#define STM32_MCO1PRE_DIV5 (4 << 24) /**< MCO1 divided by 5. */
+#define STM32_MCO1PRE_DIV2 (4 << 24) /**< MCO1 divided by 2. */
+#define STM32_MCO1PRE_DIV3 (5 << 24) /**< MCO1 divided by 3. */
+#define STM32_MCO1PRE_DIV4 (6 << 24) /**< MCO1 divided by 4. */
+#define STM32_MCO1PRE_DIV5 (7 << 24) /**< MCO1 divided by 5. */
#define STM32_MCO2PRE_MASK (7 << 27) /**< MCO2PRE mask. */
#define STM32_MCO2PRE_DIV1 (0 << 27) /**< MCO2 divided by 1. */
diff --git a/os/hal/platforms/STM32F4xx/hal_lld.h b/os/hal/platforms/STM32F4xx/hal_lld.h index 6cde89012..8c5303350 100644 --- a/os/hal/platforms/STM32F4xx/hal_lld.h +++ b/os/hal/platforms/STM32F4xx/hal_lld.h @@ -216,10 +216,10 @@ #define STM32_MCO1PRE_MASK (7 << 24) /**< MCO1PRE mask. */
#define STM32_MCO1PRE_DIV1 (0 << 24) /**< MCO1 divided by 1. */
-#define STM32_MCO1PRE_DIV2 (1 << 24) /**< MCO1 divided by 2. */
-#define STM32_MCO1PRE_DIV3 (2 << 24) /**< MCO1 divided by 3. */
-#define STM32_MCO1PRE_DIV4 (3 << 24) /**< MCO1 divided by 4. */
-#define STM32_MCO1PRE_DIV5 (4 << 24) /**< MCO1 divided by 5. */
+#define STM32_MCO1PRE_DIV2 (4 << 24) /**< MCO1 divided by 2. */
+#define STM32_MCO1PRE_DIV3 (5 << 24) /**< MCO1 divided by 3. */
+#define STM32_MCO1PRE_DIV4 (6 << 24) /**< MCO1 divided by 4. */
+#define STM32_MCO1PRE_DIV5 (7 << 24) /**< MCO1 divided by 5. */
#define STM32_MCO2PRE_MASK (7 << 27) /**< MCO2PRE mask. */
#define STM32_MCO2PRE_DIV1 (0 << 27) /**< MCO2 divided by 1. */
|