# Configure standard kernel features changes many other option

## shin938

Hi

When I try to follow Power Management Guide the first thing is to enable "Configure standard kernel features".

I have a perfectly working kernel, but after I enable this option some other kernel options change also and some things are not working anymore, for example my wireless logitech mouse.

these are the changes that i have after enabling "Configure standard kernel features":

these:

CONFIG_RD_BZIP2=y

CONFIG_RD_LZMA=y

CONFIG_RD_XZ=y

CONFIG_RD_LZO=y

change to :

# CONFIG_RD_BZIP2 is not set

# CONFIG_RD_LZMA is not set

# CONFIG_RD_XZ is not set

# CONFIG_RD_LZO is not set

I understand that

# CONFIG_EXPERT is not set

change to

CONFIG_EXPERT=y

CONFIG_RFKILL_INPUT=y

change to:

# CONFIG_RFKILL_INPUT is not set

CONFIG_DEBUG_MEMORY_INIT=y

changes to:

# CONFIG_DEBUG_MEMORY_INIT is not set

this block:

CONFIG_HID_A4TECH=m

# CONFIG_HID_ACRUX is not set

CONFIG_HID_APPLE=m

CONFIG_HID_BELKIN=m

CONFIG_HID_CHERRY=m

CONFIG_HID_CHICONY=m

# CONFIG_HID_PRODIKEYS is not set

CONFIG_HID_CYPRESS=m

# CONFIG_HID_DRAGONRISE is not set

# CONFIG_HID_EMS_FF is not set

CONFIG_HID_EZKEY=m

# CONFIG_HID_HOLTEK is not set

# CONFIG_HID_KEYTOUCH is not set

CONFIG_HID_KYE=m

# CONFIG_HID_UCLOGIC is not set

# CONFIG_HID_WALTOP is not set

# CONFIG_HID_GYRATION is not set

# CONFIG_HID_TWINHAN is not set

CONFIG_HID_KENSINGTON=m

# CONFIG_HID_LCPOWER is not set

CONFIG_HID_LOGITECH=m

CONFIG_HID_LOGITECH_DJ=m

CONFIG_LOGITECH_FF=y

# CONFIG_LOGIRUMBLEPAD2_FF is not set

# CONFIG_LOGIG940_FF is not set

CONFIG_LOGIWHEELS_FF=y

CONFIG_HID_MICROSOFT=m

CONFIG_HID_MONTEREY=m

changes to:

# CONFIG_HID_A4TECH is not set

# CONFIG_HID_ACRUX is not set

# CONFIG_HID_APPLE is not set

# CONFIG_HID_BELKIN is not set

# CONFIG_HID_CHERRY is not set

# CONFIG_HID_CHICONY is not set

# CONFIG_HID_PRODIKEYS is not set

# CONFIG_HID_CYPRESS is not set

# CONFIG_HID_DRAGONRISE is not set

# CONFIG_HID_EMS_FF is not set

# CONFIG_HID_EZKEY is not set

# CONFIG_HID_HOLTEK is not set

# CONFIG_HID_KEYTOUCH is not set

# CONFIG_HID_KYE is not set

# CONFIG_HID_UCLOGIC is not set

# CONFIG_HID_WALTOP is not set

# CONFIG_HID_GYRATION is not set

# CONFIG_HID_TWINHAN is not set

# CONFIG_HID_KENSINGTON is not set

# CONFIG_HID_LCPOWER is not set

# CONFIG_HID_LOGITECH is not set

# CONFIG_HID_MICROSOFT is not set

# CONFIG_HID_MONTEREY is not set

# CONFIG_HID_MULTITOUCH is not set

so I don't understand whats going on , I'm sure I can reenable the lost options but not sure this is the right way to go.

anyone know to explain that?

Thank you

----------

## i92guboj

I am not familiar with all this HID stuff and I don't have my box at hand to check right now. 

But the kernel configuration works that way. There's a dependency between the different tokens, in a way that enabling or disabling a given code path will (or might) incluence the rest of the configuration, because some modules or parts of the kernel depend on some others. You could manually change the config file, but that won't (and should not) change anything because the make scripts have checks to ensure that the configuration is consistent. That's why, in first place, you are able to run things like "make oldconfig" to fix inconsistencies in the .config file and be able to compile the kernel. It will check, amongst other things, that there are no incompatible options set (or in the case, unset) simultaneously.

I can't be any more concrete on your concrete case because, as said, I am not too familiar with the HID stuff, besides setting the basics to use an USB keyboard.

----------

## shin938

 *i92guboj wrote:*   

> I am not familiar with all this HID stuff and I don't have my box at hand to check right now. 
> 
> But the kernel configuration works that way. There's a dependency between the different tokens, in a way that enabling or disabling a given code path will (or might) incluence the rest of the configuration, because some modules or parts of the kernel depend on some others. You could manually change the config file, but that won't (and should not) change anything because the make scripts have checks to ensure that the configuration is consistent. That's why, in first place, you are able to run things like "make oldconfig" to fix inconsistencies in the .config file and be able to compile the kernel. It will check, amongst other things, that there are no incompatible options set (or in the case, unset) simultaneously.
> 
> I can't be any more concrete on your concrete case because, as said, I am not too familiar with the HID stuff, besides setting the basics to use an USB keyboard.

 

Thank you for you answer.

I also don't know much about this HID stuff, I only know that some of the options there made my logitech wireless mouse work.

I just selected "Configure standard kernel features" as guided by the power management guide and re-enabled the options that where automatically unselected. compiled and everything works.

Thank you

----------

## Hu

I did not check every option you listed, but of those that I did check, all are default !EXPERT, default y if !EXPERT, etc.  This ensures they are enabled if !EXPERT, since you must have EXPERT set to see them and most non-experts will want them enabled.  When you set EXPERT=y, the guide rails were removed and those options switched off automatically.  There are a few major configuration items, such as that one and EMBEDDED=y, that control many features.  When you toggle some of the master switches like that, it is a good idea to review the entire kernel configuration afterward.

----------

## shin938

Thank you.

I always compare the config to the last good one I had  so I can review whats going on.

anyway , I got it working with a few minor changes.

Thanks

----------

