60 lines
1.8 KiB
C
60 lines
1.8 KiB
C
/*
|
|
* Copyright (C) 2009 Apple Inc. All rights reserved.
|
|
*
|
|
* This document is the property of Apple Inc.
|
|
* It is considered confidential and proprietary.
|
|
*
|
|
* This document may not be reproduced or transmitted in any form,
|
|
* in whole or in part, without the express written permission of
|
|
* Apple Inc.
|
|
*/
|
|
|
|
#ifndef __APPLE_SHA2_H
|
|
#define __APPLE_SHA2_H
|
|
|
|
#include <platform/soc/hwregbase.h>
|
|
|
|
#define rSHA2_VERSION (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x04))
|
|
#define rSHA2_CONFIG (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x08))
|
|
|
|
#define SHA2_PIO_MODE (0 << 0)
|
|
#define SHA2_DMA_MODE (1 << 0)
|
|
#define SHA2_CONFIG_TYPE(_t) (((_t) & 0x7) << 4)
|
|
|
|
#define SHA_TYPE_160 (1)
|
|
#define SHA_TYPE_224 (2)
|
|
#define SHA_TYPE_256 (3)
|
|
#define SHA_TYPE_384 (4)
|
|
#define SHA_TYPE_512 (5)
|
|
|
|
#define rSHA2_MSGCTL (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x0C))
|
|
|
|
#define SHA2_MSGCTL_RDY (1 << 0)
|
|
#define SHA2_MSGCTL_FIRST (1 << 1)
|
|
#define SHA2_MSGCTL_LAST (1 << 2)
|
|
|
|
#define rSHA2_STATUS (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x10))
|
|
|
|
#define SHA2_HASH_BUSY (1 << 0)
|
|
|
|
#define rSHA2_IRQ (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x14))
|
|
|
|
#define SHA2_IRQ_DONE (1 << 0)
|
|
#define SHA2_IRQ_LAST (1 << 1)
|
|
|
|
#define rSHA2_IRQEN (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x18))
|
|
|
|
#define SHA2_IRQEN_DONE (1 << 0)
|
|
#define SHA2_IRQEN_LAST (1 << 1)
|
|
|
|
#define rSHA2_DMACTL (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x1C))
|
|
|
|
#define SHA2_DMACTL_START (1 << 0)
|
|
#define SHA2_DMACTL_BURSTSIZE(_s) (((_s) & 0x7) << 4)
|
|
|
|
#define rSHA2_DMATOP (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x20))
|
|
#define rSHA2_HASH(_h) (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x40 + ((_h) * 4)))
|
|
#define rSHA2_MSGBLK(_m) (*(volatile u_int32_t *)(SHA2_BASE_ADDR + 0x80 + ((_m) * 4)))
|
|
|
|
#endif /* ! __APPLE_SHA2_H */
|