Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • early-display
  • variant-emmc-nvme-boot
  • 2023-01-25
  • v3
  • variant-emmc-nvme-boot
  • 2020-06-01
7 results

device.c

Blame
  • Forked from Reform / reform-boundary-uboot
    Source project has a limited visibility.
    • Masahiro Yamada's avatar
      d90a5a30
      pinctrl: add pin control uclass support · d90a5a30
      Masahiro Yamada authored
      
      This creates a new framework for handling of pin control devices,
      i.e. devices that control different aspects of package pins.
      
      This uclass handles pinmuxing and pin configuration; pinmuxing
      controls switching among silicon blocks that share certain physical
      pins, pin configuration handles electronic properties such as pin-
      biasing, load capacitance etc.
      
      This framework can support the same device tree bindings, but if you
      do not need full interface support, you can disable some features to
      reduce memory foot print.  Typically around 1.5KB is necessary to
      include full-featured uclass support on ARM board (CONFIG_PINCTRL +
      CONFIG_PINCTRL_FULL + CONFIG_PINCTRL_GENERIC + CONFIG_PINCTRL_PINMUX),
      for example.
      
      We are often limited on code size for SPL.  Besides, we still have
      many boards that do not support device tree configuration.  The full
      pinctrl, which requires OF_CONTROL, does not make sense for those
      boards.  So, this framework also has a Do-It-Yourself (let's say
      simple pinctrl) interface.  With CONFIG_PINCTRL_FULL disabled, the
      uclass itself provides no systematic mechanism for identifying the
      peripheral device, applying pinctrl settings, etc.  They must be
      done in each low-level driver.  In return, you can save much memory
      footprint and it might be useful especially for SPL.
      
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Acked-by: default avatarSimon Glass <sjg@chromium.org>
      d90a5a30
      History
      pinctrl: add pin control uclass support
      Masahiro Yamada authored
      
      This creates a new framework for handling of pin control devices,
      i.e. devices that control different aspects of package pins.
      
      This uclass handles pinmuxing and pin configuration; pinmuxing
      controls switching among silicon blocks that share certain physical
      pins, pin configuration handles electronic properties such as pin-
      biasing, load capacitance etc.
      
      This framework can support the same device tree bindings, but if you
      do not need full interface support, you can disable some features to
      reduce memory foot print.  Typically around 1.5KB is necessary to
      include full-featured uclass support on ARM board (CONFIG_PINCTRL +
      CONFIG_PINCTRL_FULL + CONFIG_PINCTRL_GENERIC + CONFIG_PINCTRL_PINMUX),
      for example.
      
      We are often limited on code size for SPL.  Besides, we still have
      many boards that do not support device tree configuration.  The full
      pinctrl, which requires OF_CONTROL, does not make sense for those
      boards.  So, this framework also has a Do-It-Yourself (let's say
      simple pinctrl) interface.  With CONFIG_PINCTRL_FULL disabled, the
      uclass itself provides no systematic mechanism for identifying the
      peripheral device, applying pinctrl settings, etc.  They must be
      done in each low-level driver.  In return, you can save much memory
      footprint and it might be useful especially for SPL.
      
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Acked-by: default avatarSimon Glass <sjg@chromium.org>