Skip to content
  • Geert Uytterhoeven's avatar
    m32r: fix endianness constraints · 9ce9f4e4
    Geert Uytterhoeven authored
    commit c95f1211 upstream.
    
    The m32r Kconfig provides both CPU_BIG_ENDIAN and CPU_LITTLE_ENDIAN
    configuration options.  As they are user-selectable and independent,
    this allows invalid configurations:
    
      - All m32r defconfigs build a big endian kernel, but CPU_BIG_ENDIAN is
        not set, causing compiler warnings like:
    
    	include/linux/byteorder/big_endian.h:7:2: warning: #warning inconsistent configuration, needs CONFIG_CPU_BIG_ENDIAN [-Wcpp]
    	 #warning inconsistent configuration, needs CONFIG_CPU_BIG_ENDIAN
    	  ^
    
      - Since commit 5bdfca64 ("m32r: define CPU_BIG_ENDIAN"),
        building an allmodconfig or allyesconfig enables both
        CONFIG_CPU_BIG_ENDIAN and CONFIG_CPU_LITTLE_ENDIAN.
        While this did get rid of the warning above, both options are
        obviously mutually exclusive.
    
    Fix this by making only CPU_LITTLE_ENDIAN configurable by the user, as
    before, and by making sure exactly one of CPU_BIG_ENDIAN and
    CPU_LITTLE_ENDIAN is al...
    9ce9f4e4