APF9328 and APF27 migration to Linux 2.6.38

From ArmadeusWiki
Jump to navigationJump to search
This page is too old and need some updates. Informations on this page are not guaranteed !!

Instructions

  • Patches to port: buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/
  • when working on a patch mark it with:
    • ** <span style="color:orange">'''In progress'''</span> ~~~~
    • --> In progress JulienB 14:14, 9 November 2010 (UTC)
  • Strike the one that are no more needed:
    • 000-xxxxxxx.patch
  • Write OK in bold green and your name (automatic with 4x'~') when corresponding patch has been ported:
    • ** <span style="color:green">'''OK'''</span> ~~~~
    • --> 000-xxxxxxx.patch: OK JulienB 07:06, 21 October 2010 (UTC)
  • How to:
$ cd armadeus-xx
$ cp buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/000-foo.patch buildroot/target/device/armadeus/linux/kernel-patches/2.6.38/
$ cd buildroot/output/build/linux-2.6.38.1/
$ patch -p1 --dry-run < ../../../../buildroot/target/device/armadeus/linux/kernel-patches/2.6.38/000-foo.patch

... modify patch until it applies correctly ...

$ patch -p1 < ../../../../buildroot/target/device/armadeus/linux/kernel-patches/2.6.38/000-foo.patch

... go one ...

How to compile kernel ?

  • 1] Select 2.6.38.8 version in Buildroot menuconfig:
Kernel  --->
    (2.6.38.8) Kernel version

Toolchain  --->
    Kernel Headers (Linux 2.6 (manually specified version))  --->
    (2.6.38.8) linux version
  • 2] Change serial console :
System configuration  --->
    (ttymxc0) Port to run a getty (login prompt) on
  • 3] Compile whole Buildroot at least once
  • 4] For the one who knows quilt, they can use scripts/quiltify.sh before starting (procedure in construction)

Things to know BEFORE booting

  • on 2.6.38 i.MX serial port names have been unified to /dev/ttymxc[0-6]. So if you want to see something on your serial console please do the following before booting:
    • APF27
BIOS> setenv consoledev ttymxc0
BIOS> setenv baudrate 115200
  • for the same reason you must also modify buildroot/output/target/etc/inittab and then do a make after a successful build.
  • Framebuffer can now support multiple LCDs and so LCD you want to use must be passed as bootparam (like serial port). So you can do (for example):
BIOS> setenv consoledev ttymxc0
BIOS> setenv baudrate 115200 video=imxfb:Chimei-LW700AT9003
## Switch baudrate to 115200 bps andpress ENTER ...

Things to do AFTER booting

  • if you want to use touchscreen, please uncomment this line in /etc/ts.conf (line 2):
# module_raw input

APF9328 patches

