Lines Matching +full:use +full:- +full:internal +full:- +full:clock
1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (C) 2009-2011 Nokia Corporation
6 * Copyright (C) 2011-2012 Texas Instruments, Inc.
13 * These headers and macros are used to define OMAP on-chip module
16 * omap_hwmod code, in arch/arm/mach-omap2/omap_hwmod.c (as of this
20 * - add interconnect error log structures
21 * - init_conn_id_bit (CONNID_BIT_VECTOR)
22 * - implement default hwmod SMS/SDRC flags?
23 * - move Linux-specific data ("non-ROM data") out
155 * struct omap_hwmod_rst_info - IPs reset lines use by hwmod
170 * struct omap_hwmod_opt_clk - optional clocks used by this hwmod
171 * @role: "sys", "32k", "tv", etc -- for use in clk_get()
172 * @clk: opt clock: OMAP clock name
175 * The module's interface clock and main functional clock should not
190 * struct omap_hwmod_omap2_firewall - OMAP2/3 device firewall data
204 * omap_hwmod_ocp_if.user bits: these indicate the initiators that use this
222 * struct omap_hwmod_ocp_if - OCP interface data
226 * @clk: interface clock: OMAP clock name
232 * @_int_flags: internal flags (see _OCPIF_INT_FLAGS* macros above)
256 /* Macros for use in struct omap_hwmod_sysconfig */
258 /* Flags for use in omap_hwmod_sysconfig.idlemodes */
290 * struct omap_hwmod_class_sysconfig - hwmod class OCP_SYS* data
301 * modules have separate clockdomains for the interface clock and main
302 * functional clock, and can check whether they should acknowledge the
303 * idle request based on the internal module functionality that has
326 * struct omap_hwmod_omap2_prcm - OMAP2/3-specific PRCM data
347 * module-level context loss register associated with them; this
352 * HWMOD_OMAP4_CLKFWK_CLKCTR_CLOCK: Module clockctrl clock is managed
353 * by the common clock framework and not hwmod.
360 * struct omap_hwmod_omap4_prcm - OMAP4-specific PRCM data
361 * @clkctrl_offs: offset of the PRCM clock control register
393 * of idle, rather than relying on module smart-idle
395 * out of standby, rather than relying on module smart-standby
396 * HWMOD_INIT_NO_RESET: don't reset this module at boot - important for
399 * HWMOD_INIT_NO_IDLE: don't idle this module at boot - important for SDRAM
406 * HWMOD_NO_IDLEST: this module does not have idle status - this is the case
413 * HWMOD_EXT_OPT_MAIN_CLK: The only main functional clock source for
414 * this IP block comes from an off-chip source and is not always
417 * be possible to query the clock framework for this information.
422 * this is really true -- we're probably not configuring something
424 * issues -- but we're currently suffering from a shortage of
427 * is kept in force-standby mode. Failing to do so causes PM problems
429 * to control MSTANDBY signal when MIDLEMODE is set to force-standby.
431 * out of idle, but rely on smart-idle to the put it back in idle,
433 * HWMOD_RECONFIG_IO_CHAIN: omap_hwmod code needs to reconfigure wake-up
465 * These are for internal use only and are managed by the omap_hwmod code.
469 * _HWMOD_SKIP_ENABLE: set if hwmod enabled during init (HWMOD_INIT_NO_IDLE) -
499 * struct omap_hwmod_class - the type of an IP block
511 * hwmod clocks are disabled, etc. It is intended for use for hwmods
520 * mach-omap2/omap_hwmod.c. This is needed for IP blocks which have
521 * unusual reset sequences - usually processor IP blocks like the IVA.
533 * struct omap_hwmod - integration data for OMAP hardware "modules" (IP blocks)
536 * @od: struct omap_device currently associated with this hwmod (internal use)
538 * @main_clk: main clock: OMAP clock name
543 * @_sysc_cache: internal-use hwmod flags
545 * @_mpu_rt_va: cached register target start address (internal use)
546 * @_mpu_port: cached MPU register target slave (internal use)
550 * @response_lat: device OCP response latency (in interface clock cycles)
551 * @_int_flags: internal-use hwmod flags
552 * @_state: internal-use hwmod state
553 * @_postsetup_state: internal-use state to leave the hwmod in after _setup()
556 * @node: list node for hwmod list (internal use)
559 * @main_clk refers to this module's "main clock," which for our
560 * purposes is defined as "the functional clock needed for register
561 * accesses to complete." Modules may not have a main clock if the
562 * interface clock also serves as a main clock.
663 * Chip variant-specific hwmod init routines - XXX should be converted
664 * to use initcalls once the initial boot ordering is straightened out