hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/drivers/soc/fsl/qe/ucc.c
....@@ -1,3 +1,4 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * arch/powerpc/sysdev/qe_lib/ucc.c
34 *
....@@ -7,11 +8,6 @@
78 *
89 * Authors: Shlomi Gridish <gridish@freescale.com>
910 * Li Yang <leoli@freescale.com>
10
- *
11
- * This program is free software; you can redistribute it and/or modify it
12
- * under the terms of the GNU General Public License as published by the
13
- * Free Software Foundation; either version 2 of the License, or (at your
14
- * option) any later version.
1511 */
1612 #include <linux/kernel.h>
1713 #include <linux/errno.h>
....@@ -19,7 +15,6 @@
1915 #include <linux/spinlock.h>
2016 #include <linux/export.h>
2117
22
-#include <asm/irq.h>
2318 #include <asm/io.h>
2419 #include <soc/fsl/qe/immap_qe.h>
2520 #include <soc/fsl/qe/qe.h>
....@@ -39,8 +34,8 @@
3934 return -EINVAL;
4035
4136 spin_lock_irqsave(&cmxgcr_lock, flags);
42
- clrsetbits_be32(&qe_immr->qmx.cmxgcr, QE_CMXGCR_MII_ENET_MNG,
43
- ucc_num << QE_CMXGCR_MII_ENET_MNG_SHIFT);
37
+ qe_clrsetbits_be32(&qe_immr->qmx.cmxgcr, QE_CMXGCR_MII_ENET_MNG,
38
+ ucc_num << QE_CMXGCR_MII_ENET_MNG_SHIFT);
4439 spin_unlock_irqrestore(&cmxgcr_lock, flags);
4540
4641 return 0;
....@@ -84,8 +79,8 @@
8479 return -EINVAL;
8580 }
8681
87
- clrsetbits_8(guemr, UCC_GUEMR_MODE_MASK,
88
- UCC_GUEMR_SET_RESERVED3 | speed);
82
+ qe_clrsetbits_8(guemr, UCC_GUEMR_MODE_MASK,
83
+ UCC_GUEMR_SET_RESERVED3 | speed);
8984
9085 return 0;
9186 }
....@@ -113,9 +108,9 @@
113108 get_cmxucr_reg(ucc_num, &cmxucr, &reg_num, &shift);
114109
115110 if (set)
116
- setbits32(cmxucr, mask << shift);
111
+ qe_setbits_be32(cmxucr, mask << shift);
117112 else
118
- clrbits32(cmxucr, mask << shift);
113
+ qe_clrbits_be32(cmxucr, mask << shift);
119114
120115 return 0;
121116 }
....@@ -211,8 +206,8 @@
211206 if (mode == COMM_DIR_RX)
212207 shift += 4;
213208
214
- clrsetbits_be32(cmxucr, QE_CMXUCR_TX_CLK_SRC_MASK << shift,
215
- clock_bits << shift);
209
+ qe_clrsetbits_be32(cmxucr, QE_CMXUCR_TX_CLK_SRC_MASK << shift,
210
+ clock_bits << shift);
216211
217212 return 0;
218213 }
....@@ -524,11 +519,11 @@
524519 int clock_bits;
525520 u32 shift;
526521 struct qe_mux __iomem *qe_mux_reg;
527
- __be32 __iomem *cmxs1cr;
522
+ __be32 __iomem *cmxs1cr;
528523
529524 qe_mux_reg = &qe_immr->qmx;
530525
531
- if (tdm_num > 7 || tdm_num < 0)
526
+ if (tdm_num > 7)
532527 return -EINVAL;
533528
534529 /* The communications direction must be RX or TX */
....@@ -544,8 +539,8 @@
544539 cmxs1cr = (tdm_num < 4) ? &qe_mux_reg->cmxsi1cr_l :
545540 &qe_mux_reg->cmxsi1cr_h;
546541
547
- qe_clrsetbits32(cmxs1cr, QE_CMXUCR_TX_CLK_SRC_MASK << shift,
548
- clock_bits << shift);
542
+ qe_clrsetbits_be32(cmxs1cr, QE_CMXUCR_TX_CLK_SRC_MASK << shift,
543
+ clock_bits << shift);
549544
550545 return 0;
551546 }
....@@ -637,7 +632,7 @@
637632 {
638633 int source;
639634 u32 shift;
640
- struct qe_mux *qe_mux_reg;
635
+ struct qe_mux __iomem *qe_mux_reg;
641636
642637 qe_mux_reg = &qe_immr->qmx;
643638
....@@ -654,9 +649,9 @@
654649
655650 shift = ucc_get_tdm_sync_shift(mode, tdm_num);
656651
657
- qe_clrsetbits32(&qe_mux_reg->cmxsi1syr,
658
- QE_CMXUCR_TX_CLK_SRC_MASK << shift,
659
- source << shift);
652
+ qe_clrsetbits_be32(&qe_mux_reg->cmxsi1syr,
653
+ QE_CMXUCR_TX_CLK_SRC_MASK << shift,
654
+ source << shift);
660655
661656 return 0;
662657 }