Linux 2.6.23 integration: Difference between revisions
From ArmadeusWiki
No edit summary |
|||
(33 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
==Generic== | |||
* in in arch/arm/mach-imx/generic.c line 338, remove __init in void __init set_imx_fb_info(struct imxfb_mach_info *hard_imx_fb_info) otherwise kernel gives compilation warning: | |||
WARNING: vmlinux.o(__ksymtab+0x3d8): Section mismatch: reference to .init.text:set_imx_fb_info (between '__ksymtab_set_imx_fb_info' and '__ksymtab_imx_get_usb_clk') | |||
* in arch/arm/mach-imx/apf9328.c line 28, config.h doesn't exist anymore | |||
* do some modifications in scripts/checksyscalls.sh to prevent "missing syscalls warning" | |||
==Serial== | |||
* Serial registers Macros (like UFCR()) have been moved from imx-regs.h -> imx serial driver C file. So in apf9328.c we should remove these lines: | * Serial registers Macros (like UFCR()) have been moved from imx-regs.h -> imx serial driver C file. So in apf9328.c we should remove these lines: | ||
// Serial | // Serial | ||
UFCR(IMX_UART1_BASE) = 0xa81; | UFCR(IMX_UART1_BASE) = 0xa81; | ||
UFCR(IMX_UART2_BASE) = 0xa81; | UFCR(IMX_UART2_BASE) = 0xa81; | ||
==I2C== | |||
* in ''drivers/i2c/busses/i2c-imx.c'', SA_INTERRUPT is now obsolete and should be replaced by IRQF_DISABLED in request_irq() (line 575) | |||
* in drivers/i2c/busses/i2c-imx.h line 63, replace #define I2C_IMX_DEFAULT_CLKDIV 0x0f with #define I2C_IMX_DEFAULT_CLKDIV 16 otherwise it's giving error in driver compilation | |||
* in drivers/i2c/busses/i2c-imx.h line 104, struct i2c_algorithm doesn't have slave_send nor slave_recv anymore | |||
==MTD== | |||
* in drivers/mtd/maps/apf9328.c line 28, consistent_sync() should be replaced by flush_ioremap_region() otherwise kernel is crashing (+adding of #include <asm/cacheflush.h>) | |||
==RTC== | |||
* in drivers/rtc/rtc-ds1374.c line 59 ''dev_dbg(&client->dev, "%s: raw read data...'' should be commented otherwise not compiling | |||
==Backlight== | |||
* struct backlight_properties backlight_device have changed backlight_operations was introduced | |||
* backlight_device_register() prototype has changed... | |||
==PWM== | |||
* remove warnings in driver | |||
* use IRQF_DISABLE | |||
==Patches to remove ??== | |||
* 012-linux-2.6.23.1-apm9328.diff | |||
==Problems encountered== | |||
* kernel is 4,3MBytes big -> LD bug ?? -> http://lkml.org/lkml/2007/9/14/303 + mailing list arm (pb appear with 2.6.22) | |||
==Drivers test summary== | |||
{| border="1" cellpadding="5" cellspacing="0" summary="MMC+" | |||
|- style="background:#efefef;" | |||
! '''Device''' || colspan="2" | '''Compiling ? <br> Static / Module''' || ''' Working ? ''' || '''Comments''' | |||
|---------------- | |||
|'''ADC''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''Backlight''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''CH7024 (Video Out)''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''DAC''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''Ethernet (DM9000)''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''FPGA PS/2''' || NT || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''LCD''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK || message starting PID 235, tty | |||
|---------------- | |||
|'''MMC/SD''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | MMC OK || Linux boot on MMC Ok | |||
|---------------- | |||
|'''PWM classic''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || [[PWM]] | |||
|---------------- | |||
|'''PWM sound''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || [[PWM]] | |||
|---------------- | |||
|'''RTC''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''Serial''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | both OK || | |||
|---------------- | |||
|'''TSC2102''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || ts_test is not compiled :( | |||
|---------------- | |||
|'''USB (gadget)''' || style="background:#00ff00;" | OK || NT || style="background:#00ff00;" | Serial + Storage OK || [[USB_Gadget]] | |||
|---------------- | |||
|'''USB (host)''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || | |||
|---------------- | |||
|'''Watchdog''' || NA || NA || NA || | |||
|---------------- | |||
|} |
Latest revision as of 00:09, 3 December 2007
Generic
- in in arch/arm/mach-imx/generic.c line 338, remove __init in void __init set_imx_fb_info(struct imxfb_mach_info *hard_imx_fb_info) otherwise kernel gives compilation warning:
WARNING: vmlinux.o(__ksymtab+0x3d8): Section mismatch: reference to .init.text:set_imx_fb_info (between '__ksymtab_set_imx_fb_info' and '__ksymtab_imx_get_usb_clk')
- in arch/arm/mach-imx/apf9328.c line 28, config.h doesn't exist anymore
- do some modifications in scripts/checksyscalls.sh to prevent "missing syscalls warning"
Serial
- Serial registers Macros (like UFCR()) have been moved from imx-regs.h -> imx serial driver C file. So in apf9328.c we should remove these lines:
// Serial UFCR(IMX_UART1_BASE) = 0xa81; UFCR(IMX_UART2_BASE) = 0xa81;
I2C
- in drivers/i2c/busses/i2c-imx.c, SA_INTERRUPT is now obsolete and should be replaced by IRQF_DISABLED in request_irq() (line 575)
- in drivers/i2c/busses/i2c-imx.h line 63, replace #define I2C_IMX_DEFAULT_CLKDIV 0x0f with #define I2C_IMX_DEFAULT_CLKDIV 16 otherwise it's giving error in driver compilation
- in drivers/i2c/busses/i2c-imx.h line 104, struct i2c_algorithm doesn't have slave_send nor slave_recv anymore
MTD
- in drivers/mtd/maps/apf9328.c line 28, consistent_sync() should be replaced by flush_ioremap_region() otherwise kernel is crashing (+adding of #include <asm/cacheflush.h>)
RTC
- in drivers/rtc/rtc-ds1374.c line 59 dev_dbg(&client->dev, "%s: raw read data... should be commented otherwise not compiling
Backlight
- struct backlight_properties backlight_device have changed backlight_operations was introduced
- backlight_device_register() prototype has changed...
PWM
- remove warnings in driver
- use IRQF_DISABLE
Patches to remove ??
- 012-linux-2.6.23.1-apm9328.diff
Problems encountered
- kernel is 4,3MBytes big -> LD bug ?? -> http://lkml.org/lkml/2007/9/14/303 + mailing list arm (pb appear with 2.6.22)
Drivers test summary
Device | Compiling ? Static / Module |
Working ? | Comments | |
---|---|---|---|---|
ADC | NA | OK | OK | |
Backlight | OK | OK | OK | |
CH7024 (Video Out) | OK | NA | OK | |
DAC | OK | NA | OK | |
Ethernet (DM9000) | OK | NA | OK | |
FPGA PS/2 | NT | OK | OK | |
LCD | OK | NA | OK | message starting PID 235, tty |
MMC/SD | OK | NA | MMC OK | Linux boot on MMC Ok |
PWM classic | OK | OK | OK | PWM |
PWM sound | NA | OK | OK | PWM |
RTC | OK | OK | OK | |
Serial | OK | NA | both OK | |
TSC2102 | NA | OK | OK | ts_test is not compiled :( |
USB (gadget) | OK | NT | Serial + Storage OK | USB_Gadget |
USB (host) | NA | OK | OK | |
Watchdog | NA | NA | NA |