Skip to content

Commit 6e0bb04

Browse files
seebedavem330
authored andcommitted
sh_eth: Add R7S9210 support
Add support for the R7S9210 which is part of the RZ/A2 series. Signed-off-by: Chris Brandt <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent def70b6 commit 6e0bb04

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

Documentation/devicetree/bindings/net/sh_eth.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Required properties:
1616
"renesas,ether-r8a7794" if the device is a part of R8A7794 SoC.
1717
"renesas,gether-r8a77980" if the device is a part of R8A77980 SoC.
1818
"renesas,ether-r7s72100" if the device is a part of R7S72100 SoC.
19+
"renesas,ether-r7s9210" if the device is a part of R7S9210 SoC.
1920
"renesas,rcar-gen1-ether" for a generic R-Car Gen1 device.
2021
"renesas,rcar-gen2-ether" for a generic R-Car Gen2 or RZ/G1
2122
device.

drivers/net/ethernet/renesas/sh_eth.c

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -798,6 +798,41 @@ static struct sh_eth_cpu_data r8a77980_data = {
798798
.magic = 1,
799799
.cexcr = 1,
800800
};
801+
802+
/* R7S9210 */
803+
static struct sh_eth_cpu_data r7s9210_data = {
804+
.soft_reset = sh_eth_soft_reset,
805+
806+
.set_duplex = sh_eth_set_duplex,
807+
.set_rate = sh_eth_set_rate_rcar,
808+
809+
.register_type = SH_ETH_REG_FAST_SH4,
810+
811+
.edtrr_trns = EDTRR_TRNS_ETHER,
812+
.ecsr_value = ECSR_ICD,
813+
.ecsipr_value = ECSIPR_ICDIP,
814+
.eesipr_value = EESIPR_TWBIP | EESIPR_TABTIP | EESIPR_RABTIP |
815+
EESIPR_RFCOFIP | EESIPR_ECIIP | EESIPR_FTCIP |
816+
EESIPR_TDEIP | EESIPR_TFUFIP | EESIPR_FRIP |
817+
EESIPR_RDEIP | EESIPR_RFOFIP | EESIPR_CNDIP |
818+
EESIPR_DLCIP | EESIPR_CDIP | EESIPR_TROIP |
819+
EESIPR_RMAFIP | EESIPR_RRFIP | EESIPR_RTLFIP |
820+
EESIPR_RTSFIP | EESIPR_PREIP | EESIPR_CERFIP,
821+
822+
.tx_check = EESR_FTC | EESR_CND | EESR_DLC | EESR_CD | EESR_TRO,
823+
.eesr_err_check = EESR_TWB | EESR_TABT | EESR_RABT | EESR_RFE |
824+
EESR_RDE | EESR_RFRMER | EESR_TFE | EESR_TDE,
825+
826+
.fdr_value = 0x0000070f,
827+
828+
.apr = 1,
829+
.mpr = 1,
830+
.tpauser = 1,
831+
.hw_swap = 1,
832+
.rpadir = 1,
833+
.no_ade = 1,
834+
.xdfar_rw = 1,
835+
};
801836
#endif /* CONFIG_OF */
802837

803838
static void sh_eth_set_rate_sh7724(struct net_device *ndev)
@@ -3121,6 +3156,7 @@ static const struct of_device_id sh_eth_match_table[] = {
31213156
{ .compatible = "renesas,ether-r8a7794", .data = &rcar_gen2_data },
31223157
{ .compatible = "renesas,gether-r8a77980", .data = &r8a77980_data },
31233158
{ .compatible = "renesas,ether-r7s72100", .data = &r7s72100_data },
3159+
{ .compatible = "renesas,ether-r7s9210", .data = &r7s9210_data },
31243160
{ .compatible = "renesas,rcar-gen1-ether", .data = &rcar_gen1_data },
31253161
{ .compatible = "renesas,rcar-gen2-ether", .data = &rcar_gen2_data },
31263162
{ }

0 commit comments

Comments
 (0)