07 Feb, 2020

15 commits

  • At present driver model supports the IRQ uclass but there is no way to
    request a particular interrupt for a driver.

    Add a mechanism, similar to clock and reset, to read the interrupts
    required by a device from the device tree and to request those interrupts.

    U-Boot itself does not have interrupt-driven handlers, so just provide a
    means to read and clear an interrupt. This can be useful to handle
    peripherals which must use an interrupt to determine when data is
    available, for example.

    Bring over the basic binding file as well, from Linux v5.4. Note that the
    older binding is not supported in U-Boot; the newer 'special form' must be
    used.

    Add a simple test of the new functionality.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Allow this driver to be used in TPL by setting up the interrupt type
    correctly.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Add an IRQ type to each driver and use irq_first_device_type() to find
    and probe the correct one.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • There can be different types of interrupt controllers in a system and some
    drivers may need to distinguish between these. In general this can be
    handled using the device tree by adding the interrupt information to
    device nodes.

    However on x86 devices we have interrupt controllers which are not tied
    to any particular device and not really used in U-Boot. These still need
    to be inited, so a convenient method is to give each controller a type
    and allow a particular controller type to be probed.

    Add support for this in sandbox along with a test.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng
    [bmeng: remove the new bland line at EOF of test/dm/irq.c]
    Signed-off-by: Bin Meng

    Simon Glass
     
  • These are actually working correctly, so update the status.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • This config is not actually used here and in U-Boot it seems better to set
    this using the device tree for each individual controller. The monolithic
    config of the FSP-S is only necessary if the FSP is actually configuring
    something, but here it is not.

    The FSP-S does enable/disable the various I2C ports. It might be nice to
    handle this using the okay/disabled property of each port, but that can be
    considered later.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Enable the Intel clock driver and modify coral's device tree to use it.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • So far we have avoided adding a clock driver for Intel devices. But the
    Designware I2C driver needs a different clock (133MHz) on Intel devices
    than on others (166MHz). Add a simple driver that provides this
    information.

    This driver can be expanded later as needed.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Now that we have uclass_first_device_drvdata(), use it from the I2C driver
    to reduce code duplication.

    Signed-off-by: Simon Glass
    Reviewed-by: Heiko Schocher
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Now that we have uclass_first_device_drvdata(), use it from syscon to
    reduce code duplication.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • It is sometimes useful to find a device in a uclass using only its driver
    data. The driver data often indicates the 'subtype' of the device, e,g,
    via its compatible string.

    Add a function to handle this.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • At present we have uclass_foreach_dev() which requires that uclass_get()
    be called beforehand to find the uclass. This is good if we suspect that
    that function might fail, but often we know that the uclass is available.

    Add a new helper which does this uclass_get() automatically, so that only
    the uclass ID is needed.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • The Primary to Sideband Bridge (P2SB) is not specific to Apollo Lake, so
    move its driver to a common location within arch/x86.

    Signed-off-by: Wolfgang Wallner
    Reviewed-by: Bin Meng

    Wolfgang Wallner
     
  • This partially reverts changes by commit 2cc393f32fd9
    ("video: make BPP and ANSI configs optional") since it
    caused issues with other boards (missing LCD console
    output on pinebook, x86 platform or sandbox). Enable
    all disabled options again and opt out of not supported
    color depth in board defconfigs.

    Signed-off-by: Anatolij Gustschin
    Reported-by: Vagrant Cascadian

    Anatolij Gustschin
     
  • Rsync all defconfig files using moveconfig.py

    Signed-off-by: Tom Rini

    Tom Rini
     

05 Feb, 2020

3 commits


04 Feb, 2020

22 commits