diff --git a/openwrt/toolchain/Config.in b/openwrt/toolchain/Config.in
index 67a331f0489dc6d76d6f095387011f8e590324e0..080d87761fdfb14096553e7b73f00411d2b73aaf 100644
--- a/openwrt/toolchain/Config.in
+++ b/openwrt/toolchain/Config.in
@@ -24,5 +24,6 @@ config BR2_SOFT_FLOAT
 
 config BR2_TARGET_OPTIMIZATION
 	string
-	default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time"
-
+	default "-Os -pipe -march=i486 -funit-at-a-time" if BR2_i386
+	default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time" if BR2_mipsel || BR2_mips
+	default "-Os -pipe -funit-at-a-time"
diff --git a/openwrt/toolchain/Config.in.devel b/openwrt/toolchain/Config.in.devel
index 2f2bbc426d0ba57a606986499c89054f0f49d1e7..4144c50d9d6f1511fc97aab46f688aaba61e86d0 100644
--- a/openwrt/toolchain/Config.in.devel
+++ b/openwrt/toolchain/Config.in.devel
@@ -38,7 +38,8 @@ config BR2_SOFT_FLOAT
 config BR2_TARGET_OPTIMIZATION
 	string "Target Optimizations"
 	default "-Os -pipe -march=i486 -funit-at-a-time" if BR2_i386
-	default "-Os -pipe -mips32 -mtune=mips32  -funit-at-a-time" if BR2_mipsel
+	default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time" if BR2_mipsel || BR2_mips
+	default "-Os -pipe -funit-at-a-time"
 	help
 	  Optimizations to use when building for the target host.