015 -> 040

  • 015-armadeus-logo-add_armadeus-project_tux.patch
    • OK JulienB 14:42, 21 October 2010 (UTC)
  • 016-armadeus-imxfb-add_platform_specific_init_exit_functions.patch
  • 018-armadeus-i2c-imx-add_driver_to_linux_build_system.patch
    • integrated in mainline - GwenhaelG 14:27, 27 November 2010 (UTC)
  • 018-armadeus-i2c-imx.patch
    • integrated in mainline - GwenhaelG 14:27, 27 November 2010 (UTC)
  • 021-armadeus-apf9328_defconfig.patch
  • 021-armadeus-apf9328.patch
    • In progress GwenhaelG 18:40, 21 November 2010 (UTC)
  • 023-armadeus-fblcd-kconfig.patch
  • 024-armadeus-apf9328-add_board_to_linux_build_system.patch
  • 028-armadeus-add_reg8_macro_to_hardware_h.patch
    • obsolete - GwenhaelG 16:46, 4 December 2010 (UTC)
  • 029-armadeus-add_csi_and_spi_registers_to_imx-regs_h.patch
    • OK - GwenhaelG 13:12, 16 December 2010 (UTC)
    • renamed to 029-armadeus-add_csi_and_spi_registers.patch
  • 030-armadeus-fixes_typo_for_usbdrcv_in_imx-regs_h.patch
  • 030-armadeus-imx-generic.patch
    • OK - GwenhaelG 13:12, 16 December 2010 (UTC)
    • renamed to 030-armadeus-imx.patch
  • 030-armadeus-imx_udc-add_clock.patch
    • integrated in mainline - GwenhaelG 16:46, 4 December 2010 (UTC)
  • 030-armadeus-imx_udc-change_source_sink_in_gadget_zero.to_fix
    • obsolete - GwenhaelG 13:12, 16 December 2010 (UTC)
  • 030-armadeus-imx_udc-deactivate_cdc_in_ether_c.to_fix
    • obsolete - GwenhaelG 13:12, 16 December 2010 (UTC)
  • 031-armadeus-imx_udc_add_usb_h_include_to_arch_arm_mach-imx_include_mach.patch
    • integrated in mainline - GwenhaelG 16:46, 4 December 2010 (UTC)
  • 032-armadeus-imx_udc_makes_kconfig_selectable_on_imx_arch.patch
    • obsolete - GwenhaelG 16:46, 4 December 2010 (UTC)
  • 033-darius-imx_udc-fix_imx_udc_gadget_bugs.patch
  • 034-darius-imx_udc-fix_imx_udc_gadget_code_style.patch
  • 035-darius-imx_udc-fix_imx_udc_gadget_ep0_irq_handling.patch
  • 036-darius-imx_udc-fix_imx_udc_gadget_general_irq_handling.patch
  • 037-armadeus-imx_udc-add_printk_when_probed.patch
  • 038-armadeus-imx_udc-prevent_crash_after_soft_reboot.patch
  • 040-armadeus-imxmmc-add_controller_driven_card_detection.patch
    • In progress GwenhaelG 18:40, 21 November 2010 (UTC)
  • 040-armadeus-imxmmc-correct_some_freezes.patch
    • In progress GwenhaelG 18:40, 21 November 2010 (UTC)

041 -> 099

  • 041-armadeus-imx_irq.patch
    • obsolete - GwenhaelG 08:06, 18 December 2010 (UTC)
  • 050-armadeus-add_custom_drivers_to_kconfig.patch
  • 063-armadeus-max1027-add_max1027_include.patch
  • 072-armadeus-add_backlight_machinfo_to_imxfb_h.patch
  • 073-armadeus-tsc2102_integrate_driver_to_linux_build_system.patch
  • 073-armadeus-tsc2102.patch
  • 074-armadeus-tsc2102-touchscreen-add_driver_to_linux_build_system.patch
  • 074-armadeus-tsc2102-touchscreen.patch
  • 075-armadeus-spi2-reg-irq-defines.patch
    • In progress - GwenhaelG 07:54, 17 December 2010 (UTC)
  • 076-arm-vmlinux-ld_script_patch_for_new_binutils.patch
    • obsolete -- GwenhaelG 09:01, 18 December 2010 (UTC)
  • 077-arm-checksyscalls.patch
    • obsolete -- GwenhaelG 09:01, 18 December 2010 (UTC)
  • 080-apf9328-armadeus-makes_mach-imx_gpio_h_includable_more_than_once.patch
    • obsolete -- GwenhaelG 07:54, 17 December 2010 (UTC)
  • 088-can-mcp2515.patch
    • In progress - GwenhaelG 07:54, 17 December 2010 (UTC)
  • 090-armadeus-alsa-create_imx-alsa_h.patch
  • 091-armadeus-alsa-add_imx_ssi_tsc2102_driver.patch
  • 092-armadeus-alsa-imx-ssi-tsc2102-integrate_driver_to_linux_build_system.patch
  • 094-armadeus-rtc1374-legacy.patch
    • obsolete -- JulienB 21:42, 21 December 2010 (UTC)
  • 095-armadeus-imx-ssi-add_driver.patch
    • obsolete -- JulienB 17:31, 7 February 2011 (UTC)
  • 096-armadeus-clock-add_ssi_clk.patch
    • obsolete -- JulienB 17:31, 7 February 2011 (UTC)
  • 097-armadeus-imx-dma-improvements.patch
  • 098-armadeus-imx-dma-announce_imx_is_supporting_scatter_gather.patch
  • 099-armadeus-imx_clock-adds_fake_clk_set_rate.patch

