内核配置说明
在这里使用的是 linux-4.19-0802,没有的可以去文章最后自取,简单讲一下 pwm 的设置。
用 vscode 打开 linux-4.19-0802,我们要做的修改大部分在 arch/loongarch/boot/dts/loongson/ 这个目录下这几个文件:

首先打开 2k0300-pinctrl.dtsi
下滑找到 pwm0_pin 往下这几段。
我们随便看一个:

在这里指定了我们的引脚,计算方式为 416+0 号引脚到 416+0 号引脚,也就是说我就用这一个引脚。再比如 spi 这里,就是说用 416+0 号引脚到 416+3 号引脚。

在这里我们 PWM 引脚要用的就是 <&gpa4 0 0>; <&gpa4 1 1>; <&gpa4 2 2>; <&gpa4 3 3>;将 PWM0-3 分别配置为 <&gpa4 0 0>; <&gpa4 1 1>; <&gpa4 2 2>; <&gpa4 3 3>;就可以了。
接下来打开 loongson_2k0300_pai_99_wifi.dts

这里就是我们注重检查的部分,由于 SPI2 和 PWM 有冲突,所以一定要记得关掉。
这就是内核简单的修改,更多的不多赘述,以下是 linux-4.19-0802(原版未改过,感兴趣的可以自己修改) 和我的 vmlinuz,以下是我自己的引脚分配方案。
| GPIO复用 | 主功能复用 | 第一复用 | 第二复用 | |
| 按键 1 | GPIO43 | uart1_tx |



