Issue with FTDI USB-Serial chip

It means you are trying to remove the FTDI and USB_SERIAL drivers as if they were kernel modules, but you cannot do this because these drivers are built in kernel.
When you build a kernel, you can decide to include a driver as builtin or as module. Only the latter can be dynamically loaded/unloaded.

To get a complete list in terms of feature names just look at “/proc/config.gz”. This is an in-RAM reflection of the features at the time which that kernel was compiled. “=Y” is integrated, “=m” is module.

In a similar (but far more detailed way) “/proc/kallsyms” lists exported symbols…there are many more symbols in a kernel than there are configurable features, e.g.:

cat /proc/kallsyms

…these symbols are at the system call or C level.

I see in one lsmod “bluedroid_pm”. Compare:

zcat /proc/config.gz | grep -i bluedroid
cat /proc/kallsyms | grep -i bluedroid

Thank you for pointing me to config.gz. Both USB_SERIAL and FTDI_SIO are listed as ‘y’. Does that mean my only option is to recompile the kernel?

If you want to remove those features, then yes. If you want them as modules, then you must remove the “=y” and specify instead as a module (resulting in “=m”).

Not all features can be installed as a module, but I suspect these won’t have a problem with it. Your config editor (such as “make menuconfig” or “make nconfig”) will only offer options which are valid (versus directly editing a .config file).

You can refer to this link of mine to solve this problem. https://blog.csdn.net/limuyuanrs/article/details/108874713