1. 04 Mar, 2020 26 commits
    • Tony Lindgren's avatar
      ARM: OMAP2+: Drop legacy platform data for am437x DSS · c760f610
      Tony Lindgren authored
      We can now probe devices with ti-sysc interconnect driver and dts
      data. Let's drop the related platform data and custom ti,hwmods
      dts property.
      
      As we're just dropping data, and the early platform data init
      is based on the custom ti,hwmods property, we want to drop both
      the platform data and ti,hwmods property in a single patch.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      c760f610
    • Tony Lindgren's avatar
      ARM: OMAP2+: Drop legacy platform data for dra7 DSS · 6fa1a986
      Tony Lindgren authored
      We can now probe devices with ti-sysc interconnect driver and dts
      data. Let's drop the related platform data and custom ti,hwmods
      dts property.
      
      As we're just dropping data, and the early platform data init
      is based on the custom ti,hwmods property, we want to drop both
      the platform data and ti,hwmods property in a single patch.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      6fa1a986
    • Tony Lindgren's avatar
      ARM: OMAP2+: Drop legacy platform data for omap5 DSS · 19da9c0e
      Tony Lindgren authored
      We can now probe devices with ti-sysc interconnect driver and dts
      data. Let's drop the related platform data and custom ti,hwmods
      dts property.
      
      As we're just dropping data, and the early platform data init
      is based on the custom ti,hwmods property, we want to drop both
      the platform data and ti,hwmods property in a single patch.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      19da9c0e
    • Tony Lindgren's avatar
      ARM: OMAP2+: Drop legacy platform data for omap4 dss · a2ebc75f
      Tony Lindgren authored
      We can now probe devices with ti-sysc interconnect driver and dts
      data. Let's drop the related platform data and custom ti,hwmods
      dts property.
      
      As we're just dropping data, and the early platform data init
      is based on the custom ti,hwmods property, we want to drop both
      the platform data and ti,hwmods property in a single patch.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      a2ebc75f
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for am437x rfbi · 11ef2bfc
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      11ef2bfc
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for am437x dispc · 9fd8a854
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      Note that we also fix a harmless typo for the node name, it's
      dispc@400, not dispc@4000.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      9fd8a854
    • Tony Lindgren's avatar
      ARM: dts: Move am437x dss to the interconnect target module in l4 · 3b6ff6bb
      Tony Lindgren authored
      On am437x, the display subsystem (DSS) is on l4. We already have
      the interconnect target module for it, so let's just move dss
      there.
      
      To do that, we need to adjust the module addresses for the ranges,
      and use the ranges already added earlier based on reading the l4
      interconnect instance AP registers.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      3b6ff6bb
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for dra7 hdmi · c4f4728b
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      c4f4728b
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for dra7 dispc · 9a95196c
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      9a95196c
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for dra7 dss · a50371f2
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      Initially let's just update the top level dss node to probe with ti-sysc
      interconnect target module driver. The child nodes are still children
      of dispc, only the node indentation changes for them now along with
      using the reg range provided by top level dss.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      a50371f2
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 hdmi · 671ab615
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      671ab615
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 dsi2 · 98e1a6a8
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      98e1a6a8
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 dsi1 · 5a507162
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      5a507162
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 rfbi · b9a4e149
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      b9a4e149
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 dispc · 2472a4e0
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      2472a4e0
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap5 dss · 715a5a97
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      Initially let's just update the top level dss node to probe with ti-sysc
      interconnect target module driver. The child nodes are still children
      of dispc, only the node indentation changes for them now along with
      using the reg range provided by top level dss.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      715a5a97
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 hdmi · 8f661563
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Note that we must disable smart idle modes for HDMI audio like we've
      done with the legacy platform data. And HDMI needs both hdmi clock
      and dss clock to operate.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      8f661563
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 dsi2 · dc7578e9
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      dc7578e9
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 dsi1 · 0b98d518
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      0b98d518
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 venc · 663de788
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      We must now also configure sys_clk for reset to complete, the top
      level module only keeps optional clocks enabled for it's own reset.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      663de788
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 rfbi · 3a97c4b9
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module and drop "ti,hwmods" peroperty as this module is a child node
      of dispc and has no dependencies to to legacy platform data.
      
      We must now also configure sys_clk for reset to complete, the top
      level module only keeps optional clocks enabled for it's own reset.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      3a97c4b9
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 dispc · 4c8d1c8d
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      We must now also configure sys_clk for reset to complete, the top
      level module only keeps optional clocks enabled for it's own reset.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      4c8d1c8d
    • Tony Lindgren's avatar
      ARM: dts: Configure interconnect target module for omap4 dss · 63b34416
      Tony Lindgren authored
      We can now probe devices with device tree only configuration using
      ti-sysc interconnect target module driver. Let's configure the
      module, but keep the legacy "ti,hwmods" peroperty until the child
      devices are probing with ti-sysc interconnect driver.
      
      The display subsystem (DSS) is in a 16MB interconnect target module
      mapped to l4 and l3 buses. We are only using the l3 port as recommended
      by the TRM. So there is no need to configure l4 ranges like we've done
      for l4 ABE instance for example.
      
      Initially let's just update the top level dss node to probe with ti-sysc
      interconnect target module driver. The child nodes are still children
      of dispc, only the node indentation changes for them now along with
      using the reg range provided by top level dss.
      
      Let's also add add a note about using only the l3 access without l4
      as noted in the TRM.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      63b34416
    • Suman Anna's avatar
      bus: ti-sysc: Add support for PRUSS SYSC type · b2745d92
      Suman Anna authored
      The PRU-ICSS present on AM33xx/AM43xx/AM57xx has a very unique
      SYSCFG register. The register follows the OMAP4-style SYSC_TYPE3
      for Master Standby and Slave Idle, but also has two additional
      unique fields - STANDBY_INIT and SUB_MWAIT. The STANDBY_INIT is
      a control bit that is used to initiate a Standby sequence (when
      set) and trigger a MStandby request to the SoC's PRCM module. This
      same bit is also used to enable the OCP master ports (when cleared)
      to allow the PRU cores to access any peripherals or memory beyond
      the PRU subsystem. The SUB_MWAIT is a ready status field for the
      external access.
      
      Add support for this SYSC type. The STANDBY_INIT has to be set
      during suspend, without which it results in a hang in the resume
      sequence on AM33xx/AM43xx boards and requires a board reset to
      come out of the hang. Any PRU applications requiring external
      access are supposed to clear the STANDBY_INIT bit. Note that
      the PRUSS context is lost during a suspend sequence because the
      PRUSS module is reset and/or disabled.
      Signed-off-by: default avatarSuman Anna <s-anna@ti.com>
      Signed-off-by: default avatarRoger Quadros <rogerq@ti.com>
      [tony@atomide.com: updated quirk define number and to use -ENODEV]
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      b2745d92
    • Roger Quadros's avatar
      dt-bindings: bus: ti-sysc: Add support for PRUSS SYSC type · 4d0dd380
      Roger Quadros authored
      The PRUSS module has a SYSCFG which is unique. The SYSCFG
      has two additional unique fields called STANDBY_INIT and
      SUB_MWAIT in addition to regular IDLE_MODE and STANDBY_MODE
      fields. Add the bindings for this new sysc type.
      
      Cc: Rob Herring <robh+dt@kernel.org>
      Signed-off-by: default avatarRoger Quadros <rogerq@ti.com>
      Signed-off-by: default avatarSuman Anna <s-anna@ti.com>
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      4d0dd380
    • Tony Lindgren's avatar
      bus: ti-sysc: Detect EDMA and set quirk flags for tptc · 25bfaaa7
      Tony Lindgren authored
      In order to probe EDMA with ti-sysc interconnect target module and with
      device tree data, we need to properly detect EDMA and set the flags for
      SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY for tptc.
      
      We have these flags currently set for am4 and dra7, but not for am335x.
      Let's set them for all the SoCs as the tptc module should behave the
      same for all of them. It's likely that am335x was never tested to idle
      EDMA tptc.
      
      Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      25bfaaa7
  2. 03 Mar, 2020 2 commits
  3. 26 Feb, 2020 10 commits
    • Tony Lindgren's avatar
      bus: ti-sysc: Implement display subsystem reset quirk · 7324a7a0
      Tony Lindgren authored
      The display subsystem (DSS) needs the child outputs disabled for reset.
      In order to prepare to probe DSS without legacy platform data, let's
      implement sysc_pre_reset_quirk_dss() similar to what we have for the
      platform data with omap_dss_reset().
      
      Note that we cannot directly use the old omap_dss_reset() without
      platform data callbacks and updating omap_dss_reset() to understand
      struct device. And we will be dropping omap_dss_reset() anyways when
      all the SoCs are probing with device tree, so let's not mess with the
      legacy code at all.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      7324a7a0
    • Tony Lindgren's avatar
      bus: ti-sysc: Detect display subsystem related devices · 77dfece2
      Tony Lindgren authored
      In order to prepare probing display subsystem (DSS) with ti-sysc
      interconnect target module driver and device tree data, let's
      detect DSS related modules.
      
      We need to also add reset quirk handling for DSS, but until that's
      done, let's just enable the optional clock quirks for DSS and
      omap4 HDMI. The rest is just naming of modules if CONFIG_DEBUG
      is set.
      
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      77dfece2
    • Tony Lindgren's avatar
      bus: ti-sysc: Handle module unlock quirk needed for some RTC · e8639e1c
      Tony Lindgren authored
      The RTC modules on am3 and am4 need quirk handling to unlock and lock
      them for reset so let's add the quirk handling based on what we already
      have for legacy platform data. In later patches we will simply drop the
      RTC related platform data and the old quirk handling.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      e8639e1c
    • Tony Lindgren's avatar
      bus: ti-sysc: Implement SoC revision handling · feaa8bae
      Tony Lindgren authored
      We need to know SoC type and features for cases where the same SoC
      may be installed in various versions on the same board and would need
      a separate dts file otherwise for the different variants.
      
      For example, am3703 is pin compatible with omap3630, but has sgx and
      iva accelerators disabled. We must not try to access the sgx or iva
      module registers on am3703, and need to set the unavailable devices
      disabled early.
      
      Let's also detect omap3430 as that is needed for display subsystem
      (DSS) reset later on, and GP vs EMU or HS devices. Further SoC
      specific disabled device detection can be added as needed, such as
      dra71x vs dra76x rtc and usb4.
      
      Cc: Adam Ford <aford173@gmail.com>
      Cc: André Hentschel <nerv@dawncrow.de>
      Cc: H. Nikolaus Schaller <hns@goldelico.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      feaa8bae
    • Tony Lindgren's avatar
      bus: ti-sysc: Don't warn about legacy property for nested ti-sysc devices · 7320fd32
      Tony Lindgren authored
      In some cases we can have nested ti-sysc instances that may still use the
      legacy "ti,hwmods" property. Let's not warn if that's the case.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      7320fd32
    • Tony Lindgren's avatar
      bus: ti-sysc: Consider non-existing registers too when matching quirks · 590e15c7
      Tony Lindgren authored
      We are currently setting -1 for non-existing sysconfig related registers
      for quirks, but setting -ENODEV elsewhere. And for matching the quirks,
      we're now just ignoring the non-existing registers. This will cause issues
      with misdetecting DSS registers as the hardware revision numbers can have
      duplicates.
      
      To avoid this, let's standardize on using -ENODEV also for the quirks
      instead of -1. That way we can always just test for a match without adding
      any more complicated logic.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      590e15c7
    • Tony Lindgren's avatar
      bus: ti-sysc: Improve reset to work with modules with no sysconfig · ab4d309d
      Tony Lindgren authored
      At least display susbsystem (DSS) has modules with no sysconfig registers
      and rely on custom function for module reset handling. Let's make reset
      work with that too.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      ab4d309d
    • Tony Lindgren's avatar
      bus: ti-sysc: Rename clk related quirks to pre_reset and post_reset quirks · e64c021f
      Tony Lindgren authored
      The clk_disable_quirk and clk_enable_quirk should really be called
      pre_reset_quirk and post_reset_quirk to avoid confusion like we had
      with hdq1w reset.
      
      Let's also rename the related functions so the code is easier to follow.
      Note that we also have reset_done_quirk that is needed in some cases
      after checking the separate register for reset done bit.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      e64c021f
    • Tony Lindgren's avatar
      bus: ti-sysc: Fix 1-wire reset quirk · aec551c7
      Tony Lindgren authored
      Because of the i2c quirk we have the reset quirks named in a confusing
      way. Let's fix the 1-wire quirk accordinlyg. Then let's switch to using
      better naming later on.
      
      Fixes: 4e23be47 ("bus: ti-sysc: Add support for module specific reset quirks")
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      aec551c7
    • Tony Lindgren's avatar
      drm/omap: Prepare DSS for probing without legacy platform data · cef76630
      Tony Lindgren authored
      In order to probe display subsystem (DSS) components with ti-sysc
      interconnect target module without legacy platform data and using
      devicetree, we need to update dss probing a bit.
      
      In the device tree, we will be defining the data also for the interconnect
      target modules as DSS really is a private interconnect. There is some
      information about that in 4460 TRM in "Figure 10-3. DSS Integration" for
      example where it mentions "32-bit interconnect (SLX)".
      
      The changes we need to make are:
      
      1. Parse also device tree subnodes for the compatible property fixup
      
      2. Update the component code to consider device tree subnodes
      
      Cc: dri-devel@lists.freedesktop.org
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
      Reviewed-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      cef76630
  4. 10 Feb, 2020 2 commits
    • Linus Torvalds's avatar
      Linux 5.6-rc1 · bb6d3fb3
      Linus Torvalds authored
      bb6d3fb3
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 89a47dd1
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - fix randconfig to generate a sane .config
      
       - rename hostprogs-y / always to hostprogs / always-y, which are more
         natual syntax.
      
       - optimize scripts/kallsyms
      
       - fix yes2modconfig and mod2yesconfig
      
       - make multiple directory targets ('make foo/ bar/') work
      
      * tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kbuild: make multiple directory targets work
        kconfig: Invalidate all symbols after changing to y or m.
        kallsyms: fix type of kallsyms_token_table[]
        scripts/kallsyms: change table to store (strcut sym_entry *)
        scripts/kallsyms: rename local variables in read_symbol()
        kbuild: rename hostprogs-y/always to hostprogs/always-y
        kbuild: fix the document to use extra-y for vmlinux.lds
        kconfig: fix broken dependency in randconfig-generated .config
      89a47dd1