ARM: sirf: drop Marco support in reset controller module
Marco will not be supported any more. It has been replaced by CSR Atlas7. Signed-off-by: Barry Song <Baohua.Song@csr.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
01ea63d993
commit
e664c3fffd
1 changed files with 12 additions and 29 deletions
|
@ -34,36 +34,20 @@ static int sirfsoc_reset_module(struct reset_controller_dev *rcdev,
|
||||||
|
|
||||||
mutex_lock(&rstc_lock);
|
mutex_lock(&rstc_lock);
|
||||||
|
|
||||||
if (of_device_is_compatible(rcdev->of_node, "sirf,prima2-rstc")) {
|
/*
|
||||||
/*
|
* Writing 1 to this bit resets corresponding block.
|
||||||
* Writing 1 to this bit resets corresponding block.
|
* Writing 0 to this bit de-asserts reset signal of the
|
||||||
* Writing 0 to this bit de-asserts reset signal of the
|
* corresponding block. datasheet doesn't require explicit
|
||||||
* corresponding block. datasheet doesn't require explicit
|
* delay between the set and clear of reset bit. it could
|
||||||
* delay between the set and clear of reset bit. it could
|
* be shorter if tests pass.
|
||||||
* be shorter if tests pass.
|
*/
|
||||||
*/
|
writel(readl(sirfsoc_rstc_base +
|
||||||
writel(readl(sirfsoc_rstc_base +
|
|
||||||
(reset_bit / 32) * 4) | (1 << reset_bit),
|
(reset_bit / 32) * 4) | (1 << reset_bit),
|
||||||
sirfsoc_rstc_base + (reset_bit / 32) * 4);
|
sirfsoc_rstc_base + (reset_bit / 32) * 4);
|
||||||
msleep(20);
|
msleep(20);
|
||||||
writel(readl(sirfsoc_rstc_base +
|
writel(readl(sirfsoc_rstc_base +
|
||||||
(reset_bit / 32) * 4) & ~(1 << reset_bit),
|
(reset_bit / 32) * 4) & ~(1 << reset_bit),
|
||||||
sirfsoc_rstc_base + (reset_bit / 32) * 4);
|
sirfsoc_rstc_base + (reset_bit / 32) * 4);
|
||||||
} else {
|
|
||||||
/*
|
|
||||||
* For MARCO and POLO
|
|
||||||
* Writing 1 to SET register resets corresponding block.
|
|
||||||
* Writing 1 to CLEAR register de-asserts reset signal of the
|
|
||||||
* corresponding block.
|
|
||||||
* datasheet doesn't require explicit delay between the set and
|
|
||||||
* clear of reset bit. it could be shorter if tests pass.
|
|
||||||
*/
|
|
||||||
writel(1 << reset_bit,
|
|
||||||
sirfsoc_rstc_base + (reset_bit / 32) * 8);
|
|
||||||
msleep(20);
|
|
||||||
writel(1 << reset_bit,
|
|
||||||
sirfsoc_rstc_base + (reset_bit / 32) * 8 + 4);
|
|
||||||
}
|
|
||||||
|
|
||||||
mutex_unlock(&rstc_lock);
|
mutex_unlock(&rstc_lock);
|
||||||
|
|
||||||
|
@ -106,7 +90,6 @@ static int sirfsoc_rstc_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
static const struct of_device_id rstc_ids[] = {
|
static const struct of_device_id rstc_ids[] = {
|
||||||
{ .compatible = "sirf,prima2-rstc" },
|
{ .compatible = "sirf,prima2-rstc" },
|
||||||
{ .compatible = "sirf,marco-rstc" },
|
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue