IPQ40xx series has a HW pseudo random number generator built in.
It already has a node in the upstream ipq4019.dtsi so we just need to enable it.
Its driver has been rewritten to use crypto API so we dont have char interface like under 4.14 kernel.
Signed-off-by: Robert Marko <robimarko@gmail.com>
14 files changed:
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_DEV_QCE=y
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_DEV_QCE=y
-# CONFIG_CRYPTO_DEV_QCOM_RNG is not set
+CONFIG_CRYPTO_DEV_QCOM_RNG=y
CONFIG_CRYPTO_DRBG=y
CONFIG_CRYPTO_DRBG_HMAC=y
CONFIG_CRYPTO_DRBG_MENU=y
CONFIG_CRYPTO_DRBG=y
CONFIG_CRYPTO_DRBG_HMAC=y
CONFIG_CRYPTO_DRBG_MENU=y
compatible = "openmesh,a42", "qcom,ipq4019";
soc {
compatible = "openmesh,a42", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
compatible = "engenius,eap1300", "qcom,ipq4019";
soc {
compatible = "engenius,eap1300", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
compatible = "netgear,ex61x0v2", "qcom,ipq4019";
soc {
compatible = "netgear,ex61x0v2", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
compatible = "8dev,jalapeno", "qcom,ipq4019";
soc {
compatible = "8dev,jalapeno", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
pinctrl-0 = <&mdio_pins>;
mdio@90000 {
status = "okay";
pinctrl-0 = <&mdio_pins>;
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
compatible = "openmesh,a62", "qcom,ipq4019";
soc {
compatible = "openmesh,a62", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
compatible = "qcom,ipq4019";
soc {
compatible = "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
pinctrl@1000000 {
serial_0_pins: serial_pinmux {
mux {
pinctrl@1000000 {
serial_0_pins: serial_pinmux {
mux {
compatible = "compex,wpj428", "qcom,ipq4019";
soc {
compatible = "compex,wpj428", "qcom,ipq4019";
soc {
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
};
mdio@90000 {
status = "okay";
};
+ rng@22000 {
+ status = "okay";
+ };
+
mdio@90000 {
status = "okay";
pinctrl-0 = <&mdio_pins>;
mdio@90000 {
status = "okay";
pinctrl-0 = <&mdio_pins>;