Difference between revisions of "Linux 2.6.23 integration"

From ArmadeusWiki
Jump to: navigation, search
(Drivers test summary)
(Drivers test summary)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
==Generic==
 
==Generic==
* in in drivers/i2c/busses/i2c-imx.h line 338, remove __init in void __init set_imx_fb_info(struct imxfb_mach_info *hard_imx_fb_info) otherwise kernel gives compilation warning:
+
* 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')
 
  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
 
* 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==
Line 27: Line 28:
 
* remove warnings in driver
 
* remove warnings in driver
 
* use IRQF_DISABLE
 
* use IRQF_DISABLE
*
 
  
 
==Patches to remove ??==
 
==Patches to remove ??==
Line 40: Line 40:
 
! '''Device''' || colspan="2" | '''Compiling ? <br> Static / Module''' || ''' Working ? ''' || '''Comments'''
 
! '''Device''' || colspan="2" | '''Compiling ? <br> Static / Module''' || ''' Working ? ''' || '''Comments'''
 
|----------------
 
|----------------
|'''ADC''' || ??? || NT || NT ||   NA 
+
|'''ADC''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK ||   
 
|----------------
 
|----------------
|'''Backlight''' || style="background:#00ff00;" | OK || NT || NT ||  NA
+
|'''Backlight''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK ||   
 
|----------------
 
|----------------
|'''DAC''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK ||  NA 
+
|'''CH7024 (Video Out)''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK ||   
 
|----------------
 
|----------------
|'''CH7024''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK ||  NA
+
|'''DAC''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK ||   
 
|----------------
 
|----------------
|'''LCD''' || style="background:#00ff00;" | OK || NT || style="background:#00ff00;" | OK || message starting PID 235, tty
+
|'''Ethernet (DM9000)''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK ||  
 
|----------------
 
|----------------
|'''MMC/SD''' || style="background:#00ff00;" | OK || NT || NT ||  NA 
+
|'''FPGA PS/2''' || NT || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK ||   
 
|----------------
 
|----------------
|'''PWM (sound+classic)''' || ??? || NT || NT ||   NA 
+
|'''LCD''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | OK || message starting PID 235, tty
 
|----------------
 
|----------------
|'''RTC''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK ||   NA 
+
|'''MMC/SD''' || style="background:#00ff00;" | OK || NA || style="background:#00ff00;" | MMC OK || Linux boot on MMC Ok
 
|----------------
 
|----------------
|'''TSC2102''' || ??? || NT || NT ||   NA 
+
|'''PWM classic''' || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || [[PWM]]
 
|----------------
 
|----------------
|'''USB (gadget)''' || ??? || NT || NT ||   NA 
+
|'''PWM sound''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK || [[PWM]]
 
|----------------
 
|----------------
|'''USB (host)''' || NA || style="background:#00ff00;" | OK || style="background:#00ff00;" | OK ||   NA   
+
|'''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 23:09, 2 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

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