Difference between revisions of "Kernel 3.4 to 3.10 porting guide"

From eLinux.org
Jump to: navigation, search
(add commit link for __devinitdata removal)
Line 4: Line 4:
 
** background: __devexit was an attribute used on certain driver routines.  It was removed between 3.4 and 3.10, and should no longer be used
 
** background: __devexit was an attribute used on certain driver routines.  It was removed between 3.4 and 3.10, and should no longer be used
 
** just remove the attribute from any functions it is used with
 
** just remove the attribute from any functions it is used with
 +
----
 +
* __devinitdata is no longer used (or defined)
 +
** background: __devinitdata was an attribute used on certain data declarations.  It was removed between 3.4 and 3.10 and should not longer be used
 +
** see this commit: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=54b956b903607
 +
** just remove the attribute from any declarations is it used with
 
----
 
----
 
* sysdev.h is gone, along with all it declared:
 
* sysdev.h is gone, along with all it declared:

Revision as of 16:05, 10 July 2013

Here are some issues you may run into when porting something from 3.4 to 3.10:

  • __devexit is no longer used (or defined)
    • background: __devexit was an attribute used on certain driver routines. It was removed between 3.4 and 3.10, and should no longer be used
    • just remove the attribute from any functions it is used with


  • sysdev.h is gone, along with all it declared:
    • struct sys_device, struct sysdev_attribute

  • arch/arm/include/asm/hardware/gic.h was moved to include/linux/irqchip/arm-gic.h
    • change #include <asm/hardware/gic.h> to #include <linux/irqchip/arm-gic.h>