44 lines
1.1 KiB
Diff
44 lines
1.1 KiB
Diff
|
From 69b21096e25889d7db7cfc159202ef0a16530e6b Mon Sep 17 00:00:00 2001
|
||
|
From: Florian Fainelli <florian@openwrt.org>
|
||
|
Date: Wed, 25 Jan 2012 17:39:54 +0100
|
||
|
Subject: [PATCH 15/63] MIPS: BCM63XX: add support for "ipsec" clock
|
||
|
|
||
|
This module is only available on BCM6368 so far and does not require
|
||
|
resetting the block.
|
||
|
|
||
|
Signed-off-by: Florian Fainelli <florian@openwrt.org>
|
||
|
---
|
||
|
arch/mips/bcm63xx/clk.c | 14 ++++++++++++++
|
||
|
1 files changed, 14 insertions(+), 0 deletions(-)
|
||
|
|
||
|
--- a/arch/mips/bcm63xx/clk.c
|
||
|
+++ b/arch/mips/bcm63xx/clk.c
|
||
|
@@ -224,6 +224,18 @@ static struct clk clk_xtm = {
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
+ * IPsec clock
|
||
|
+ */
|
||
|
+static void ipsec_set(struct clk *clk, int enable)
|
||
|
+{
|
||
|
+ bcm_hwclock_set(CKCTL_6368_IPSEC_EN, enable);
|
||
|
+}
|
||
|
+
|
||
|
+static struct clk clk_ipsec = {
|
||
|
+ .set = ipsec_set,
|
||
|
+};
|
||
|
+
|
||
|
+/*
|
||
|
* Internal peripheral clock
|
||
|
*/
|
||
|
static struct clk clk_periph = {
|
||
|
@@ -280,6 +292,8 @@ struct clk *clk_get(struct device *dev,
|
||
|
return &clk_periph;
|
||
|
if (BCMCPU_IS_6358() && !strcmp(id, "pcm"))
|
||
|
return &clk_pcm;
|
||
|
+ if (BCMCPU_IS_6368() && !strcmp(id, "ipsec"))
|
||
|
+ return &clk_ipsec;
|
||
|
return ERR_PTR(-ENOENT);
|
||
|
}
|
||
|
|