MFC r261786, r261789

  Rework the EARLY_PRINTF mechanism.  Instead of defining a special eprintf()
  routine, now a platform can provide a pointer to an early_putc() routine
  which is used instead of cn_putc().  Control can be handed off from early
  printf support to standard console support by NULLing out the pointer
  during standard console init.

  Convert two while(1); statements into proper panics.
MFC r261803, r261808, r261814, r261815, r261816, r261817, r261818, r261826,
    r261848, r261855

  On armv6 and later, use the WriteNotRead bit of the fault status register
  to decide what protections are required by the faulting access.

  Use the right symbols for determining arm architecture.  Include the
  necessary header file which has the new FAULT_WNR symbol defined in it.

  Allow the kernel to be loaded at any 1MiB address. This requirement is
  because we use the 1MiB section maps as they only need a single pagetable.

  Add function for configuring Vybrid PLL4 (Audio) clock frequency output.

  imx6 changes ...

  - Fix the definition of the SDHCI_STATE_DAT and SDHCI_STATE_CMD fields,
    and add SDHCI_RETUNE_REQUEST.  None of these are actually used in the
    code yet.

  - Write translation code for the SDHCI_PRESENT_STATE register.
    Freescale moved some bits around in their version of the register,
    adjust things so that the sdhci code sees the standard layout.

  - Add standard non-removable and cd-gpios properties to the usdhc
    devices.  That generates references to gpio devices, so uncomment them
    even though there isn't a gpio driver to do anything with them yet.

  - Add handling of standard "non-removable" property, and also some
    workaround code so that if card detect is wired to a gpio pin, for now
    we just treat it the same as non-removable (because there isn't a gpio
    driver yet).

  - Enable both sdcard slots, but not the sdio-based wifi that we don't
    yet have a driver for.

  - Remove a couple obsolete function declarations.
MFC r261917, r261918, r261919, r261920, r261921, r261922

  Always clear L1 PTE descriptor when removing superpage on ARM

  Invalidate L1 PTE regardles of existance of the corresponding l2_bucket.

  Ensure proper TLB invalidation on superpage promotion and demotion on ARM

  Base pages within newly created superpage need to be invalidated so that
  new mapping is "visible" immediately after creation.

  Fix superpage promotion on ARM with respect to RO/RW and wired attributes

  Avoid redundant superpage promotion attempts on ARM

  Remove spurious assertion from pmap_extract_locked() on ARM

  Handle pmap_enter() on already promoted mappings for ARMv6/v7