mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
Merge commit '263ff45dbffdb398230e2f69226e9aa6b4e8969b'
* commit '263ff45dbffdb398230e2f69226e9aa6b4e8969b': drm/rockchip: vop2: Fix compile error on arm32 platform Mali: utgard: Replace calls to dma_fence_ops::signaled with dma_fence_is_signaled() mtd: spi-nor: Add macro definition constraints arm64: dts: rockchip: rk356x evb boards: add vcm config mtd: spinand: Add macro definition constraints drm/rockchip: dsi2: allocate macros for mipi dsi2 drivers Change-Id: I5cbef1a41994cacc5fc6fa2c90d7e8909fe2cade
This commit is contained in:
@@ -219,6 +219,17 @@
|
||||
status = "okay";
|
||||
pinctrl-0 = <&i2c2m1_xfer>;
|
||||
|
||||
dw9714: dw9714@c {
|
||||
compatible = "dongwoon,dw9714";
|
||||
status = "okay";
|
||||
reg = <0x0c>;
|
||||
rockchip,vcm-start-current = <10>;
|
||||
rockchip,vcm-rated-current = <85>;
|
||||
rockchip,vcm-step-mode = <5>;
|
||||
rockchip,camera-module-index = <0>;
|
||||
rockchip,camera-module-facing = "back";
|
||||
};
|
||||
|
||||
/* split mode: lane0/1 */
|
||||
ov5695: ov5695@36 {
|
||||
status = "okay";
|
||||
@@ -234,6 +245,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "TongJu";
|
||||
rockchip,camera-module-lens-name = "CHT842-MD";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
ov5695_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam1>;
|
||||
@@ -281,6 +293,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "RK-CMK-8M-2-v1";
|
||||
rockchip,camera-module-lens-name = "CK8401";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
gc8034_out: endpoint {
|
||||
remote-endpoint = <&dphy0_in>;
|
||||
|
||||
@@ -192,6 +192,17 @@
|
||||
status = "okay";
|
||||
pinctrl-0 = <&i2c2m1_xfer>;
|
||||
|
||||
dw9714: dw9714@c {
|
||||
compatible = "dongwoon,dw9714";
|
||||
status = "okay";
|
||||
reg = <0x0c>;
|
||||
rockchip,vcm-start-current = <10>;
|
||||
rockchip,vcm-rated-current = <85>;
|
||||
rockchip,vcm-step-mode = <5>;
|
||||
rockchip,camera-module-index = <0>;
|
||||
rockchip,camera-module-facing = "back";
|
||||
};
|
||||
|
||||
gc2145: gc2145@3c {
|
||||
status = "okay";
|
||||
compatible = "galaxycore,gc2145";
|
||||
@@ -236,6 +247,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "TongJu";
|
||||
rockchip,camera-module-lens-name = "CHT842-MD";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
ov5695_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam0>;
|
||||
@@ -259,6 +271,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "RK-CMK-8M-2-v1";
|
||||
rockchip,camera-module-lens-name = "CK8401";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
gc8034_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam1>;
|
||||
|
||||
@@ -265,6 +265,18 @@
|
||||
|
||||
&i2c4 {
|
||||
status = "okay";
|
||||
|
||||
dw9714: dw9714@c {
|
||||
compatible = "dongwoon,dw9714";
|
||||
status = "okay";
|
||||
reg = <0x0c>;
|
||||
rockchip,vcm-start-current = <10>;
|
||||
rockchip,vcm-rated-current = <85>;
|
||||
rockchip,vcm-step-mode = <5>;
|
||||
rockchip,camera-module-index = <0>;
|
||||
rockchip,camera-module-facing = "back";
|
||||
};
|
||||
|
||||
gc8034: gc8034@37 {
|
||||
compatible = "galaxycore,gc8034";
|
||||
status = "okay";
|
||||
@@ -281,6 +293,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "RK-CMK-8M-2-v1";
|
||||
rockchip,camera-module-lens-name = "CK8401";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
gc8034_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam1>;
|
||||
@@ -324,6 +337,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "TongJu";
|
||||
rockchip,camera-module-lens-name = "CHT842-MD";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
ov5695_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam2>;
|
||||
|
||||
@@ -296,6 +296,18 @@
|
||||
|
||||
&i2c4 {
|
||||
status = "okay";
|
||||
|
||||
dw9714: dw9714@c {
|
||||
compatible = "dongwoon,dw9714";
|
||||
status = "okay";
|
||||
reg = <0x0c>;
|
||||
rockchip,vcm-start-current = <10>;
|
||||
rockchip,vcm-rated-current = <85>;
|
||||
rockchip,vcm-step-mode = <5>;
|
||||
rockchip,camera-module-index = <0>;
|
||||
rockchip,camera-module-facing = "back";
|
||||
};
|
||||
|
||||
gc8034: gc8034@37 {
|
||||
compatible = "galaxycore,gc8034";
|
||||
status = "okay";
|
||||
@@ -312,6 +324,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "RK-CMK-8M-2-v1";
|
||||
rockchip,camera-module-lens-name = "CK8401";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
gc8034_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam1>;
|
||||
@@ -355,6 +368,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "TongJu";
|
||||
rockchip,camera-module-lens-name = "CHT842-MD";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
ov5695_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam2>;
|
||||
|
||||
@@ -133,6 +133,18 @@
|
||||
|
||||
&i2c4 {
|
||||
status = "okay";
|
||||
|
||||
dw9714: dw9714@c {
|
||||
compatible = "dongwoon,dw9714";
|
||||
status = "okay";
|
||||
reg = <0x0c>;
|
||||
rockchip,vcm-start-current = <10>;
|
||||
rockchip,vcm-rated-current = <85>;
|
||||
rockchip,vcm-step-mode = <5>;
|
||||
rockchip,camera-module-index = <0>;
|
||||
rockchip,camera-module-facing = "back";
|
||||
};
|
||||
|
||||
os04a10: os04a10@36 {
|
||||
compatible = "ovti,os04a10";
|
||||
reg = <0x36>;
|
||||
@@ -171,6 +183,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "RK-CMK-8M-2-v1";
|
||||
rockchip,camera-module-lens-name = "CK8401";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
gc8034_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam1>;
|
||||
@@ -193,6 +206,7 @@
|
||||
rockchip,camera-module-facing = "back";
|
||||
rockchip,camera-module-name = "TongJu";
|
||||
rockchip,camera-module-lens-name = "CHT842-MD";
|
||||
lens-focus = <&dw9714>;
|
||||
port {
|
||||
ov5695_out: endpoint {
|
||||
remote-endpoint = <&mipi_in_ucam2>;
|
||||
|
||||
2
drivers/gpu/arm/mali400/mali/common/mali_timeline.c
Executable file → Normal file
2
drivers/gpu/arm/mali400/mali/common/mali_timeline.c
Executable file → Normal file
@@ -1551,7 +1551,7 @@ static void mali_timeline_do_sync_fence_callback(void *arg)
|
||||
#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
|
||||
fence_status = atomic_read(&sync_fence->status);
|
||||
#else
|
||||
fence_status = sync_fence->fence->ops->signaled(sync_fence->fence);
|
||||
fence_status = dma_fence_is_signaled(sync_fence->fence);
|
||||
#endif
|
||||
|
||||
system = tracker->system;
|
||||
|
||||
2
drivers/gpu/arm/mali400/mali/common/mali_timeline_fence_wait.c
Executable file → Normal file
2
drivers/gpu/arm/mali400/mali/common/mali_timeline_fence_wait.c
Executable file → Normal file
@@ -113,7 +113,7 @@ static mali_bool mali_timeline_fence_wait_check_status(struct mali_timeline_syst
|
||||
#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
|
||||
if (0 < atomic_read(&sync_fence->status)) {
|
||||
#else
|
||||
if (0 == sync_fence->fence->ops->signaled(sync_fence->fence)) {
|
||||
if (0 == dma_fence_is_signaled(sync_fence->fence)) {
|
||||
#endif
|
||||
ret = MALI_FALSE;
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ static void mali_internal_fence_check_cb_func(struct dma_fence *fence, struct dm
|
||||
if (ret)
|
||||
wake_up_all(&sync_fence->wq);
|
||||
#else
|
||||
ret = sync_fence->fence->ops->signaled(sync_fence->fence);
|
||||
ret = dma_fence_is_signaled(sync_fence->fence);
|
||||
|
||||
if (0 > ret)
|
||||
MALI_PRINT_ERROR(("Mali internal sync:Failed to wait fence 0x%x for sync_fence 0x%x.\n", fence, sync_fence));
|
||||
@@ -557,10 +557,7 @@ int mali_internal_sync_fence_wait_async(struct mali_internal_sync_fence *sync_fe
|
||||
|
||||
return !err;
|
||||
#else
|
||||
if ((sync_fence->fence) && (sync_fence->fence->ops) && (sync_fence->fence->ops->signaled))
|
||||
err = sync_fence->fence->ops->signaled(sync_fence->fence);
|
||||
else
|
||||
err = -1;
|
||||
err = dma_fence_is_signaled(sync_fence->fence);
|
||||
|
||||
if (0 > err)
|
||||
return err;
|
||||
@@ -583,7 +580,7 @@ int mali_internal_sync_fence_wait_async(struct mali_internal_sync_fence *sync_fe
|
||||
waiter->work.private = sync_fence;
|
||||
|
||||
spin_lock_irqsave(&sync_fence->wq.lock, flags);
|
||||
err = sync_fence->fence->ops->signaled(sync_fence->fence);
|
||||
err = dma_fence_is_signaled(sync_fence->fence);
|
||||
|
||||
if (0 == err){
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0)
|
||||
|
||||
@@ -8,9 +8,9 @@ config DRM_ROCKCHIP
|
||||
select VIDEOMODE_HELPERS
|
||||
select DRM_ANALOGIX_DP if ROCKCHIP_ANALOGIX_DP
|
||||
select DRM_DW_HDMI if ROCKCHIP_DW_HDMI
|
||||
select DRM_DW_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI
|
||||
select GENERIC_PHY if ROCKCHIP_DW_MIPI_DSI
|
||||
select GENERIC_PHY_MIPI_DPHY if ROCKCHIP_DW_MIPI_DSI
|
||||
select DRM_DW_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI || ROCKCHIP_DW_MIPI_DSI2
|
||||
select GENERIC_PHY if ROCKCHIP_DW_MIPI_DSI || ROCKCHIP_DW_MIPI_DSI2
|
||||
select GENERIC_PHY_MIPI_DPHY if ROCKCHIP_DW_MIPI_DSI || ROCKCHIP_DW_MIPI_DSI2
|
||||
select SND_SOC_HDMI_CODEC if ROCKCHIP_CDN_DP && SND_SOC
|
||||
help
|
||||
Choose this option if you have a Rockchip soc chipset.
|
||||
@@ -107,6 +107,16 @@ config ROCKCHIP_DW_MIPI_DSI
|
||||
enable MIPI DSI on RK3288 or RK3399 based SoC, you should
|
||||
select this option.
|
||||
|
||||
config ROCKCHIP_DW_MIPI_DSI2
|
||||
bool "Rockchip specific extensions for Synopsys DW MIPI DSI2"
|
||||
default ROCKCHIP_DW_MIPI_DSI
|
||||
select GENERIC_PHY_MIPI_DPHY
|
||||
help
|
||||
This selects support for Rockchip SoC specific extensions
|
||||
for the Synopsys DesignWare dsi2 driver. If you want to
|
||||
enable MIPI DSI2 on RK3576 or RK3588 based SoC, you should
|
||||
select this option.
|
||||
|
||||
config ROCKCHIP_DW_DP
|
||||
bool "Rockchip specific extensions for Synopsys DW DPTX"
|
||||
select DRM_DISPLAY_HDCP_HELPER
|
||||
|
||||
@@ -19,8 +19,8 @@ rockchipdrm-$(CONFIG_ROCKCHIP_CDN_DP) += cdn-dp-core.o cdn-dp-reg.o \
|
||||
cdn-dp-link-training.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DRM_TVE) += rockchip_drm_tve.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DW_HDMI) += dw_hdmi-rockchip.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DW_MIPI_DSI) += dw-mipi-dsi-rockchip.o \
|
||||
dw-mipi-dsi2-rockchip.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DW_MIPI_DSI) += dw-mipi-dsi-rockchip.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DW_MIPI_DSI2) += dw-mipi-dsi2-rockchip.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_DW_DP) += dw-dp.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_INNO_HDMI) += inno_hdmi.o
|
||||
rockchipdrm-$(CONFIG_ROCKCHIP_LVDS) += rockchip_lvds.o
|
||||
|
||||
@@ -2587,7 +2587,7 @@ static int __init rockchip_drm_init(void)
|
||||
ADD_ROCKCHIP_SUB_DRIVER(dw_mipi_dsi_rockchip_driver,
|
||||
CONFIG_ROCKCHIP_DW_MIPI_DSI);
|
||||
ADD_ROCKCHIP_SUB_DRIVER(dw_mipi_dsi2_rockchip_driver,
|
||||
CONFIG_ROCKCHIP_DW_MIPI_DSI);
|
||||
CONFIG_ROCKCHIP_DW_MIPI_DSI2);
|
||||
ADD_ROCKCHIP_SUB_DRIVER(inno_hdmi_driver, CONFIG_ROCKCHIP_INNO_HDMI);
|
||||
ADD_ROCKCHIP_SUB_DRIVER(rk3066_hdmi_driver,
|
||||
CONFIG_ROCKCHIP_RK3066_HDMI);
|
||||
|
||||
@@ -5775,10 +5775,12 @@ static int vop2_plane_atomic_check(struct drm_plane *plane, struct drm_atomic_st
|
||||
int hsub = fb->format->hsub;
|
||||
int vsub = fb->format->vsub;
|
||||
|
||||
if (fb->format->char_per_block[0] == 0)
|
||||
if (fb->format->char_per_block[0] == 0) {
|
||||
offset = ALIGN_DOWN(src->x1 >> 16, tile_size) * fb->format->cpp[1] / hsub * tile_size;
|
||||
else
|
||||
offset = drm_format_info_min_pitch(fb->format, 1, ALIGN_DOWN(src->x1 >> 16, tile_size)) * tile_size / hsub;
|
||||
} else {
|
||||
offset = drm_format_info_min_pitch(fb->format, 1, ALIGN_DOWN(src->x1 >> 16, tile_size)) * tile_size;
|
||||
offset /= hsub;
|
||||
}
|
||||
|
||||
if (vpstate->tiled_en)
|
||||
offset /= vsub;
|
||||
@@ -8604,7 +8606,8 @@ static int vop2_calc_dsc_clk(struct drm_crtc *crtc)
|
||||
* so when txp_clk is equal to v_pixclk, we set dsc_cds = crtc_clock / 4,
|
||||
* otherwise dsc_cds = crtc_clock / 8;
|
||||
*/
|
||||
vcstate->dsc_cds_clk_rate = v_pixclk / (vcstate->dsc_txp_clk_rate == v_pixclk ? 4 : 8);
|
||||
vcstate->dsc_cds_clk_rate = v_pixclk;
|
||||
do_div(vcstate->dsc_cds_clk_rate, (vcstate->dsc_txp_clk_rate == v_pixclk ? 4 : 8));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -8,3 +8,5 @@ menuconfig MTD_SPI_NAND
|
||||
select MTD_NAND_BBT_USING_FLASH
|
||||
help
|
||||
This is the framework for the SPI NAND device drivers.
|
||||
|
||||
source "drivers/mtd/nand/spi/Kconfig.spinandlist"
|
||||
|
||||
156
drivers/mtd/nand/spi/Kconfig.spinandlist
Normal file
156
drivers/mtd/nand/spi/Kconfig.spinandlist
Normal file
@@ -0,0 +1,156 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
if MTD_SPI_NAND
|
||||
|
||||
config MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
bool "Autoselect SPI Nand flash"
|
||||
default y
|
||||
help
|
||||
By default, auto-selects all SPI Nand flash chips.
|
||||
|
||||
menu "SPI Nand flash"
|
||||
visible if !MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
|
||||
config MTD_SPI_NAND_ATO
|
||||
bool "ATO SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various ATO SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_BIWIN
|
||||
bool "BIWIN SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various BIWIN SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_DOSILICON
|
||||
bool "DOSILICON SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various DOSILICON SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_ESMT
|
||||
bool "ESMT SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
select SPI_NAND_MICRON
|
||||
help
|
||||
Add support for various ESMT SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_ETRON
|
||||
bool "ETRON SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various ETRON SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_FMSH
|
||||
bool "FMSH SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various FMSH SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_FORESEE
|
||||
bool "FORESEE SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various FORESEE SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_GIGADEVICE
|
||||
bool "GIGADEVICE SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various GIGADEVICE SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_GSTO
|
||||
bool "GSTO SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various GSTO SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_HIKSEMI
|
||||
bool "HIKSEMI SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various HIKSEMI SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_HYF
|
||||
bool "HYF SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various HYF SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_JSC
|
||||
bool "JSC SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various JSC SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_MACRONIX
|
||||
bool "MACRONIX SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various MACRONIX SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_MICRON
|
||||
bool "MICRON SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various MICRON SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_PARAGON
|
||||
bool "PARAGON SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various PARAGON SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_SILICONGO
|
||||
bool "SILICONGO SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various SILICONGO SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_SKYHIGH
|
||||
bool "SKYHIGH SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various SKYHIGH SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_TOSHIBA
|
||||
bool "TOSHIBA SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various TOSHIBA SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_UNIM
|
||||
bool "UNIM SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various UNIM SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_WINBOND
|
||||
bool "WINBOND SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various WINBOND SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_XINCUN
|
||||
bool "XINCUN SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various XINCUN SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_XTX
|
||||
bool "XTX SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
select MTD_SPI_NAND_MICRON
|
||||
help
|
||||
Add support for various XTX SPI Nand flash chips
|
||||
|
||||
config MTD_SPI_NAND_ZBIT
|
||||
bool "ZBIT SPI flash support"
|
||||
default y if MTD_SPI_NAND_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various ZBIT SPI Nand flash chips
|
||||
|
||||
endmenu
|
||||
|
||||
endif
|
||||
@@ -1,3 +1,27 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
spinand-objs := core.o ato.o gigadevice.o gsto.o macronix.o micron.o paragon.o toshiba.o winbond.o biwin.o dosilicon.o esmt.o etron.o fmsh.o foresee.o hiksemi.o hyf.o jsc.o silicongo.o skyhigh.o unim.o xincun.o xtx.o zbit.o
|
||||
spinand-objs := core.o
|
||||
obj-$(CONFIG_MTD_SPI_NAND) += spinand.o
|
||||
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_ATO) += ato.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_BIWIN) += biwin.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_DOSILICON) += dosilicon.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_ESMT) += esmt.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_ETRON) += etron.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_FMSH) += fmsh.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_FORESEE) += foresee.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_GIGADEVICE) += gigadevice.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_GSTO) += gsto.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_HIKSEMI) += hiksemi.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_HYF) += hyf.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_JSC) += jsc.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_MACRONIX) += macronix.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_MICRON) += micron.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_PARAGON) += paragon.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_SILICONGO) += silicongo.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_SKYHIGH) += skyhigh.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_TOSHIBA) += toshiba.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_UNIM) += unim.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_WINBOND) += winbond.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_XINCUN) += xincun.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_XTX) += xtx.o
|
||||
spinand-$(CONFIG_MTD_SPI_NAND_ZBIT) += zbit.o
|
||||
|
||||
@@ -951,30 +951,76 @@ static const struct nand_ops spinand_ops = {
|
||||
};
|
||||
|
||||
static const struct spinand_manufacturer *spinand_manufacturers[] = {
|
||||
#ifdef CONFIG_MTD_SPI_NAND_ATO
|
||||
&ato_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_BIWIN
|
||||
&biwin_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_DOSILICON
|
||||
&dosilicon_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_ESMT
|
||||
&esmt_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_ETRON
|
||||
&etron_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_FMSH
|
||||
&fmsh_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_FORESEE
|
||||
&foresee_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_GIGADEVICE
|
||||
&gigadevice_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_GSTO
|
||||
&gsto_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_HIKSEMI
|
||||
&hiksemi_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_HYF
|
||||
&hyf_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_JSC
|
||||
&jsc_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_MACRONIX
|
||||
¯onix_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_MICRON
|
||||
µn_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_PARAGON
|
||||
¶gon_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_SILICONGO
|
||||
&silicongo_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_SKYHIGH
|
||||
&skyhigh_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_TOSHIBA
|
||||
&toshiba_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_UNIM
|
||||
&unim_spinand_manufacturer,
|
||||
&unim_zl_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_WINBOND
|
||||
&winbond_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_XINCUN
|
||||
&xincun_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_XTX
|
||||
&xtx_spinand_manufacturer,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NAND_ZBIT
|
||||
&zbit_spinand_manufacturer,
|
||||
#endif
|
||||
};
|
||||
|
||||
static int spinand_manufacturer_match(struct spinand_device *spinand,
|
||||
|
||||
@@ -76,5 +76,6 @@ config MTD_SPI_NOR_SWP_KEEP
|
||||
endchoice
|
||||
|
||||
source "drivers/mtd/spi-nor/controllers/Kconfig"
|
||||
source "drivers/mtd/spi-nor/Kconfig.spinorlist"
|
||||
|
||||
endif # MTD_SPI_NOR
|
||||
|
||||
148
drivers/mtd/spi-nor/Kconfig.spinorlist
Normal file
148
drivers/mtd/spi-nor/Kconfig.spinorlist
Normal file
@@ -0,0 +1,148 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
if MTD_SPI_NOR
|
||||
|
||||
config MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
bool "Autoselect SPI Nor flash"
|
||||
default y
|
||||
help
|
||||
By default, auto-selects all SPI Nor flash chips.
|
||||
|
||||
menu "SPI Nor flash"
|
||||
visible if !MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
|
||||
config MTD_SPI_NOR_ATMEL
|
||||
bool "Atmel SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx)
|
||||
|
||||
config MTD_SPI_NOR_BOYA
|
||||
bool "BOYA SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various BOYA SPI flash chips (BY25xxx)
|
||||
|
||||
config MTD_SPI_NOR_CATALYST
|
||||
bool "CATALYST SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various CATALYST SPI flash chips (cat25xxx)
|
||||
|
||||
config MTD_SPI_NOR_DOSILICON
|
||||
bool "DOSILICON SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various DOSILICON SPI flash chips (FM25xxx)
|
||||
|
||||
config MTD_SPI_NOR_EON
|
||||
bool "EON SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various EON SPI flash chips (EN25xxx)
|
||||
|
||||
config MTD_SPI_NOR_ESMT
|
||||
bool "ESMT SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various ESMT SPI flash chips (F25xxx and EN25)
|
||||
|
||||
config MTD_SPI_NOR_EVERSPIN
|
||||
bool "EVERSPIN SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various EVERSPIN SPI flash chips (mrxxx)
|
||||
|
||||
config MTD_SPI_NOR_FMSH
|
||||
bool "FMSH SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various FMSH SPI flash chips (FM25xxx)
|
||||
|
||||
config MTD_SPI_NOR_FUJITSU
|
||||
bool "FUJITSU SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various FUJITSU SPI flash chips (MB85xxx)
|
||||
|
||||
config MTD_SPI_NOR_GIGADEVICE
|
||||
bool "GigaDevice SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various GigaDevice SPI flash chips (GD25xxx)
|
||||
|
||||
config MTD_SPI_NOR_INTEL
|
||||
bool "INTEL SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various INTEL SPI flash chips
|
||||
|
||||
config MTD_SPI_NOR_ISSI
|
||||
bool "ISSI SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various ISSI SPI flash chips (ISxxx)
|
||||
|
||||
config MTD_SPI_NOR_MACRONIX
|
||||
bool "Macronix SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various Macronix SPI flash chips (MX25Lxxx)
|
||||
|
||||
config MTD_SPI_NOR_NORMEM
|
||||
bool "NORMEM SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various NORMEM SPI flash chips (NM25xxx)
|
||||
|
||||
config MTD_SPI_NOR_PUYA
|
||||
bool "PUYA SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various PUYA SPI flash chips (PY25xxx)
|
||||
|
||||
config MTD_SPI_NOR_SPANSION
|
||||
bool "Spansion SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various Spansion SPI flash chips (S25FLxxx)
|
||||
|
||||
config MTD_SPI_NOR_STMICRO
|
||||
bool "STMicro SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx)
|
||||
|
||||
config MTD_SPI_NOR_SST
|
||||
bool "SST SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various SST SPI flash chips (SST25xxx)
|
||||
|
||||
config MTD_SPI_NOR_WINBOND
|
||||
bool "Winbond SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various WINBOND SPI flash chips (W25xxx)
|
||||
|
||||
config MTD_SPI_NOR_XILINX
|
||||
bool "XILINX SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various XILINX SPI flash chips (3Sxxx)
|
||||
|
||||
config MTD_SPI_NOR_XMC
|
||||
bool "XMC SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various XMC SPI flash chips (XM25xxx)
|
||||
|
||||
config MTD_SPI_NOR_XTX
|
||||
bool "XTX SPI flash support"
|
||||
default y if MTD_SPI_NOR_DEVICE_AUTOSELECT
|
||||
help
|
||||
Add support for various XTX SPI flash chips (XT25xxx)
|
||||
|
||||
endmenu
|
||||
|
||||
endif # MTD_SPI_NOR
|
||||
@@ -1,28 +1,28 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
spi-nor-objs := core.o sfdp.o swp.o otp.o sysfs.o
|
||||
spi-nor-objs += atmel.o
|
||||
spi-nor-objs += boya.o
|
||||
spi-nor-objs += catalyst.o
|
||||
spi-nor-objs += dosilicon.o
|
||||
spi-nor-objs += eon.o
|
||||
spi-nor-objs += esmt.o
|
||||
spi-nor-objs += everspin.o
|
||||
spi-nor-objs += fmsh.o
|
||||
spi-nor-objs += fujitsu.o
|
||||
spi-nor-objs += gigadevice.o
|
||||
spi-nor-objs += normem.o
|
||||
spi-nor-objs += intel.o
|
||||
spi-nor-objs += issi.o
|
||||
spi-nor-objs += macronix.o
|
||||
spi-nor-objs += micron-st.o
|
||||
spi-nor-objs += puya.o
|
||||
spi-nor-objs += spansion.o
|
||||
spi-nor-objs += sst.o
|
||||
spi-nor-objs += winbond.o
|
||||
spi-nor-objs += xilinx.o
|
||||
spi-nor-objs += xmc.o
|
||||
spi-nor-objs += xtx.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_ATMEL) += atmel.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_BOYA) += boya.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_CATALYST) += catalyst.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_DOSILICON) += dosilicon.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_EON) += eon.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_ESMT) += esmt.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_EVERSPIN) += everspin.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_FMSH) += fmsh.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_FUJITSU) += fujitsu.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_GIGADEVICE) += gigadevice.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_INTEL) += intel.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_ISSI) += issi.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_MACRONIX) += macronix.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_STMICRO) += micron-st.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_NORMEM) += normem.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_PUYA) += puya.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_SPANSION) += spansion.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_SST) += sst.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_WINBOND) += winbond.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_XILINX) += xilinx.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_XMC) += xmc.o
|
||||
spi-nor-$(CONFIG_MTD_SPI_NOR_XTX) += xtx.o
|
||||
spi-nor-$(CONFIG_DEBUG_FS) += debugfs.o
|
||||
obj-$(CONFIG_MTD_SPI_NOR) += spi-nor.o
|
||||
|
||||
|
||||
@@ -1753,29 +1753,75 @@ int spi_nor_sr2_bit2_quad_enable(struct spi_nor *nor)
|
||||
}
|
||||
|
||||
static const struct spi_nor_manufacturer *manufacturers[] = {
|
||||
#ifdef CONFIG_MTD_SPI_NOR_ATMEL
|
||||
&spi_nor_atmel,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_BOYA
|
||||
&spi_nor_boya,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_CATALYST
|
||||
&spi_nor_catalyst,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_DOSILICON
|
||||
&spi_nor_dosilicon,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_EON
|
||||
&spi_nor_eon,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_ESMT
|
||||
&spi_nor_esmt,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_EVERSPIN
|
||||
&spi_nor_everspin,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_FMSH
|
||||
&spi_nor_fmsh,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_FUJITSU
|
||||
&spi_nor_fujitsu,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_GIGADEVICE
|
||||
&spi_nor_gigadevice,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_NORMEM
|
||||
&spi_nor_normem,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_INTEL
|
||||
&spi_nor_intel,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_ISSI
|
||||
&spi_nor_issi,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_MACRONIX
|
||||
&spi_nor_macronix,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_STMICRO
|
||||
&spi_nor_micron,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_PUYA
|
||||
&spi_nor_puya,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_STMICRO
|
||||
&spi_nor_st,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_SPANSION
|
||||
&spi_nor_spansion,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_SST
|
||||
&spi_nor_sst,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_WINBOND
|
||||
&spi_nor_winbond,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_XILINX
|
||||
&spi_nor_xilinx,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_XMC
|
||||
&spi_nor_xmc,
|
||||
#endif
|
||||
#ifdef CONFIG_MTD_SPI_NOR_XTX
|
||||
&spi_nor_xtx,
|
||||
#endif
|
||||
};
|
||||
|
||||
static const struct flash_info *spi_nor_match_id(struct spi_nor *nor,
|
||||
|
||||
Reference in New Issue
Block a user