--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
-@@ -624,6 +624,26 @@ else
- load-$(CONFIG_CPU_CAVIUM_OCTEON) += 0xffffffff81100000
+@@ -156,6 +156,26 @@ ifeq (,$(findstring march=octeon, $(cfla
+ cflags-$(CONFIG_CPU_CAVIUM_OCTEON) += -Wa,-march=octeon
endif
+#
+cflags-$(CONFIG_RALINK_RT305X) += -I$(srctree)/arch/mips/include/asm/mach-ralink/rt305x
+load-$(CONFIG_RALINK_RT305X) += 0xffffffff80000000
+
- # temporary until string.h is fixed
- cflags-y += -ffreestanding
-
+ cflags-$(CONFIG_CPU_R4000_WORKAROUNDS) += $(call cc-option,-mfix-r4000,)
+ cflags-$(CONFIG_CPU_R4400_WORKAROUNDS) += $(call cc-option,-mfix-r4400,)
+ cflags-$(CONFIG_CPU_DADDI_WORKAROUNDS) += $(call cc-option,-mno-daddi,)
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -43,6 +43,9 @@ config AR7