100 -> 199

  • 100-armadeus-imx-serial-dont_allocate_rts_interrupt_if_not_needed.patch
    • In progress GwenhaelG 15:08, 7 November 2010 (UTC)
  • 199-armadeus-hack_kernel_to_export_some_irq_handling_functions.patch

APF27 patches

220 -> 240

  • 220-apf27-pengu-fec-old.patch
    • obsolete: fec_old has been replaced by fec in mainline - JulienB 08:58, 26 November 2010 (UTC)
  • 221-apf27-armadeus-fec-old_fixes.patch
    • obsolete: same comment as above - JulienB 09:00, 26 November 2010 (UTC)
  • 226-apf27-pengu-mx27-Camera_support.patch
  • 227-apf27-pengu-mx27-Add_simple_CPU_frequency_scaling_support.patch
  • 230-apf27-pengu-mx2_devices_full.patch
  • 231-apf27-pengu-mxc_i2c_driver.patch
    • integrated in mainline (merge with MX1 one) - JulienB 15:06, 25 November 2010 (UTC)
  • 233-apf27-pengu-mx2_framebuffer_beta.patch
    • Freescale framebuffer. rename patch to show this better... JulienB 15:25, 25 November 2010 (UTC)
  • 234-apf27-armadeus-mx2_framebuffer_beta_update_for_2_6_27.patch
  • 235-apf27-armadeus-mx2_framebuffer-makes_it_work_with_8bpp.patch
  • 235-apf27-pengu-make_pcm038_full_featured.patch
    • integrated in mainline - JulienB 15:28, 25 November 2010 (UTC)
  • 235-apf27-pengu-pcm038-add_BSP_part_of_the_CPU_frequency_scaler.patch
  • 237-apf27-pengu-pcm970-Extend_to_current_development_status.patch
  • 238-apf27-pengu-mx27-Add_an_ALSA_driver_for_iMX27.patch
    • integrated in mainline in a different form -- JulienB 17:45, 7 February 2011 (UTC)
  • 238-apf27-pengu-pcm038-Add_ALSA_audio_support.patch
    • obsolete -- JulienB 17:45, 7 February 2011 (UTC)
  • 239-apf27-armadeus-alsa-remove_mc13783_from_mx27_snd_driver_compilation.patch
    • depends on 238
  • 240-apf27-armadeus-fixe-bugs-drivers_mxc_nand.c.patch
    • OK JulienB 14:16, 9 November 2010 (UTC)
      • Divided into 2 patches
      • ecc_layout to be checked by Jorasse

252 -> 276

  • 252-apf27-pengu-m27-we_can_do_DMA_chaining.patch
  • 256-apf27-pengu-mx27-Add_USB_resources_and_platform_devices.patch
    • integrated in mainline -- JulienB 20:16, 24 November 2010 (UTC)
  • 257-apf27-pengu-mx27-Add_EHCI_support.patch
    • partially integrated, to check where ULPI part is gone...
  • 270-apf27-armadeus-imxmmc-add_sdhc1_resources_to_arch_arm_mach-mx2_device.patch
    • integrated in mainline -- JulienB 20:16, 24 November 2010 (UTC)
  • 271-apf27-armadeus-imxmmc-add_missing_definitions_in_dma-mx1-mx2_h.patch
    • obsolete, imxmmc driver needs to be cleanup instead -- JulienB 21:56, 21 December 2010 (UTC)
  • 272-apf27-armadeus-mxcmmc-add_sdhc2_pins_in_iomux-mx1-mx2_h.patch
    • obsolete -- JulienB 20:16, 24 November 2010 (UTC)
  • 273-apf27-armadeus-imxmmc-create_arch_arm_plat-mxc_include_mach_mmc_h.patch
    • obsolete - imxmmc driver has to be cleanup instead -- JulienB 22:13, 21 December 2010 (UTC)
  • 274-apf27-armadeus-mxcmmc-improve_support_of_sdio_cards.patch
    • partially integrated in mainline, rest is OK -- JulienB 09:45, 16 February 2011 (UTC)

