1. 15 Jan, 2019 1 commit
    • Koen Vandeputte's avatar
      cns3xxx: use actual size reads for PCIe · e0959274
      Koen Vandeputte authored
      upstream commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
      reimplemented cns3xxx_pci_read_config() using pci_generic_config_read32(),
      which preserved the property of only doing 32-bit reads.
      It also replaced cns3xxx_pci_write_config() with pci_generic_config_write(),
      so it changed writes from always being 32 bits to being the actual size,
      which works just fine.
      Due to:
      - The documentation does not mention that only 32 bit access is allowed.
      - Writes are already executed using the actual size
      - Extensive testing shows that 8b, 16b and 32b reads work as intended
      It makes perfectly sense to also swap 32 bit reading in favor of actual size.
      Signed-off-by: default avatarKoen Vandeputte <koen.vandeputte@ncentric.com>
  2. 08 Jan, 2019 1 commit
  3. 01 Jan, 2019 1 commit
    • Christian Lamparter's avatar
      apm821xx: switch MX60(W)'s recovery images to multi-image method · 834bd864
      Christian Lamparter authored
      In the past, the MX60(W)'s recovery images always had problems
      with the size restriction and never really worked without manual
      intervention. This patch reworks the initramfs, which allows the
      device to ease up on the impossible tight kernel size requirements
      for the initramfs image.
      This new initramfs can be loaded through the MX60(W) U-boot
      in the following way:
      => setenv bootargs console=ttyS0,$baudrate
      => tftpboot $meraki_loadaddr meraki_mx60-initramfs-kernel.bin
         Load address: 0x800000
          Loading: ################################################ [...]
      => bootm $fileaddr
         \## Booting kernel from Legacy Image at 00800000 ...
      For more information and the latest flashing guide:
      please visit the OpenWrt Wiki Page for the MX60(W):
      Signed-off-by: default avatarChris Blake <chrisrblake93@gmail.com>
      Signed-off-by: default avatarChristian Lamparter <chunkeey@gmail.com>
      (cherry picked from commit 36c19c9f)
  4. 27 Dec, 2018 1 commit
    • Freddy Leitner's avatar
      apm821xx: MBL: load kernel/dtb from SATA 0:1 first · 459a40fc
      Freddy Leitner authored
      This remedies an issue with the MBL Duo if both disks are inserted
      and contain OpenWrt. kernel and dtb would be loaded from SATA 1:1
      while rootfs (/dev/sda2) would be mounted on SATA 0:1.
      Such a mix&match would obviously only work if both OpenWrt versions/
      builds are identical, and especially fail after sysupgrade upgraded
      the system disk on SATA 0:1.
      The fallback to SATA 1:1 needs to be kept for MBL Single (only has
      SATA 1:1) and MBL Duo with one disk inserted on SATA 1:1. To speed
      up booting in those cases, the unneccesarily doubled "sata init"
      will only be called once. (In theory it could be omitted completely
      since the on-flash boot script already initializes SATA to load the
      on-disk boot script.)
      Tested on MBL Duo (all possible combination of disks) and MBL Single
      Signed-off-by: default avatarFreddy Leitner <hello@square.wf>
  5. 18 Dec, 2018 2 commits
    • Koen Vandeputte's avatar
      cns3xxx: fix writing to wrong PCI registers · 202c3ceb
      Koen Vandeputte authored
      Originally, cns3xxx used it's own functions for mapping, reading and writing registers.
      Upstream commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
      removed the internal PCI config write function in favor of the generic one:
      cns3xxx_pci_write_config() --> pci_generic_config_write()
      cns3xxx_pci_write_config() expected aligned addresses, being produced by cns3xxx_pci_map_bus()
      while the generic one pci_generic_config_write() actually expects the real address
      as both the function and hardware are capable of byte-aligned writes.
      This currently leads to pci_generic_config_write() writing
      to the wrong registers on some ocasions.
      First issue seen due to this:
      - driver ath9k gets loaded
      - The driver wants to write value 0xA8 to register PCI_LATENCY_TIMER, located at 0x0D
      - cns3xxx_pci_map_bus() aligns the address to 0x0C
      - pci_generic_config_write() effectively writes 0xA8 into register 0x0C (CACHE_LINE_SIZE)
      This seems to cause some slight instability when certain PCI devices are used.
      Another issue example caused by this this is the PCI bus numbering,
      where the primary bus is higher than the secondary, which is impossible.
      00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
          Flags: bus master, fast devsel, latency 0, IRQ 255
          Bus: primary=02, secondary=01, subordinate=ff, sec-latency=0
      After fix:
      00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
          Flags: bus master, fast devsel, latency 0, IRQ 255
          Bus: primary=00, secondary=01, subordinate=02, sec-latency=0
      And very likely some more ..
      Fix all by omitting the alignment being done in the mapping function.
      Signed-off-by: default avatarKoen Vandeputte <koen.vandeputte@ncentric.com>
    • Koen Vandeputte's avatar
      kernel: bump 4.4 to 4.4.167 · 65044a50
      Koen Vandeputte authored
      Refreshed all patches.
      Removed upstreamed:
      - 203-MIPS-ath79-fix-restart.patch
      - 330-Revert-MIPS-BCM47XX-Enable-74K-Core-ExternalSync-for.patch
      - 051-0001-ovl-rename-is_merge-to-is_lowest.patch
      - 051-0002-ovl-override-creds-with-the-ones-from-the-superblock.patch
      - 051-0005-ovl-proper-cleanup-of-workdir.patch
      Altered patches:
      - 201-extra_optimization.patch
      - 304-mips_disable_fpu.patch
      Compile-tested on: ar71xx, cns3xxx, imx6, mpc85xx
      Runtime-tested on: ar71xx, cns3xxx, imx6, mpc85xx
      Signed-off-by: default avatarKoen Vandeputte <koen.vandeputte@ncentric.com>
  6. 12 Dec, 2018 1 commit
    • Jo-Philipp Wich's avatar
      rpcd: update to latest Git head · 26b80696
      Jo-Philipp Wich authored
      3aa81d0 file: access exec timeout via daemon ops structure
      7235f34 plugin: store pointer to exec timeout value in the ops structure
      ccd7c0a treewide: rename exec_timeout to rpc_exec_timeout
      c79ef22 main: fix logic bug when not specifying a timeout option
      2cc4b99 file: use global exec timeout instead of own hardcoded limit
      ecd1660 exec: increase maximum execution time to 120s
      41333ab uci: tighten uci reorder operation error handling
      f91751b uci: tighten uci delete operation error handling
      c2c612b uci: tighten uci set operation error handling
      948bb51 uci: tighten uci add operation error handling
      51980c6 uci: reject invalid section and option names
      Signed-off-by: default avatarJo-Philipp Wich <jo@mein.io>
  7. 11 Dec, 2018 1 commit
  8. 29 Nov, 2018 4 commits
  9. 28 Nov, 2018 1 commit
    • Jo-Philipp Wich's avatar
      uhttpd: update to latest Git head · 6cf22507
      Jo-Philipp Wich authored
      cdfc902 cgi: escape url in 403 error output
      0bba1ce uhttpd: fix building without TLS and Lua support
      2ed3341 help: document -A option
      fa5fd45 file: fix CPP syntax error
      77b774b build: avoid redefining _DEFAULT_SOURCE
      b741dec lua: support multiple Lua prefixes
      952bf9d build: use _DEFAULT_SOURCE
      30a18cb uhttpd: recognize PATCH, PUT and DELETE HTTP methods
      796d42b client: flush buffered SSL output when tearing down client ustream
      393b59e proc: expose HTTP Origin header in process environment
      8109b95 file: escape strings in HTML output
      d3b9560 utils: add uh_htmlescape() helper
      db86175 lua: honour size argument in recv()
      Signed-off-by: default avatarJo-Philipp Wich <jo@mein.io>
  10. 24 Nov, 2018 1 commit
  11. 22 Nov, 2018 1 commit
    • Linus Kardell's avatar
      base-files: fix unkillable processes after restart · 0f47ce81
      Linus Kardell authored
      When restart is run on an init script, the script traps SIGTERM. This is
      done as a workaround for scripts named the same name as the program they
      start. In that case, the init script process will have the same name as
      the program process, and so when the init script runs killall, it will
      kill itself. So SIGTERM is trapped to make the init script unkillable.
      However, the trap is retained when the init script runs start, and thus
      processes started by restart will not respond to SIGTERM, and will thus
      be unkillable unless you use SIGKILL. This fixes that by removing the
      trap before running start.
      Signed-off-by: default avatarLinus Kardell <linus@telliq.com>
      (cherry picked from commit 2ac1a576)
  12. 16 Nov, 2018 1 commit
  13. 09 Nov, 2018 1 commit
  14. 07 Nov, 2018 4 commits
  15. 12 Sep, 2018 1 commit
  16. 02 Sep, 2018 2 commits
  17. 30 Aug, 2018 7 commits
  18. 27 Aug, 2018 1 commit
  19. 22 Aug, 2018 1 commit
  20. 21 Aug, 2018 7 commits