root/arch/arm/mach-omap2/omap_hwmod_common_data.c

/* [<][>][^][v][top][bottom][index][help] */
   1 // SPDX-License-Identifier: GPL-2.0-only
   2 /*
   3  * omap_hwmod common data structures
   4  *
   5  * Copyright (C) 2010 Texas Instruments, Inc.
   6  * Thara Gopinath <thara@ti.com>
   7  * BenoƮt Cousson
   8  *
   9  * Copyright (C) 2010 Nokia Corporation
  10  * Paul Walmsley
  11  *
  12  * This data/structures are to be used while defining OMAP on-chip module
  13  * data and their integration with other OMAP modules and Linux.
  14  */
  15 
  16 #include <linux/types.h>
  17 #include <linux/platform_data/ti-sysc.h>
  18 
  19 #include "omap_hwmod.h"
  20 
  21 #include "omap_hwmod_common_data.h"
  22 
  23 /**
  24  * struct omap_hwmod_sysc_type1 - TYPE1 sysconfig scheme.
  25  *
  26  * To be used by hwmod structure to specify the sysconfig offsets
  27  * if the device ip is compliant with the original PRCM protocol
  28  * defined for OMAP2420.
  29  */
  30 struct sysc_regbits omap_hwmod_sysc_type1 = {
  31         .midle_shift    = SYSC_TYPE1_MIDLEMODE_SHIFT,
  32         .clkact_shift   = SYSC_TYPE1_CLOCKACTIVITY_SHIFT,
  33         .sidle_shift    = SYSC_TYPE1_SIDLEMODE_SHIFT,
  34         .enwkup_shift   = SYSC_TYPE1_ENAWAKEUP_SHIFT,
  35         .srst_shift     = SYSC_TYPE1_SOFTRESET_SHIFT,
  36         .autoidle_shift = SYSC_TYPE1_AUTOIDLE_SHIFT,
  37 };
  38 
  39 /**
  40  * struct omap_hwmod_sysc_type2 - TYPE2 sysconfig scheme.
  41  *
  42  * To be used by hwmod structure to specify the sysconfig offsets if the
  43  * device ip is compliant with the new PRCM protocol defined for new
  44  * OMAP4 IPs.
  45  */
  46 struct sysc_regbits omap_hwmod_sysc_type2 = {
  47         .midle_shift    = SYSC_TYPE2_MIDLEMODE_SHIFT,
  48         .sidle_shift    = SYSC_TYPE2_SIDLEMODE_SHIFT,
  49         .srst_shift     = SYSC_TYPE2_SOFTRESET_SHIFT,
  50         .dmadisable_shift = SYSC_TYPE2_DMADISABLE_SHIFT,
  51 };
  52 
  53 /**
  54  * struct omap_hwmod_sysc_type3 - TYPE3 sysconfig scheme.
  55  * Used by some IPs on AM33xx
  56  */
  57 struct sysc_regbits omap_hwmod_sysc_type3 = {
  58         .midle_shift    = SYSC_TYPE3_MIDLEMODE_SHIFT,
  59         .sidle_shift    = SYSC_TYPE3_SIDLEMODE_SHIFT,
  60 };
  61 
  62 struct omap_dss_dispc_dev_attr omap2_3_dss_dispc_dev_attr = {
  63         .manager_count          = 2,
  64         .has_framedonetv_irq    = 0
  65 };
  66 
  67 struct sysc_regbits omap34xx_sr_sysc_fields = {
  68         .clkact_shift   = 20,
  69 };
  70 
  71 struct sysc_regbits omap36xx_sr_sysc_fields = {
  72         .sidle_shift    = 24,
  73         .enwkup_shift   = 26,
  74 };
  75 
  76 struct sysc_regbits omap3_sham_sysc_fields = {
  77         .sidle_shift    = 4,
  78         .srst_shift     = 1,
  79         .autoidle_shift = 0,
  80 };
  81 
  82 struct sysc_regbits omap3xxx_aes_sysc_fields = {
  83         .sidle_shift    = 6,
  84         .srst_shift     = 1,
  85         .autoidle_shift = 0,
  86 };
  87 
  88 struct sysc_regbits omap_hwmod_sysc_type_mcasp = {
  89         .sidle_shift    = 0,
  90 };
  91 
  92 struct sysc_regbits omap_hwmod_sysc_type_usb_host_fs = {
  93         .midle_shift    = 4,
  94         .sidle_shift    = 2,
  95         .srst_shift     = 1,
  96 };

/* [<][>][^][v][top][bottom][index][help] */