Home | History | Annotate | Line # | Download | only in clock
      1      1.1  jmcneill /*	$NetBSD: rk3288-cru.h,v 1.1.1.2 2020/01/03 14:33:05 skrll Exp $	*/
      2      1.1  jmcneill 
      3  1.1.1.2     skrll /* SPDX-License-Identifier: GPL-2.0-or-later */
      4      1.1  jmcneill /*
      5      1.1  jmcneill  * Copyright (c) 2014 MundoReader S.L.
      6      1.1  jmcneill  * Author: Heiko Stuebner <heiko (at) sntech.de>
      7      1.1  jmcneill  */
      8      1.1  jmcneill 
      9      1.1  jmcneill #ifndef _DT_BINDINGS_CLK_ROCKCHIP_RK3288_H
     10      1.1  jmcneill #define _DT_BINDINGS_CLK_ROCKCHIP_RK3288_H
     11      1.1  jmcneill 
     12      1.1  jmcneill /* core clocks */
     13      1.1  jmcneill #define PLL_APLL		1
     14      1.1  jmcneill #define PLL_DPLL		2
     15      1.1  jmcneill #define PLL_CPLL		3
     16      1.1  jmcneill #define PLL_GPLL		4
     17      1.1  jmcneill #define PLL_NPLL		5
     18      1.1  jmcneill #define ARMCLK			6
     19      1.1  jmcneill 
     20      1.1  jmcneill /* sclk gates (special clocks) */
     21      1.1  jmcneill #define SCLK_GPU		64
     22      1.1  jmcneill #define SCLK_SPI0		65
     23      1.1  jmcneill #define SCLK_SPI1		66
     24      1.1  jmcneill #define SCLK_SPI2		67
     25      1.1  jmcneill #define SCLK_SDMMC		68
     26      1.1  jmcneill #define SCLK_SDIO0		69
     27      1.1  jmcneill #define SCLK_SDIO1		70
     28      1.1  jmcneill #define SCLK_EMMC		71
     29      1.1  jmcneill #define SCLK_TSADC		72
     30      1.1  jmcneill #define SCLK_SARADC		73
     31      1.1  jmcneill #define SCLK_PS2C		74
     32      1.1  jmcneill #define SCLK_NANDC0		75
     33      1.1  jmcneill #define SCLK_NANDC1		76
     34      1.1  jmcneill #define SCLK_UART0		77
     35      1.1  jmcneill #define SCLK_UART1		78
     36      1.1  jmcneill #define SCLK_UART2		79
     37      1.1  jmcneill #define SCLK_UART3		80
     38      1.1  jmcneill #define SCLK_UART4		81
     39      1.1  jmcneill #define SCLK_I2S0		82
     40      1.1  jmcneill #define SCLK_SPDIF		83
     41      1.1  jmcneill #define SCLK_SPDIF8CH		84
     42      1.1  jmcneill #define SCLK_TIMER0		85
     43      1.1  jmcneill #define SCLK_TIMER1		86
     44      1.1  jmcneill #define SCLK_TIMER2		87
     45      1.1  jmcneill #define SCLK_TIMER3		88
     46      1.1  jmcneill #define SCLK_TIMER4		89
     47      1.1  jmcneill #define SCLK_TIMER5		90
     48      1.1  jmcneill #define SCLK_TIMER6		91
     49      1.1  jmcneill #define SCLK_HSADC		92
     50      1.1  jmcneill #define SCLK_OTGPHY0		93
     51      1.1  jmcneill #define SCLK_OTGPHY1		94
     52      1.1  jmcneill #define SCLK_OTGPHY2		95
     53      1.1  jmcneill #define SCLK_OTG_ADP		96
     54      1.1  jmcneill #define SCLK_HSICPHY480M	97
     55      1.1  jmcneill #define SCLK_HSICPHY12M		98
     56      1.1  jmcneill #define SCLK_MACREF		99
     57      1.1  jmcneill #define SCLK_LCDC_PWM0		100
     58      1.1  jmcneill #define SCLK_LCDC_PWM1		101
     59      1.1  jmcneill #define SCLK_MAC_RX		102
     60      1.1  jmcneill #define SCLK_MAC_TX		103
     61      1.1  jmcneill #define SCLK_EDP_24M		104
     62      1.1  jmcneill #define SCLK_EDP		105
     63      1.1  jmcneill #define SCLK_RGA		106
     64      1.1  jmcneill #define SCLK_ISP		107
     65      1.1  jmcneill #define SCLK_ISP_JPE		108
     66      1.1  jmcneill #define SCLK_HDMI_HDCP		109
     67      1.1  jmcneill #define SCLK_HDMI_CEC		110
     68      1.1  jmcneill #define SCLK_HEVC_CABAC		111
     69      1.1  jmcneill #define SCLK_HEVC_CORE		112
     70      1.1  jmcneill #define SCLK_I2S0_OUT		113
     71      1.1  jmcneill #define SCLK_SDMMC_DRV		114
     72      1.1  jmcneill #define SCLK_SDIO0_DRV		115
     73      1.1  jmcneill #define SCLK_SDIO1_DRV		116
     74      1.1  jmcneill #define SCLK_EMMC_DRV		117
     75      1.1  jmcneill #define SCLK_SDMMC_SAMPLE	118
     76      1.1  jmcneill #define SCLK_SDIO0_SAMPLE	119
     77      1.1  jmcneill #define SCLK_SDIO1_SAMPLE	120
     78      1.1  jmcneill #define SCLK_EMMC_SAMPLE	121
     79      1.1  jmcneill #define SCLK_USBPHY480M_SRC	122
     80      1.1  jmcneill #define SCLK_PVTM_CORE		123
     81      1.1  jmcneill #define SCLK_PVTM_GPU		124
     82      1.1  jmcneill #define SCLK_CRYPTO		125
     83      1.1  jmcneill #define SCLK_MIPIDSI_24M	126
     84      1.1  jmcneill #define SCLK_VIP_OUT		127
     85      1.1  jmcneill 
     86      1.1  jmcneill #define SCLK_MAC		151
     87      1.1  jmcneill #define SCLK_MACREF_OUT		152
     88      1.1  jmcneill 
     89      1.1  jmcneill #define DCLK_VOP0		190
     90      1.1  jmcneill #define DCLK_VOP1		191
     91      1.1  jmcneill 
     92      1.1  jmcneill /* aclk gates */
     93      1.1  jmcneill #define ACLK_GPU		192
     94      1.1  jmcneill #define ACLK_DMAC1		193
     95      1.1  jmcneill #define ACLK_DMAC2		194
     96      1.1  jmcneill #define ACLK_MMU		195
     97      1.1  jmcneill #define ACLK_GMAC		196
     98      1.1  jmcneill #define ACLK_VOP0		197
     99      1.1  jmcneill #define ACLK_VOP1		198
    100      1.1  jmcneill #define ACLK_CRYPTO		199
    101      1.1  jmcneill #define ACLK_RGA		200
    102      1.1  jmcneill #define ACLK_RGA_NIU		201
    103      1.1  jmcneill #define ACLK_IEP		202
    104      1.1  jmcneill #define ACLK_VIO0_NIU		203
    105      1.1  jmcneill #define ACLK_VIP		204
    106      1.1  jmcneill #define ACLK_ISP		205
    107      1.1  jmcneill #define ACLK_VIO1_NIU		206
    108      1.1  jmcneill #define ACLK_HEVC		207
    109      1.1  jmcneill #define ACLK_VCODEC		208
    110      1.1  jmcneill #define ACLK_CPU		209
    111      1.1  jmcneill #define ACLK_PERI		210
    112      1.1  jmcneill 
    113      1.1  jmcneill /* pclk gates */
    114      1.1  jmcneill #define PCLK_GPIO0		320
    115      1.1  jmcneill #define PCLK_GPIO1		321
    116      1.1  jmcneill #define PCLK_GPIO2		322
    117      1.1  jmcneill #define PCLK_GPIO3		323
    118      1.1  jmcneill #define PCLK_GPIO4		324
    119      1.1  jmcneill #define PCLK_GPIO5		325
    120      1.1  jmcneill #define PCLK_GPIO6		326
    121      1.1  jmcneill #define PCLK_GPIO7		327
    122      1.1  jmcneill #define PCLK_GPIO8		328
    123      1.1  jmcneill #define PCLK_GRF		329
    124      1.1  jmcneill #define PCLK_SGRF		330
    125      1.1  jmcneill #define PCLK_PMU		331
    126      1.1  jmcneill #define PCLK_I2C0		332
    127      1.1  jmcneill #define PCLK_I2C1		333
    128      1.1  jmcneill #define PCLK_I2C2		334
    129      1.1  jmcneill #define PCLK_I2C3		335
    130      1.1  jmcneill #define PCLK_I2C4		336
    131      1.1  jmcneill #define PCLK_I2C5		337
    132      1.1  jmcneill #define PCLK_SPI0		338
    133      1.1  jmcneill #define PCLK_SPI1		339
    134      1.1  jmcneill #define PCLK_SPI2		340
    135      1.1  jmcneill #define PCLK_UART0		341
    136      1.1  jmcneill #define PCLK_UART1		342
    137      1.1  jmcneill #define PCLK_UART2		343
    138      1.1  jmcneill #define PCLK_UART3		344
    139      1.1  jmcneill #define PCLK_UART4		345
    140      1.1  jmcneill #define PCLK_TSADC		346
    141      1.1  jmcneill #define PCLK_SARADC		347
    142      1.1  jmcneill #define PCLK_SIM		348
    143      1.1  jmcneill #define PCLK_GMAC		349
    144      1.1  jmcneill #define PCLK_PWM		350
    145      1.1  jmcneill #define PCLK_RKPWM		351
    146      1.1  jmcneill #define PCLK_PS2C		352
    147      1.1  jmcneill #define PCLK_TIMER		353
    148      1.1  jmcneill #define PCLK_TZPC		354
    149      1.1  jmcneill #define PCLK_EDP_CTRL		355
    150      1.1  jmcneill #define PCLK_MIPI_DSI0		356
    151      1.1  jmcneill #define PCLK_MIPI_DSI1		357
    152      1.1  jmcneill #define PCLK_MIPI_CSI		358
    153      1.1  jmcneill #define PCLK_LVDS_PHY		359
    154      1.1  jmcneill #define PCLK_HDMI_CTRL		360
    155      1.1  jmcneill #define PCLK_VIO2_H2P		361
    156      1.1  jmcneill #define PCLK_CPU		362
    157      1.1  jmcneill #define PCLK_PERI		363
    158      1.1  jmcneill #define PCLK_DDRUPCTL0		364
    159      1.1  jmcneill #define PCLK_PUBL0		365
    160      1.1  jmcneill #define PCLK_DDRUPCTL1		366
    161      1.1  jmcneill #define PCLK_PUBL1		367
    162      1.1  jmcneill #define PCLK_WDT		368
    163      1.1  jmcneill #define PCLK_EFUSE256		369
    164      1.1  jmcneill #define PCLK_EFUSE1024		370
    165      1.1  jmcneill #define PCLK_ISP_IN		371
    166      1.1  jmcneill 
    167      1.1  jmcneill /* hclk gates */
    168      1.1  jmcneill #define HCLK_GPS		448
    169      1.1  jmcneill #define HCLK_OTG0		449
    170      1.1  jmcneill #define HCLK_USBHOST0		450
    171      1.1  jmcneill #define HCLK_USBHOST1		451
    172      1.1  jmcneill #define HCLK_HSIC		452
    173      1.1  jmcneill #define HCLK_NANDC0		453
    174      1.1  jmcneill #define HCLK_NANDC1		454
    175      1.1  jmcneill #define HCLK_TSP		455
    176      1.1  jmcneill #define HCLK_SDMMC		456
    177      1.1  jmcneill #define HCLK_SDIO0		457
    178      1.1  jmcneill #define HCLK_SDIO1		458
    179      1.1  jmcneill #define HCLK_EMMC		459
    180      1.1  jmcneill #define HCLK_HSADC		460
    181      1.1  jmcneill #define HCLK_CRYPTO		461
    182      1.1  jmcneill #define HCLK_I2S0		462
    183      1.1  jmcneill #define HCLK_SPDIF		463
    184      1.1  jmcneill #define HCLK_SPDIF8CH		464
    185      1.1  jmcneill #define HCLK_VOP0		465
    186      1.1  jmcneill #define HCLK_VOP1		466
    187      1.1  jmcneill #define HCLK_ROM		467
    188      1.1  jmcneill #define HCLK_IEP		468
    189      1.1  jmcneill #define HCLK_ISP		469
    190      1.1  jmcneill #define HCLK_RGA		470
    191      1.1  jmcneill #define HCLK_VIO_AHB_ARBI	471
    192      1.1  jmcneill #define HCLK_VIO_NIU		472
    193      1.1  jmcneill #define HCLK_VIP		473
    194      1.1  jmcneill #define HCLK_VIO2_H2P		474
    195      1.1  jmcneill #define HCLK_HEVC		475
    196      1.1  jmcneill #define HCLK_VCODEC		476
    197      1.1  jmcneill #define HCLK_CPU		477
    198      1.1  jmcneill #define HCLK_PERI		478
    199      1.1  jmcneill 
    200      1.1  jmcneill #define CLK_NR_CLKS		(HCLK_PERI + 1)
    201      1.1  jmcneill 
    202      1.1  jmcneill /* soft-reset indices */
    203      1.1  jmcneill #define SRST_CORE0		0
    204      1.1  jmcneill #define SRST_CORE1		1
    205      1.1  jmcneill #define SRST_CORE2		2
    206      1.1  jmcneill #define SRST_CORE3		3
    207      1.1  jmcneill #define SRST_CORE0_PO		4
    208      1.1  jmcneill #define SRST_CORE1_PO		5
    209      1.1  jmcneill #define SRST_CORE2_PO		6
    210      1.1  jmcneill #define SRST_CORE3_PO		7
    211      1.1  jmcneill #define SRST_PDCORE_STRSYS	8
    212      1.1  jmcneill #define SRST_PDBUS_STRSYS	9
    213      1.1  jmcneill #define SRST_L2C		10
    214      1.1  jmcneill #define SRST_TOPDBG		11
    215      1.1  jmcneill #define SRST_CORE0_DBG		12
    216      1.1  jmcneill #define SRST_CORE1_DBG		13
    217      1.1  jmcneill #define SRST_CORE2_DBG		14
    218      1.1  jmcneill #define SRST_CORE3_DBG		15
    219      1.1  jmcneill 
    220      1.1  jmcneill #define SRST_PDBUG_AHB_ARBITOR	16
    221      1.1  jmcneill #define SRST_EFUSE256		17
    222      1.1  jmcneill #define SRST_DMAC1		18
    223      1.1  jmcneill #define SRST_INTMEM		19
    224      1.1  jmcneill #define SRST_ROM		20
    225      1.1  jmcneill #define SRST_SPDIF8CH		21
    226      1.1  jmcneill #define SRST_TIMER		22
    227      1.1  jmcneill #define SRST_I2S0		23
    228      1.1  jmcneill #define SRST_SPDIF		24
    229      1.1  jmcneill #define SRST_TIMER0		25
    230      1.1  jmcneill #define SRST_TIMER1		26
    231      1.1  jmcneill #define SRST_TIMER2		27
    232      1.1  jmcneill #define SRST_TIMER3		28
    233      1.1  jmcneill #define SRST_TIMER4		29
    234      1.1  jmcneill #define SRST_TIMER5		30
    235      1.1  jmcneill #define SRST_EFUSE		31
    236      1.1  jmcneill 
    237      1.1  jmcneill #define SRST_GPIO0		32
    238      1.1  jmcneill #define SRST_GPIO1		33
    239      1.1  jmcneill #define SRST_GPIO2		34
    240      1.1  jmcneill #define SRST_GPIO3		35
    241      1.1  jmcneill #define SRST_GPIO4		36
    242      1.1  jmcneill #define SRST_GPIO5		37
    243      1.1  jmcneill #define SRST_GPIO6		38
    244      1.1  jmcneill #define SRST_GPIO7		39
    245      1.1  jmcneill #define SRST_GPIO8		40
    246      1.1  jmcneill #define SRST_I2C0		42
    247      1.1  jmcneill #define SRST_I2C1		43
    248      1.1  jmcneill #define SRST_I2C2		44
    249      1.1  jmcneill #define SRST_I2C3		45
    250      1.1  jmcneill #define SRST_I2C4		46
    251      1.1  jmcneill #define SRST_I2C5		47
    252      1.1  jmcneill 
    253      1.1  jmcneill #define SRST_DWPWM		48
    254      1.1  jmcneill #define SRST_MMC_PERI		49
    255      1.1  jmcneill #define SRST_PERIPH_MMU		50
    256      1.1  jmcneill #define SRST_DAP		51
    257      1.1  jmcneill #define SRST_DAP_SYS		52
    258      1.1  jmcneill #define SRST_TPIU		53
    259      1.1  jmcneill #define SRST_PMU_APB		54
    260      1.1  jmcneill #define SRST_GRF		55
    261      1.1  jmcneill #define SRST_PMU		56
    262      1.1  jmcneill #define SRST_PERIPH_AXI		57
    263      1.1  jmcneill #define SRST_PERIPH_AHB		58
    264      1.1  jmcneill #define SRST_PERIPH_APB		59
    265      1.1  jmcneill #define SRST_PERIPH_NIU		60
    266      1.1  jmcneill #define SRST_PDPERI_AHB_ARBI	61
    267      1.1  jmcneill #define SRST_EMEM		62
    268      1.1  jmcneill #define SRST_USB_PERI		63
    269      1.1  jmcneill 
    270      1.1  jmcneill #define SRST_DMAC2		64
    271      1.1  jmcneill #define SRST_MAC		66
    272      1.1  jmcneill #define SRST_GPS		67
    273      1.1  jmcneill #define SRST_RKPWM		69
    274      1.1  jmcneill #define SRST_CCP		71
    275      1.1  jmcneill #define SRST_USBHOST0		72
    276      1.1  jmcneill #define SRST_HSIC		73
    277      1.1  jmcneill #define SRST_HSIC_AUX		74
    278      1.1  jmcneill #define SRST_HSIC_PHY		75
    279      1.1  jmcneill #define SRST_HSADC		76
    280      1.1  jmcneill #define SRST_NANDC0		77
    281      1.1  jmcneill #define SRST_NANDC1		78
    282      1.1  jmcneill 
    283      1.1  jmcneill #define SRST_TZPC		80
    284      1.1  jmcneill #define SRST_SPI0		83
    285      1.1  jmcneill #define SRST_SPI1		84
    286      1.1  jmcneill #define SRST_SPI2		85
    287      1.1  jmcneill #define SRST_SARADC		87
    288      1.1  jmcneill #define SRST_PDALIVE_NIU	88
    289      1.1  jmcneill #define SRST_PDPMU_INTMEM	89
    290      1.1  jmcneill #define SRST_PDPMU_NIU		90
    291      1.1  jmcneill #define SRST_SGRF		91
    292      1.1  jmcneill 
    293      1.1  jmcneill #define SRST_VIO_ARBI		96
    294      1.1  jmcneill #define SRST_RGA_NIU		97
    295      1.1  jmcneill #define SRST_VIO0_NIU_AXI	98
    296      1.1  jmcneill #define SRST_VIO_NIU_AHB	99
    297      1.1  jmcneill #define SRST_LCDC0_AXI		100
    298      1.1  jmcneill #define SRST_LCDC0_AHB		101
    299      1.1  jmcneill #define SRST_LCDC0_DCLK		102
    300      1.1  jmcneill #define SRST_VIO1_NIU_AXI	103
    301      1.1  jmcneill #define SRST_VIP		104
    302      1.1  jmcneill #define SRST_RGA_CORE		105
    303      1.1  jmcneill #define SRST_IEP_AXI		106
    304      1.1  jmcneill #define SRST_IEP_AHB		107
    305      1.1  jmcneill #define SRST_RGA_AXI		108
    306      1.1  jmcneill #define SRST_RGA_AHB		109
    307      1.1  jmcneill #define SRST_ISP		110
    308      1.1  jmcneill #define SRST_EDP		111
    309      1.1  jmcneill 
    310      1.1  jmcneill #define SRST_VCODEC_AXI		112
    311      1.1  jmcneill #define SRST_VCODEC_AHB		113
    312      1.1  jmcneill #define SRST_VIO_H2P		114
    313      1.1  jmcneill #define SRST_MIPIDSI0		115
    314      1.1  jmcneill #define SRST_MIPIDSI1		116
    315      1.1  jmcneill #define SRST_MIPICSI		117
    316      1.1  jmcneill #define SRST_LVDS_PHY		118
    317      1.1  jmcneill #define SRST_LVDS_CON		119
    318      1.1  jmcneill #define SRST_GPU		120
    319      1.1  jmcneill #define SRST_HDMI		121
    320      1.1  jmcneill #define SRST_CORE_PVTM		124
    321      1.1  jmcneill #define SRST_GPU_PVTM		125
    322      1.1  jmcneill 
    323      1.1  jmcneill #define SRST_MMC0		128
    324      1.1  jmcneill #define SRST_SDIO0		129
    325      1.1  jmcneill #define SRST_SDIO1		130
    326      1.1  jmcneill #define SRST_EMMC		131
    327      1.1  jmcneill #define SRST_USBOTG_AHB		132
    328      1.1  jmcneill #define SRST_USBOTG_PHY		133
    329      1.1  jmcneill #define SRST_USBOTG_CON		134
    330      1.1  jmcneill #define SRST_USBHOST0_AHB	135
    331      1.1  jmcneill #define SRST_USBHOST0_PHY	136
    332      1.1  jmcneill #define SRST_USBHOST0_CON	137
    333      1.1  jmcneill #define SRST_USBHOST1_AHB	138
    334      1.1  jmcneill #define SRST_USBHOST1_PHY	139
    335      1.1  jmcneill #define SRST_USBHOST1_CON	140
    336      1.1  jmcneill #define SRST_USB_ADP		141
    337      1.1  jmcneill #define SRST_ACC_EFUSE		142
    338      1.1  jmcneill 
    339      1.1  jmcneill #define SRST_CORESIGHT		144
    340      1.1  jmcneill #define SRST_PD_CORE_AHB_NOC	145
    341      1.1  jmcneill #define SRST_PD_CORE_APB_NOC	146
    342      1.1  jmcneill #define SRST_PD_CORE_MP_AXI	147
    343      1.1  jmcneill #define SRST_GIC		148
    344      1.1  jmcneill #define SRST_LCDC_PWM0		149
    345      1.1  jmcneill #define SRST_LCDC_PWM1		150
    346      1.1  jmcneill #define SRST_VIO0_H2P_BRG	151
    347      1.1  jmcneill #define SRST_VIO1_H2P_BRG	152
    348      1.1  jmcneill #define SRST_RGA_H2P_BRG	153
    349      1.1  jmcneill #define SRST_HEVC		154
    350      1.1  jmcneill #define SRST_TSADC		159
    351      1.1  jmcneill 
    352      1.1  jmcneill #define SRST_DDRPHY0		160
    353      1.1  jmcneill #define SRST_DDRPHY0_APB	161
    354      1.1  jmcneill #define SRST_DDRCTRL0		162
    355      1.1  jmcneill #define SRST_DDRCTRL0_APB	163
    356      1.1  jmcneill #define SRST_DDRPHY0_CTRL	164
    357      1.1  jmcneill #define SRST_DDRPHY1		165
    358      1.1  jmcneill #define SRST_DDRPHY1_APB	166
    359      1.1  jmcneill #define SRST_DDRCTRL1		167
    360      1.1  jmcneill #define SRST_DDRCTRL1_APB	168
    361      1.1  jmcneill #define SRST_DDRPHY1_CTRL	169
    362      1.1  jmcneill #define SRST_DDRMSCH0		170
    363      1.1  jmcneill #define SRST_DDRMSCH1		171
    364      1.1  jmcneill #define SRST_CRYPTO		174
    365      1.1  jmcneill #define SRST_C2C_HOST		175
    366      1.1  jmcneill 
    367      1.1  jmcneill #define SRST_LCDC1_AXI		176
    368      1.1  jmcneill #define SRST_LCDC1_AHB		177
    369      1.1  jmcneill #define SRST_LCDC1_DCLK		178
    370      1.1  jmcneill #define SRST_UART0		179
    371      1.1  jmcneill #define SRST_UART1		180
    372      1.1  jmcneill #define SRST_UART2		181
    373      1.1  jmcneill #define SRST_UART3		182
    374      1.1  jmcneill #define SRST_UART4		183
    375      1.1  jmcneill #define SRST_SIMC		186
    376      1.1  jmcneill #define SRST_PS2C		187
    377      1.1  jmcneill #define SRST_TSP		188
    378      1.1  jmcneill #define SRST_TSP_CLKIN0		189
    379      1.1  jmcneill #define SRST_TSP_CLKIN1		190
    380      1.1  jmcneill #define SRST_TSP_27M		191
    381      1.1  jmcneill 
    382      1.1  jmcneill #endif
    383