#include "jh7110.dtsi"
#include "codecs/sf_pwmdac.dtsi"
#undef WM8960_ENABLED
+#undef AC108_ENABLED
#ifdef WM8960_ENABLED
+#define WM8960_AC108_COMMON 1
#include "codecs/sf_wm8960.dtsi"
#endif
+#ifdef AC108_ENABLED
+#define WM8960_AC108_COMMON 1
+#include "codecs/sf_ac108.dtsi"
+#endif
+
/ {
model = "StarFive VisionFive V2";
compatible = "starfive,visionfive-v2", "starfive,jh7110";
};
};
-#ifdef WM8960_ENABLED
+#ifdef WM8960_AC108_COMMON
i2srx_pins: i2srx-pins {
i2srx-pins0 {
sf,pins = <PAD_GPIO61>;
sf,pin-gpio-doen = <OEN_HIGH>;
};
};
-
+#endif
+#ifdef WM8960_ENABLED
i2stx_pins: i2stx-pins {
i2stx-pins0 {
sf,pins = <PAD_GPIO44>;
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
status = "okay";
-
+#ifdef AC108_ENABLED
ac108_a: ac108@3b {
compatible = "x-power,ac108_0";
reg = <0x3b>;
#sound-dai-cells = <0>;
data-protocol = <0>;
};
+#endif
#ifdef WM8960_ENABLED
wm8960: codec@1a {
compatible = "wlf,wm8960";
status = "okay";
};
-#ifdef WM8960_ENABLED
+#ifdef WM8960_AC108_COMMON
&i2srx_3ch {
pinctrl-names = "default";
- pinctrl-0 = <&i2srx_pins>;
+ pinctrl-0 = <&i2s_clk_pins &i2srx_pins>;
status = "okay";
};
+#endif
+#ifdef WM8960_ENABLED
&i2stx_4ch1 {
pinctrl-names = "default";
- pinctrl-0 = <&i2s_clk_pins &i2stx_pins>;
+ pinctrl-0 = <&i2stx_pins>;
status = "okay";
};
#endif
__overlay__ {
clock-frequency = <100000>;
i2c-sda-hold-time-ns = <300>;
- i2c-sda-falling-time-ns = <3000>;
- i2c-scl-falling-time-ns = <3000>;
+ i2c-sda-falling-time-ns = <510>;
+ i2c-scl-falling-time-ns = <510>;
auto_calc_scl_lhcnt;
pinctrl-names = "default";
pinctrl-0 = <&dt_i2c1_pins>;
CONFIG_NET_9P=y
CONFIG_NET_9P_VIRTIO=y
CONFIG_PCI=y
-CONFIG_PCIEASPM_POWERSAVE=y
+# CONFIG_PCIEASPM is not set
CONFIG_PCIE_PLDA=y
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_SND_DESIGNWARE_I2S=y
CONFIG_SND_DESIGNWARE_I2S_STARFIVE_JH7110=y
CONFIG_SND_STARFIVE_PWMDAC=y
+CONFIG_SND_SOC_AC108=y
CONFIG_SND_SOC_WM8960=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_USB=y