1. diff --git a/target/linux/ramips/dts/mt7628an_comfast_cf-wr617ac.dts b/target/linux/ramips/dts/mt7628an_comfast_cf-wr617ac.dts
  2. new file mode 100644
  3. index 0000000000..b4b2163ab4
  4. --- /dev/null
  5. +++ b/target/linux/ramips/dts/mt7628an_comfast_cf-wr617ac.dts
  6. @@ -0,0 +1,93 @@
  7. +/dts-v1/;
  8. +
  9. +#include "mt7628an.dtsi"
  10. +
  11. +/ {
  12. + compatible = "comfast,cf-wr617ac", "mediatek,mt7628an-soc";
  13. + model = "Comfast CF-WR617AC";
  14. +
  15. + chosen {
  16. + bootargs = "console=ttyS0,115200";
  17. + };
  18. +
  19. + memory@0 {
  20. + device_type = "memory";
  21. + reg = <0x0 0x4000000>;
  22. + };
  23. +};
  24. +
  25. +&pinctrl {
  26. + state_default: pinctrl0 {
  27. + gpio {
  28. + ralink,group = "i2c";
  29. + ralink,function = "gpio";
  30. + };
  31. + };
  32. +};
  33. +
  34. +&spi0 {
  35. + status = "okay";
  36. +
  37. + m25p80@0 {
  38. + compatible = "jedec,spi-nor";
  39. + reg = <0>;
  40. + spi-max-frequency = <10000000>;
  41. +
  42. + partitions {
  43. + compatible = "fixed-partitions";
  44. + #address-cells = <1>;
  45. + #size-cells = <1>;
  46. +
  47. + partition@0 {
  48. + label = "u-boot";
  49. + reg = <0x0 0x30000>;
  50. + read-only;
  51. + };
  52. +
  53. + ubootenv: partition@30000 {
  54. + label = "u-boot-env";
  55. + reg = <0x30000 0x10000>;
  56. + read-only;
  57. + };
  58. +
  59. + factory: partition@40000 {
  60. + label = "factory";
  61. + reg = <0x40000 0x10000>;
  62. + read-only;
  63. + };
  64. +
  65. + partition@50000 {
  66. + compatible = "denx,uimage";
  67. + label = "firmware";
  68. + reg = <0x50000 0x760000>;
  69. + };
  70. + };
  71. + };
  72. +};
  73. +
  74. +&pcie {
  75. + status = "okay";
  76. +};
  77. +
  78. +&pcie0 {
  79. + wifi@0,0 {
  80. + compatible = "mediatek,mt76";
  81. + reg = <0x0000 0 0 0 0>;
  82. + mediatek,mtd-eeprom = <&factory 0x8000>;
  83. + ieee80211-freq-limit = <5000000 6000000>;
  84. + };
  85. +};
  86. +
  87. +&ethernet {
  88. + mtd-mac-address = <&factory 0x4>;
  89. + mtd-mac-address-increment = <(-1)>;
  90. +};
  91. +
  92. +&esw {
  93. + mediatek,portmap = <0x2f>;
  94. + mediatek,portdisable = <0x2a>;
  95. +};
  96. +
  97. +&wmac {
  98. + status = "okay";
  99. +};
  100. diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk
  101. index 16b5958ad1..396e877da2 100644
  102. --- a/target/linux/ramips/image/mt76x8.mk
  103. +++ b/target/linux/ramips/image/mt76x8.mk
  104. @@ -618,3 +618,14 @@ define Device/zyxel_keenetic-extra-ii
  105. check-size | zyimage -d 6162 -v "ZyXEL Keenetic Extra II"
  106. endef
  107. TARGET_DEVICES += zyxel_keenetic-extra-ii
  108. +
  109. +define Device/comfast_cf-wr617ac
  110. + IMAGE_SIZE := $(ralink_default_fw_size_32M)
  111. + DTS := CF-WR617AC
  112. + DEVICE_VENDOR := Comfast
  113. + DEVICE_MODEL := CF-WR617AC
  114. + DEVICE_TITLE := Comfast CF-WR617AC
  115. + DEVICE_PACKAGES := kmod-mt76x2 kmod-rt2800-pci
  116. + SUPPORTED_DEVICES += cf-wr617ac
  117. +endef
  118. +TARGET_DEVICES += comfast_cf-wr617ac