Commit | Line | Data |
---|---|---|
6c3324a9 VB |
1 | /* Altera TSE SGDMA and MSGDMA Linux driver |
2 | * Copyright (C) 2014 Altera Corporation. All rights reserved | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or modify it | |
5 | * under the terms and conditions of the GNU General Public License, | |
6 | * version 2, as published by the Free Software Foundation. | |
7 | * | |
8 | * This program is distributed in the hope it will be useful, but WITHOUT | |
9 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
10 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
11 | * more details. | |
12 | * | |
13 | * You should have received a copy of the GNU General Public License along with | |
14 | * this program. If not, see <http://www.gnu.org/licenses/>. | |
15 | */ | |
16 | ||
17 | #include "altera_tse.h" | |
18 | #include "altera_utils.h" | |
19 | ||
20 | void tse_set_bit(void __iomem *ioaddr, u32 bit_mask) | |
21 | { | |
22 | u32 value = ioread32(ioaddr); | |
23 | value |= bit_mask; | |
24 | iowrite32(value, ioaddr); | |
25 | } | |
26 | ||
27 | void tse_clear_bit(void __iomem *ioaddr, u32 bit_mask) | |
28 | { | |
29 | u32 value = ioread32(ioaddr); | |
30 | value &= ~bit_mask; | |
31 | iowrite32(value, ioaddr); | |
32 | } | |
33 | ||
34 | int tse_bit_is_set(void __iomem *ioaddr, u32 bit_mask) | |
35 | { | |
36 | u32 value = ioread32(ioaddr); | |
37 | return (value & bit_mask) ? 1 : 0; | |
38 | } | |
39 | ||
40 | int tse_bit_is_clear(void __iomem *ioaddr, u32 bit_mask) | |
41 | { | |
42 | u32 value = ioread32(ioaddr); | |
43 | return (value & bit_mask) ? 0 : 1; | |
44 | } |