280 -> 299

  • 280-apf27-armadeus-correct_bugs_in_clock_infrastructure.patch
    • corrected in a better way by mainline - JulienB 15:30, 9 November 2010 (UTC)
  • 281-apf27-armadeus-add_apf27.c.patch
    • In progress JulienB 14:26, 8 November 2010 (UTC)
    • arch/arm/mach-mx2 has been renamed arch/arm/mach-imx
  • 282-apf27-armadeus-add_apf27_to_build_system.patch
    • In progress JulienB 14:26, 8 November 2010 (UTC)
    • arch/arm/mach-mx2 has been renamed arch/arm/mach-imx
  • 283-apf27-armadeus-add_dump_uart_registers_function_to_imx_serial_driver.patch
    • no more useful - JulienB 07:19, 25 November 2010 (UTC)
  • 285-apf27-armadeus-add_LQO43_to_mxcfb_modedb.patch
  • 286-apf27-armadeus-add_LQO57_to_mxcfb_modedb.patch
  • 286b-apf27-armadeus-add_LW700AT9003_to_mxcfb_modedb.patch
  • 286c-apf27-armadeus-add_Optrex-T51638D084_to_mxcfb_modedb.patch
  • 286d-apf27-armadeus-add_TX12D17VM1BDP_to_mxcfb_modedb.patch
  • 286z-apf27-armadeus-add_CUSTOM_LCD_template_to_mxcfb_modedb.patch
  • 287-apf27-armadeus-fix_usb_otg_int.patch
    • integrated in mainline - JulienB 19:42, 24 November 2010 (UTC)
  • 288-apf27-set-ttySMX-ref-imx-uart.patch
    • To remove and inform users that now serial ports are ttymxc[0-6] -- JulienB 18:13, 7 February 2011 (UTC)
  • 290-apf27-pengu-spi_addons.patch
    • OK, renamed to 290-armadeus-mx2-iomux-add_correct_directions_to_SPI2_gpios.patch - JulienB 08:26, 22 December 2010 (UTC)
  • 291-apf27-add_debug_support_with_UART1.patch
    • no more needed - JulienB 15:35, 9 November 2010 (UTC)
  • 291-apf27-armadeus-add_mach_board-apf27_h.patch
    • OK - JulienB 09:55, 22 December 2010 (UTC)
  • 292-apf27-armadeus-i2c-fix.patch
  • 293-apf27-armadeus-spi_imx-add_gpio_init_and_iMX27_support.patch
    • probably obsolete, to check...- JulienB 08:58, 22 December 2010 (UTC)
    • moved SPI bus selection outside of it -> 293-armadeus-spi_imx-add_config_options_to_individually_activate_spi_busses.patch -- JulienB 15:10, 7 January 2011 (UTC)
  • 294-apf27-armadeus-imxfb-create_imx_fb_h.patch
    • needed by Freescale framebuffer
  • 294b-apf27-armadeus-imxfb-create_imxfb_h.patch
    • obsolete -- JulienB 18:13, 7 February 2011 (UTC)
  • 295-apf27-armadeus-imxfb-modify_imxfb_device_name_for_freescale_driver.patch
  • 296-apf27-armadeus-imx27-usb-host1.patch
    • integrated in mainline - JulienB 15:30, 9 November 2010 (UTC)
  • 297-apf27-armadeus-add_backlight_machinfo_to_plat_mxc_imxfb_h.patch
  • 297-apf27-armadeus-add_ethernet_PHY.patch
  • 299-apf27-armadeus-reboot.patch
    • no more needed - JulienB 15:30, 9 November 2010 (UTC)

