Linux Audio

Check our new training course

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