bcm63xx: prevent fall-through in kernel patches for 5.4
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>
Fri, 3 Apr 2020 15:48:43 +0000 (17:48 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 12 Apr 2020 10:43:55 +0000 (12:43 +0200)
In kernel 5.4 -Werror=implicit-fallthrough is treated as error:

arch/mips/bcm63xx/cpu.c: In function 'detect_cpu_clock':
arch/mips/bcm63xx/cpu.c:158:2: error: this statement may fall through [-Werror=implicit-fallthrough=]
  {
  ^
arch/mips/bcm63xx/cpu.c:179:2: note: here
  case BCM6328_CPU_ID:
  ^~~~
cc1: all warnings being treated as errors

This can be fixed by adding "Fall through" as a comment where intended,
and has to be fixed by returning a proper default otherwise.

In case of the default clock frequency for BCM6318 we fixed this by
returning the default value taken from BCM6328 and BCM6362.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/bcm63xx/patches-5.4/341-MIPS-BCM63XX-add-support-for-BCM6318.patch
target/linux/bcm63xx/patches-5.4/416-BCM63XX-add-a-fixup-for-ath9k-devices.patch
target/linux/bcm63xx/patches-5.4/420-BCM63XX-add-endian-check-for-ath9k.patch
target/linux/bcm63xx/patches-5.4/421-BCM63XX-add-led-pin-for-ath9k.patch

index 5f4c900813cf97ea5023fc6c407b5dfd63940cdf..5b05fa6bd51e9c6a06c1cc9e5059b80441ce5f7e 100644 (file)
@@ -124,7 +124,7 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for BCM6318
  static unsigned int detect_cpu_clock(void)
  {
        u32 cpu_id = bcm63xx_get_cpu_id();
-@@ -142,6 +154,28 @@ static unsigned int detect_cpu_clock(voi
+@@ -142,6 +154,30 @@ static unsigned int detect_cpu_clock(voi
        case BCM3368_CPU_ID:
                return 300000000;
  
@@ -148,12 +148,14 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for BCM6318
 +                      return 250000000;
 +              case 3:
 +                      return 333000000;
-+              };
++              default:
++                      return 320000000;
++              }
 +      }
        case BCM6328_CPU_ID:
        {
                unsigned int tmp, mips_pll_fcvo;
-@@ -297,6 +331,13 @@ static unsigned int detect_memory_size(v
+@@ -297,6 +333,13 @@ static unsigned int detect_memory_size(v
        unsigned int cols = 0, rows = 0, is_32bits = 0, banks = 0;
        u32 val;
  
@@ -167,7 +169,7 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for BCM6318
        if (BCMCPU_IS_6328() || BCMCPU_IS_6362() || BCMCPU_IS_63268())
                return bcm_ddr_readl(DDR_CSEND_REG) << 24;
  
-@@ -343,6 +384,12 @@ void __init bcm63xx_cpu_init(void)
+@@ -343,6 +386,12 @@ void __init bcm63xx_cpu_init(void)
  
        switch (current_cpu_type()) {
        case CPU_BMIPS3300:
@@ -180,7 +182,7 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for BCM6318
                if ((read_c0_prid() & PRID_IMP_MASK) != PRID_IMP_BMIPS3300_ALT)
                        __cpu_name[cpu] = "Broadcom BCM6338";
                /* fall-through */
-@@ -390,6 +437,10 @@ void __init bcm63xx_cpu_init(void)
+@@ -390,6 +439,10 @@ void __init bcm63xx_cpu_init(void)
        bcm63xx_cpu_variant = bcm63xx_cpu_id;
  
        switch (bcm63xx_cpu_id) {
index c9d2ee1791abe0533e44329ef2609f0c46b0990f..d83d2cec7b1366194b194de6107e44224d70d543 100644 (file)
@@ -24,7 +24,7 @@ Subject: [PATCH 61/72] BCM63XX: add a fixup for ath9k devices
  obj-y         += boards/
 --- /dev/null
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -0,0 +1,200 @@
+@@ -0,0 +1,201 @@
 +/*
 + *  Broadcom BCM63XX Ath9k EEPROM fixup helper.
 + *
@@ -108,6 +108,7 @@ Subject: [PATCH 61/72] BCM63XX: add a fixup for ath9k devices
 +                      return eeprom;
 +              }
 +              /* can't do anything here without talking to the SPI controller. */
++              /* Fall through */
 +      case BCM63XX_FLASH_TYPE_NAND:
 +      default:
 +              return NULL;
index 2076879ed63ff9b2cc66594d3c23cd23d3124632..332b2394e1246bf95122cf2ce0961e2b5e94f03d 100644 (file)
@@ -21,7 +21,7 @@
  /*
 --- a/arch/mips/bcm63xx/pci-ath9k-fixup.c
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -182,12 +182,14 @@ static void ath9k_pci_fixup(struct pci_d
+@@ -183,12 +183,14 @@ static void ath9k_pci_fixup(struct pci_d
  }
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ath9k_pci_fixup);
  
index bb111dc9de9f2fd56051ece50875a2a5477d60b4..1f28198c4a0ed48daa59f5d89dac6242db69f712 100644 (file)
@@ -11,7 +11,7 @@
  }
 --- a/arch/mips/bcm63xx/pci-ath9k-fixup.c
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -183,13 +183,15 @@ static void ath9k_pci_fixup(struct pci_d
+@@ -184,13 +184,15 @@ static void ath9k_pci_fixup(struct pci_d
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ath9k_pci_fixup);
  
  void __init pci_enable_ath9k_fixup(unsigned slot, u32 offset,