300 -> 320

  • 300-apf27-armadeus-jffs2_debug.patch
    • no more needed - JulienB 07:28, 25 November 2010 (UTC)
  • 301-apf27-armadeus-ssi-SSI1_TXD_is_an_ouput_not_an_input.patch
    • OK - JulienB 10:02, 25 November 2010 (UTC)
    • renamed to 301-armadeus-mx2_ssi-SSIn_TXD_are_ouputs_not_inputs.patch
  • 302-apf27-armadeus-add_imx-alsa_h_to_plat-mxc_include_mach.patch
  • 303-apf27-armadeus-improve_mx2-dam_driver.patch
  • 304-apf27-armadeus-improve_mx2-ssi_driver.patch
  • 305-apf27-armadeus-separates_imx_and_mx2_alsa_build.patch
  • 310-apf27-armadeus-nfc-makes_it_compile_with_CONFIG_PM.patch
    • no more needed - JulienB 15:29, 9 November 2010 (UTC)
  • 311-apf27-armadeus-mx27-add_pm_infra.patch
  • 312-apf27-armadeus-ulpi-add_function_control_register_address.patch
  • 314-apf27-armadeus-ad9889.patch
    • OK - JulienB 10:12, 25 November 2010 (UTC)
    • renamed to 314-armadeus-ad9889-add_driver.patch
  • 315-apf27-darius-mxc-watchdog.patch
    • OK - JulienB 10:45, 25 November 2010 (UTC)
    • now only used for MX1, as MX2+ driver has been committed in mainline
    • renamed to 315-darius-imx_wdt-add_watchdog_driver.patch
  • 316-apf27-armadeus-watchdog-makes_darius_driver_work_on_mx27.patch
    • obsolete - JulienB 10:45, 25 November 2010 (UTC)
  • 317-apf27-armadeus-add_kconfig_option_to_use_imx_led_and_switch_for_powermanagement_test.patch
  • 318-apf27-pengu-mxc_add_vpu_driver.patch
  • 319-armadeus-soc_camera_add_ov96xx_sensors_driver.patch
    • OK, patch applies but driver needs to be ported (doesn't compile) - JulienB 14:03, 22 December 2010 (UTC)
  • 320-apf27-armadeus-increase_max_dma_zone_size.patch

320 -> 339

  • 321-apf27-armadeus-mx2_adds_pwm_ressources.patch
    • integrated in mainline - JulienB 19:14, 25 November 2010 (UTC)
  • 321-apf27-armadeus-mx2_pwm_fixes.patch
    • check if PE5_PF_PWM0 needs to be forced as GPIO_OUT - JulienB 19:19, 25 November 2010 (UTC)
  • 322-apf27-armadeus-add_mach_fpga_h.patch
    • OK - JulienB 19:25, 25 November 2010 (UTC)
  • 323-apf27-armadeus-increases_board_irq_number.patch
    • OK - JulienB 19:38, 25 November 2010 (UTC)
  • 323-pengu-imxfb-add_platform_specific_init_exit_functions.patch
    • integrated in mainline - JulienB 19:43, 25 November 2010 (UTC)
  • 324-armadeus-declare_scatter_gather_support_in_linux_scatterlist_h.patch
  • 325-pengu-imxfb-add_mx27_support.patch
    • integrated in mainline - JulienB 16:29, 25 November 2010 (UTC)
  • 327-pengu-imxfb-fix_margin_settings.patch
    • integrated in mainline - JulienB 16:32, 25 November 2010 (UTC)
  • 328-pengu-imxfb-add_clock_support.patch
    • partly integrated, to check if pcr recalculation is still needed. JulienB 16:43, 25 November 2010 (UTC)
  • 329-pengu-imxfb-fix_tft_mode_init.patch
    • integrated in mainline - JulienB 16:43, 25 November 2010 (UTC)
  • 330-armadeus-imxfb-makes_mainline_driver_selectable_for_mx2.patch
    • integrated in mainline - JulienB 16:59, 25 November 2010 (UTC)
  • 330-armadeus-imxfb-power_on_backlight_after_lcd_logic.patch
    • OK - JulienB 16:55, 25 November 2010 (UTC)
  • 331-armadeus-imxfb-makes_setpalettereg_compatible_with_mx27.patch
    • OK - JulienB 17:05, 25 November 2010 (UTC)
  • 332-armadeus-imxfb-improvements.patch
    • depends on 328 (pcr)
  • 333-armadeus-imxfb-makes_plat-mxc_imxfb_h_compatible_with_mx27.patch
    • OK - JulienB 17:36, 25 November 2010 (UTC)
    • renamed to 333-armadeus-imxfb-makes_distinction_between_mx1_and_mx2_bit_per_pixel_selection_in_PCR_fields.patch
  • 334-armadeus-imxfb-supports_8bpp_in_tft_mode.patch
    • depends on 332
  • 336-armadeus-imxfb-makes_it_compatible_with_arch_imx.patch
    • obsolete - JulienB 17:44, 25 November 2010 (UTC)
  • 337-armadeus-imxfb-add_lcd_clock_def_for_imx_platform.patch
    • obsolete - JulienB 17:48, 25 November 2010 (UTC)
  • 337b-armadeus-mx2fb-add_backlight_power_switch_capability.patch
  • 338-denx-mxcgpio-emulates_interrupt_on_both_edges.patch
    • integrated in mainline - JulienB 19:33, 24 November 2010 (UTC)
  • 339-apf27-armadeus-add_platform_data_init_support_to_spidev.patch
    • OK - JulienB 19:05, 25 November 2010 (UTC)

340 -> 349

  • 340-apf27-martin-keypad-add_driver_for_mx2.patch
    • another driver seems to have been integrated in mainline... To check
  • 341-apf27-armadeus-serial-add_uart_modules_selection_in_kconfig.patch
    • OK - JulienB 09:30, 26 November 2010 (UTC)
  • 342-apf27-armadeus-serial-some_uart_pins_are_not_available_on_apf27_based_designs.patch
    • OK - JulienB 09:35, 26 November 2010 (UTC)
  • 343-apf27-amoled-hx5116.patch
  • 345-apf27-armadeus-iomux-display_gpio_number_when_reservation_fails.patch
    • OK - JulienB 09:43, 26 November 2010 (UTC)
  • 346-smsc-lan95xx-activates_led_outputs.patch
    • integrated in mainline - JulienB 09:48, 26 November 2010 (UTC)
  • 347b-smsc-lan95xx-add_additionnal_USB_products_IDs.patch
    • integrated in mainline - JulienB 09:48, 26 November 2010 (UTC)
  • 347c-armadeus-lan95xx-activate_blinking_leds.patch
    • OK - JulienB 09:58, 26 November 2010 (UTC)
  • 347-smsc-lan95xx-removes_eeprom_loaded_check.patch
    • integrated in mainline - JulienB 09:48, 26 November 2010 (UTC)
  • 348-armadeus-plat-mxc-gpio.patch
    • integrated in mainline - JulienB 08:04, 7 February 2011 (UTC)
  • 349-armadeus-spi-backport_2.6.32.2.patch

350 -> ...

  • 350-armadeus-spi-improve_spi_gpio_for_single_data_pin.patch
  • 351-armadeus-spi_imx-update_for_2.6.32_compatibility.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 352-armadeus-time-fix_timekeeping_resume.patch
    • to check
  • 355a-denx-fsl_udc-Add_iMX3x_support_to_the_fsl_usb2_udc_driver.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 355b-montavista-fsl_udc_core-fix_kernel_oops_on_module_removal.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 355c-armadeus-mx2-devices-add_usb_device.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 355d-armadeus-fsl_udc-add_platform_init_support.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 355e-armadeus-fsl_udc-reset_temporary_fix.patch
    • to check...
  • 356-armadeus-soc_camera-add_ov7670_sensor_driver.patch
  • 357-armadeus-mx27camera-add_CSICR1_REDGE_handling.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 358-armadeus-imx-adding_mangling_capability_on_i2c_imx_driver.patch
    • OK FabienM 11:17, 13 December 2010 (UTC)
  • 359-armadeus-joystick-adding_as5011_joystick_driver.patch
    • Under 2.6.38 kernel now.FabienM 14:37, 28 January 2011 (UTC)
  • 361-armadeus-soc_camera-add_ov3640_sensor_driver.patch
  • 362-apf27-armadeus-fec-old_ifconfig_up_down_fix.patch
    • patch is obsolete as we now use fec and not fec_old, but problem seems still to be here on fec
  • 363-armadeus-ADC-Adding_AS1531_adc_driver.patch
  • 364-armadeus-add_usb3315_registers_definition_in_ulpi_h.patch
    • no more needed -- JulienB 16:50, 7 February 2011 (UTC)
  • 365-pps-armadeus-add_pps_baseboard.patch