On Mon 2021-04-26 @ 04:58:10 PM, yann.dirson@... wrote:
From: Yann Dirson <yann@...>
This patch provides "standard" and "tiny" BSP.
There is still much work to be done in dispatching feature to individual scc files - the more boards we can support the better it will get. Not all SoC/board features are covered yet either (esp. Wifi/Bluetooth and audio jack), and properly-woking HDMI still needs patches.
Tiny is not fully testable by itself, it can be minimally booted with serial console (though still missing CONFIG_MULTIUSER for serial getty, and CONFIG_INOTIFY_USER for proper udev operation) using:
diff --git a/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-standard.scc b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-standard.scc new file mode 100644 index 0000000..5c74d6b --- /dev/null +++ b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-standard.scc @@ -0,0 +1,7 @@ +# SPDX-License-Identifier: MIT +define KMACHINE nanopi-m4 +define KTYPE standard +define KARCH arm + +include ktypes/standard/standard.scc +include nanopi-m4.scc diff --git a/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-tiny.scc b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-tiny.scc new file mode 100644 index 0000000..6e94d6a --- /dev/null +++ b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4-tiny.scc @@ -0,0 +1,7 @@ +# SPDX-License-Identifier: MIT +define KMACHINE nanopi-m4 +define KTYPE tiny +define KARCH arm + +include ktypes/tiny/tiny.scc +include nanopi-m4.scc diff --git a/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.cfg b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.cfg new file mode 100644 index 0000000..7802ab3 --- /dev/null +++ b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.cfg @@ -0,0 +1,15 @@ +CONFIG_MFD_RK808=y +CONFIG_COMMON_CLK_RK808=y + +CONFIG_REGULATOR_RK808=y +CONFIG_REGULATOR_FAN53555=y + +CONFIG_MMC_BLOCK=y +CONFIG_PWRSEQ_SIMPLE=y + +# RTL8211E +CONFIG_REALTEK_PHY=m + +# AP6356S +CONFIG_BT_BCM=m +CONFIG_BT_HCIUART_BCM=y
It looks to me as though the BRCMFMAC kernel config option needs to be enabled to support the AP6256S? I don't see that being enabled, does it end up being pulled in by default or as a result of the above two settings?
diff --git a/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.scc b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.scc new file mode 100644 index 0000000..f4267aa --- /dev/null +++ b/recipes-kernel/linux/files/bsp/rockchip/nanopi-m4.scc @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: MIT + +kconf hardware nanopi-m4.cfg + +include rk3399.scc diff --git a/recipes-kernel/linux/files/bsp/rockchip/rk3399.cfg b/recipes-kernel/linux/files/bsp/rockchip/rk3399.cfg new file mode 100644 index 0000000..f5f2909 --- /dev/null +++ b/recipes-kernel/linux/files/bsp/rockchip/rk3399.cfg @@ -0,0 +1,71 @@ +# A72 errata, all past revisions +CONFIG_ARM64_ERRATUM_1319367=y +# A53 errata, all patched on boot when needed +CONFIG_ARM64_ERRATUM_826319=y +CONFIG_ARM64_ERRATUM_827319=y +CONFIG_ARM64_ERRATUM_824069=y +CONFIG_ARM64_ERRATUM_819472=y + +# cru +CONFIG_CLK_RK3399=y + +CONFIG_PL330_DMA=y +CONFIG_I2C_RK3X=y +CONFIG_SERIAL_8250_DW=y + +# usb +CONFIG_PHY_ROCKCHIP_INNO_USB2=y +CONFIG_PHY_ROCKCHIP_TYPEC=y + +# ethernet +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=m +CONFIG_STMMAC_PLATFORM=m +CONFIG_DWMAC_ROCKCHIP=m +CONFIG_PHYLIB=m + +# display +CONFIG_ROCKCHIP_DW_HDMI=y +CONFIG_ROCKCHIP_DW_MIPI_DSI=y +CONFIG_ROCKCHIP_ANALOGIX_DP=y +CONFIG_ROCKCHIP_CDN_DP=y +CONFIG_PHY_ROCKCHIP_DP=y +CONFIG_DRM_DW_HDMI=m +CONFIG_DRM_DW_HDMI_I2S_AUDIO=m +CONFIG_DRM_DW_HDMI_CEC=m +CONFIG_DRM_DW_MIPI_DSI=m +CONFIG_DRM_PANFROST=m + +# HDMI audio +CONFIG_DRM_DW_HDMI_AHB_AUDIO=m +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m
Oops, is enabling this RK3288 setting an oversight? Or is it needed for HDMI on the RK3399?