A few comments below.
> diff --git a/arch/mips/Kbuild.platforms b/arch/mips/Kbuild.platforms
> index 681b2d4..18eff23 100644
> --- a/arch/mips/Kbuild.platforms
> +++ b/arch/mips/Kbuild.platforms
> @@ -1,6 +1,6 @@
> # All platforms listed in alphabetic order
> -platforms += ar7
> +platforms += alchemy ar7
One line per paltform is better.
Then the risk for conflicts are less and merging in easier.
platforms += ar7
platforms += alchemy
But this is a nitpick only.
> diff --git a/arch/mips/alchemy/Platform b/arch/mips/alchemy/Platform
> new file mode 100644
> index 0000000..1994fdc
> --- /dev/null
> +++ b/arch/mips/alchemy/Platform
> @@ -0,0 +1,103 @@
> +# Common Alchemy Au1x00 stuff
> +core-$(CONFIG_SOC_AU1X00) += arch/mips/alchemy/common/
The above is actually wrong - despite that it works.
You are supposed to use:
platform-$(CONFIG_SOC_AU1X00) += alchemy/common/
Then arch/mips/Kbuild will pick it up.
And then subdirs-ccflags-y := -Werror will also take effect.
The reason why it works now is that the core-y assignment is
picked up by arch/mips/Makefile.
I could do something to avoid this but I hope this is not needed.
You use core-$(...) in many places that all needs fixing.