Revision: 100
          http://svn.sourceforge.net/mactel-linux/?rev=100&view=rev
Author:   huceke
Date:     2007-04-07 05:59:40 -0700 (Sat, 07 Apr 2007)

Log Message:
-----------
Fixed framebuffer

Modified Paths:
--------------
    trunk/mach_linux_boot/kernel/config-2.6.20-appletv
    trunk/mach_linux_boot/loader_init.c

Added Paths:
-----------
    trunk/mach_linux_boot/kernel/2.6.20.6-apletv.patch

Added: trunk/mach_linux_boot/kernel/2.6.20.6-apletv.patch
===================================================================
--- trunk/mach_linux_boot/kernel/2.6.20.6-apletv.patch                          
(rev 0)
+++ trunk/mach_linux_boot/kernel/2.6.20.6-apletv.patch  2007-04-07 12:59:40 UTC 
(rev 100)
@@ -0,0 +1,261 @@
+diff -uNr linux-2.6.20.6/arch/i386/kernel/e820.c 
linux-2.6.20.6-appletv/arch/i386/kernel/e820.c
+--- linux-2.6.20.6/arch/i386/kernel/e820.c     2007-04-07 14:48:09.000000000 
+0200
++++ linux-2.6.20.6-appletv/arch/i386/kernel/e820.c     2007-04-07 
10:22:54.000000000 +0200
+@@ -828,6 +828,9 @@
+       u64 start = s;
+       u64 end = e;
+       int i;
++
++      if (efi_enabled) return 1;
++
+       for (i = 0; i < e820.nr_map; i++) {
+               struct e820entry *ei = &e820.map[i];
+               if (type && ei->type != type)
+diff -uNr linux-2.6.20.6/arch/i386/kernel/efi.c 
linux-2.6.20.6-appletv/arch/i386/kernel/efi.c
+--- linux-2.6.20.6/arch/i386/kernel/efi.c      2007-04-07 14:48:09.000000000 
+0200
++++ linux-2.6.20.6-appletv/arch/i386/kernel/efi.c      2007-04-07 
10:43:43.000000000 +0200
+@@ -481,39 +481,39 @@
+ 
+ static efi_status_t virt_efi_get_time(efi_time_t *tm, efi_time_cap_t *tc)
+ {
+-      return efi_call_virt(get_time, tm, tc);
++//    return efi_call_virt(get_time, tm, tc);
+ }
+ 
+ static efi_status_t virt_efi_set_time (efi_time_t *tm)
+ {
+-      return efi_call_virt(set_time, tm);
++//    return efi_call_virt(set_time, tm);
+ }
+ 
+ static efi_status_t virt_efi_get_wakeup_time (efi_bool_t *enabled,
+                                             efi_bool_t *pending,
+                                             efi_time_t *tm)
+ {
+-      return efi_call_virt(get_wakeup_time, enabled, pending, tm);
++//    return efi_call_virt(get_wakeup_time, enabled, pending, tm);
+ }
+ 
+ static efi_status_t virt_efi_set_wakeup_time (efi_bool_t enabled,
+                                             efi_time_t *tm)
+ {
+-      return efi_call_virt(set_wakeup_time, enabled, tm);
++//    return efi_call_virt(set_wakeup_time, enabled, tm);
+ }
+ 
+ static efi_status_t virt_efi_get_variable (efi_char16_t *name,
+                                          efi_guid_t *vendor, u32 *attr,
+                                          unsigned long *data_size, void *data)
+ {
+-      return efi_call_virt(get_variable, name, vendor, attr, data_size, data);
++//    return efi_call_virt(get_variable, name, vendor, attr, data_size, data);
+ }
+ 
+ static efi_status_t virt_efi_get_next_variable (unsigned long *name_size,
+                                               efi_char16_t *name,
+                                               efi_guid_t *vendor)
+ {
+-      return efi_call_virt(get_next_variable, name_size, name, vendor);
++//    return efi_call_virt(get_next_variable, name_size, name, vendor);
+ }
+ 
+ static efi_status_t virt_efi_set_variable (efi_char16_t *name,
+@@ -521,19 +521,20 @@
+                                          unsigned long attr,
+                                          unsigned long data_size, void *data)
+ {
+-      return efi_call_virt(set_variable, name, vendor, attr, data_size, data);
++//    return efi_call_virt(set_variable, name, vendor, attr, data_size, data);
+ }
+ 
+ static efi_status_t virt_efi_get_next_high_mono_count (u32 *count)
+ {
+-      return efi_call_virt(get_next_high_mono_count, count);
++//    return efi_call_virt(get_next_high_mono_count, count);
+ }
+ 
+ static void virt_efi_reset_system (int reset_type, efi_status_t status,
+                                  unsigned long data_size,
+                                  efi_char16_t *data)
+ {
+-      efi_call_virt(reset_system, reset_type, status, data_size, data);
++      emergency_reboot();
++//    efi_call_virt(reset_system, reset_type, status, data_size, data);
+ }
+ 
+ /*
+@@ -571,6 +572,7 @@
+ 
+       BUG_ON(!efi.systab);
+ 
++      /*
+       status = phys_efi_set_virtual_address_map(
+                       memmap.desc_size * memmap.nr_map,
+                       memmap.desc_size,
+@@ -581,14 +583,17 @@
+               printk (KERN_ALERT "You are screwed! "
+                       "Unable to switch EFI into virtual mode "
+                       "(status=%lx)\n", status);
++              //emergency_reboot();
+               panic("EFI call to SetVirtualAddressMap() failed!");
+       }
++      */
+ 
+       /*
+        * Now that EFI is in virtual mode, update the function
+        * pointers in the runtime service table to the new virtual addresses.
+        */
+ 
++      /*
+       efi.get_time = virt_efi_get_time;
+       efi.set_time = virt_efi_set_time;
+       efi.get_wakeup_time = virt_efi_get_wakeup_time;
+@@ -597,6 +602,7 @@
+       efi.get_next_variable = virt_efi_get_next_variable;
+       efi.set_variable = virt_efi_set_variable;
+       efi.get_next_high_mono_count = virt_efi_get_next_high_mono_count;
++      */
+       efi.reset_system = virt_efi_reset_system;
+ }
+ 
+diff -uNr linux-2.6.20.6/arch/i386/kernel/setup.c 
linux-2.6.20.6-appletv/arch/i386/kernel/setup.c
+--- linux-2.6.20.6/arch/i386/kernel/setup.c    2007-04-07 14:48:09.000000000 
+0200
++++ linux-2.6.20.6-appletv/arch/i386/kernel/setup.c    2007-04-07 
10:22:54.000000000 +0200
+@@ -676,3 +676,28 @@
+  * c-basic-offset:8
+  * End:
+  */
++asmlinkage void emergency_reboot(void) {
++      #define load_idt(dtr) __asm__ __volatile("lidt %0"::"m" (*dtr))
++      struct Xgt_desc_struct {
++              unsigned short size;
++              unsigned long address __attribute__((packed));
++              unsigned short pad;
++      } __attribute__ ((packed));
++
++      static unsigned long long
++      real_mode_gdt_entries [3] =
++      {
++              0x0000000000000000ULL,  /* Null descriptor */
++              0x00009a000000ffffULL,  /* 16-bit real-mode 64k code at 
0x00000000 */
++              0x000092000100ffffULL   /* 16-bit real-mode 64k data at 
0x00000100 */
++      };
++
++
++      static struct Xgt_desc_struct
++      real_mode_gdt = { sizeof (real_mode_gdt_entries) - 1, 
(long)real_mode_gdt_entries },
++      real_mode_idt = { 0x3ff, 0 },
++      no_idt = { 0, 0 };
++
++        load_idt(&no_idt);
++        __asm__("int3");
++}
+diff -uNr linux-2.6.20.6/drivers/usb/storage/usb.c 
linux-2.6.20.6-appletv/drivers/usb/storage/usb.c
+--- linux-2.6.20.6/drivers/usb/storage/usb.c   2007-04-07 14:48:35.000000000 
+0200
++++ linux-2.6.20.6-appletv/drivers/usb/storage/usb.c   2007-04-07 
10:22:54.000000000 +0200
+@@ -107,7 +107,7 @@
+ MODULE_DESCRIPTION("USB Mass Storage driver for Linux");
+ MODULE_LICENSE("GPL");
+ 
+-static unsigned int delay_use = 5;
++static unsigned int delay_use = 0;
+ module_param(delay_use, uint, S_IRUGO | S_IWUSR);
+ MODULE_PARM_DESC(delay_use, "seconds to delay before using a new device");
+ 
+diff -uNr linux-2.6.20.6/drivers/video/imacfb.c 
linux-2.6.20.6-appletv/drivers/video/imacfb.c
+--- linux-2.6.20.6/drivers/video/imacfb.c      2006-11-29 22:57:37.000000000 
+0100
++++ linux-2.6.20.6-appletv/drivers/video/imacfb.c      2007-04-07 
10:23:13.000000000 +0200
+@@ -30,6 +30,7 @@
+       M_I20,
+       M_MINI,
+       M_MACBOOK,
++      M_APPLETV,
+       M_UNKNOWN
+ } MAC_TYPE;
+ 
+@@ -57,6 +58,8 @@
+ static int model              = M_UNKNOWN;
+ static int manual_height;
+ static int manual_width;
++static int manual_linelength;
++static u32 manual_base;
+ 
+ static int set_system(struct dmi_system_id *id)
+ {
+@@ -81,6 +84,9 @@
+       { set_system, "Macmini1,1", {
+         DMI_MATCH(DMI_BIOS_VENDOR,"Apple Computer, Inc."),
+         DMI_MATCH(DMI_PRODUCT_NAME,"Macmini1,1")}, (void *)M_MINI},
++      { set_system, "AppleTV1,1", {
++        DMI_MATCH(DMI_BIOS_VENDOR,"Apple Computer, Inc."),
++        DMI_MATCH(DMI_PRODUCT_NAME,"AppleTV1,1")}, (void *)M_APPLETV},
+       {},
+ };
+ 
+@@ -142,10 +148,16 @@
+                       model = M_MINI;
+               else if (!strcmp(this_opt, "macbook"))
+                       model = M_MACBOOK;
++              else if (!strcmp(this_opt, "appletv"))
++                      model = M_APPLETV;
+               else if (!strncmp(this_opt, "height:", 7))
+                       manual_height = simple_strtoul(this_opt+7, NULL, 0);
+               else if (!strncmp(this_opt, "width:", 6))
+                       manual_width = simple_strtoul(this_opt+6, NULL, 0);
++              else if (!strncmp(this_opt, "linelength:", 11))
++                      manual_linelength = simple_strtoul(this_opt+11, NULL, 
0);
++              else if (!strncmp(this_opt, "base:", 5))
++                      manual_base = simple_strtoul(this_opt+5, NULL, 0);
+       }
+       return 0;
+ }
+@@ -195,6 +207,12 @@
+               screen_info.lfb_linelength = 2048 * 4;
+               screen_info.lfb_base = 0x80000000;
+               break;
++      case M_APPLETV:
++              screen_info.lfb_width = 1440;
++              screen_info.lfb_height = 900;
++              screen_info.lfb_linelength = 1536 * 4;
++              screen_info.lfb_base = 0x10030000;
++              break;
+       }
+ 
+       /* if the user wants to manually specify height/width,
+@@ -204,6 +222,10 @@
+               screen_info.lfb_height = manual_height;
+       if (manual_width > 0)
+               screen_info.lfb_width = manual_width;
++      if (manual_linelength > 0)
++              screen_info.lfb_linelength = manual_linelength;
++      if (manual_base > 0)
++              screen_info.lfb_base = manual_base;
+ 
+       imacfb_fix.smem_start = screen_info.lfb_base;
+       imacfb_defined.bits_per_pixel = screen_info.lfb_depth;
+@@ -361,10 +383,11 @@
+               return -ENODEV;
+       if (model == M_UNKNOWN)
+               return -ENODEV;
+-
+       if (fb_get_options("imacfb", &option))
+               return -ENODEV;
+ 
++      //emergency_reboot();
++      //model = M_APPLETV;
+       imacfb_setup(option);
+       ret = platform_driver_register(&imacfb_driver);
+ 
+diff -uNr linux-2.6.20.6/Makefile linux-2.6.20.6-appletv/Makefile
+--- linux-2.6.20.6/Makefile    2007-04-07 14:49:00.000000000 +0200
++++ linux-2.6.20.6-appletv/Makefile    2007-04-07 10:22:54.000000000 +0200
+@@ -1,7 +1,7 @@
+ VERSION = 2
+ PATCHLEVEL = 6
+ SUBLEVEL = 20
+-EXTRAVERSION = .6
++EXTRAVERSION = .6-appletv
+ NAME = Homicidal Dwarf Hamster
+ 
+ # *DOCUMENTATION*
+Binärdateien linux-2.6.20.6/scripts/kconfig/mconf and 
linux-2.6.20.6-appletv/scripts/kconfig/mconf sind verschieden.

Modified: trunk/mach_linux_boot/kernel/config-2.6.20-appletv
===================================================================
--- trunk/mach_linux_boot/kernel/config-2.6.20-appletv  2007-04-06 00:11:26 UTC 
(rev 99)
+++ trunk/mach_linux_boot/kernel/config-2.6.20-appletv  2007-04-07 12:59:40 UTC 
(rev 100)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.20.4-mactel
-# Thu Apr  5 17:01:35 2007
+# Linux kernel version: 2.6.20.6-appletv
+# Sat Apr  7 10:24:19 2007
 #
 CONFIG_X86_32=y
 CONFIG_GENERIC_TIME=y
@@ -248,6 +248,7 @@
 CONFIG_ACPI_SYSTEM=y
 CONFIG_X86_PM_TIMER=y
 CONFIG_ACPI_CONTAINER=m
+# CONFIG_ACPI_SBS is not set
 
 #
 # APM (Advanced Power Management) BIOS Support
@@ -526,7 +527,13 @@
 # CONFIG_BT_HCIBPA10X is not set
 # CONFIG_BT_HCIBFUSB is not set
 # CONFIG_BT_HCIVHCI is not set
-# CONFIG_IEEE80211 is not set
+CONFIG_IEEE80211=m
+# CONFIG_IEEE80211_DEBUG is not set
+CONFIG_IEEE80211_CRYPT_WEP=m
+CONFIG_IEEE80211_CRYPT_CCMP=m
+CONFIG_IEEE80211_CRYPT_TKIP=m
+CONFIG_IEEE80211_SOFTMAC=m
+# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
 CONFIG_WIRELESS_EXT=y
 
 #
@@ -767,10 +774,7 @@
 #
 # Device Drivers
 #
-
-#
-# Texas Instruments PCILynx requires I2C
-#
+# CONFIG_IEEE1394_PCILYNX is not set
 CONFIG_IEEE1394_OHCI1394=y
 
 #
@@ -910,6 +914,14 @@
 # CONFIG_PRISM54 is not set
 # CONFIG_USB_ZD1201 is not set
 # CONFIG_HOSTAP is not set
+CONFIG_BCM43XX=m
+CONFIG_BCM43XX_DEBUG=y
+CONFIG_BCM43XX_DMA=y
+CONFIG_BCM43XX_PIO=y
+CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
+# CONFIG_BCM43XX_DMA_MODE is not set
+# CONFIG_BCM43XX_PIO_MODE is not set
+# CONFIG_ZD1211RW is not set
 CONFIG_NET_WIRELESS=y
 
 #
@@ -1023,7 +1035,11 @@
 # Watchdog Cards
 #
 # CONFIG_WATCHDOG is not set
-# CONFIG_HW_RANDOM is not set
+CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_GEODE=m
+CONFIG_HW_RANDOM_VIA=m
 # CONFIG_NVRAM is not set
 CONFIG_RTC=y
 # CONFIG_DTLK is not set
@@ -1051,9 +1067,58 @@
 #
 # I2C support
 #
-# CONFIG_I2C is not set
+CONFIG_I2C=m
+CONFIG_I2C_CHARDEV=m
 
 #
+# I2C Algorithms
+#
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCF=m
+CONFIG_I2C_ALGOPCA=m
+
+#
+# I2C Hardware Bus support
+#
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+CONFIG_I2C_I801=m
+CONFIG_I2C_I810=m
+CONFIG_I2C_PIIX4=m
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PARPORT_LIGHT is not set
+# CONFIG_I2C_PROSAVAGE is not set
+# CONFIG_I2C_SAVAGE4 is not set
+# CONFIG_SCx200_ACB is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+# CONFIG_I2C_VOODOO3 is not set
+# CONFIG_I2C_PCA_ISA is not set
+
+#
+# Miscellaneous I2C Chip support
+#
+# CONFIG_SENSORS_DS1337 is not set
+# CONFIG_SENSORS_DS1374 is not set
+CONFIG_SENSORS_EEPROM=m
+# CONFIG_SENSORS_PCF8574 is not set
+# CONFIG_SENSORS_PCA9539 is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_SENSORS_MAX6875 is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_I2C_DEBUG_CHIP is not set
+
+#
 # SPI support
 #
 # CONFIG_SPI is not set
@@ -1070,13 +1135,49 @@
 CONFIG_HWMON=m
 # CONFIG_HWMON_VID is not set
 # CONFIG_SENSORS_ABITUGURU is not set
+# CONFIG_SENSORS_ADM1021 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM9240 is not set
 # CONFIG_SENSORS_K8TEMP is not set
-CONFIG_SENSORS_CORETEMP=m
+# CONFIG_SENSORS_ASB100 is not set
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_DS1621 is not set
 # CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_FSCHER is not set
+# CONFIG_SENSORS_FSCPOS is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_PC87360 is not set
 # CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_VIA686A is not set
 # CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_VT8231 is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
 # CONFIG_SENSORS_HDAPS is not set
-CONFIG_SENSORS_APPLESMC=m
 # CONFIG_HWMON_DEBUG_CHIP is not set
 
 #
@@ -1096,11 +1197,29 @@
 #
 # CONFIG_VIDEO_ADV_DEBUG is not set
 CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
-# CONFIG_VIDEO_VIVI is not set
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_CX25840=m
+CONFIG_VIDEO_CX2341X=m
+CONFIG_VIDEO_VIVI=m
+# CONFIG_VIDEO_SAA5246A is not set
+# CONFIG_VIDEO_SAA5249 is not set
+# CONFIG_VIDEO_SAA7134 is not set
+# CONFIG_VIDEO_HEXIUM_ORION is not set
+# CONFIG_VIDEO_HEXIUM_GEMINI is not set
+# CONFIG_VIDEO_CX88 is not set
+# CONFIG_VIDEO_CAFE_CCIC is not set
 
 #
 # V4L USB devices
 #
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_29XXX=y
+CONFIG_VIDEO_PVRUSB2_24XXX=y
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+CONFIG_VIDEO_USBVISION=m
 
 #
 # Radio Adapters
@@ -1116,11 +1235,58 @@
 CONFIG_DVB=y
 CONFIG_DVB_CORE=m
 # CONFIG_DVB_CORE_ATTACH is not set
-# CONFIG_DVB_TTUSB_DEC is not set
+
+#
+# Supported SAA7146 based PCI Adapters
+#
+
+#
+# Supported USB Adapters
+#
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_TTUSB_BUDGET=m
+CONFIG_DVB_TTUSB_DEC=m
 CONFIG_DVB_CINERGYT2=m
-# CONFIG_DVB_CINERGYT2_TUNING is not set
+CONFIG_DVB_CINERGYT2_TUNING=y
+CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
+CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
+CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
+CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=y
+CONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=50
 
 #
+# Supported FlexCopII (B2C2) Adapters
+#
+CONFIG_DVB_B2C2_FLEXCOP=m
+CONFIG_DVB_B2C2_FLEXCOP_PCI=m
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set
+
+#
+# Supported BT878 Adapters
+#
+
+#
+# Supported Pluto2 Adapters
+#
+# CONFIG_DVB_PLUTO2 is not set
+
+#
 # Supported DVB Frontends
 #
 
@@ -1132,33 +1298,73 @@
 #
 # DVB-S (satellite) frontends
 #
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_CX24110=m
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_TDA8083=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_VES1X93=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_TDA10086=m
 
 #
 # DVB-T (terrestrial) frontends
 #
+CONFIG_DVB_SP8870=m
+CONFIG_DVB_SP887X=m
+CONFIG_DVB_CX22700=m
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_L64781=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
 
 #
 # DVB-C (cable) frontends
 #
+CONFIG_DVB_VES1820=m
+CONFIG_DVB_TDA10021=m
+CONFIG_DVB_STV0297=m
 
 #
 # ATSC (North American/Korean Terrestrial/Cable DTV) frontends
 #
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_OR51211=m
+CONFIG_DVB_OR51132=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
 
 #
 # Tuners/PLL support
 #
+CONFIG_DVB_PLL=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_TUNER_MT2060=m
+CONFIG_DVB_TUNER_LGH06XF=m
 
 #
 # Miscellaneous devices
 #
-# CONFIG_USB_DABUSB is not set
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_TUA6100=m
+CONFIG_VIDEO_TUNER=m
+CONFIG_VIDEO_BUF=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_USB_DABUSB=m
 
 #
 # Graphics support
 #
 # CONFIG_FIRMWARE_EDID is not set
 CONFIG_FB=y
+# CONFIG_FB_DDC is not set
 CONFIG_FB_CFB_FILLRECT=y
 CONFIG_FB_CFB_COPYAREA=y
 CONFIG_FB_CFB_IMAGEBLIT=y
@@ -1357,10 +1563,10 @@
 #
 # USB Host Controller Drivers
 #
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_SPLIT_ISO=y
-CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_HCD=m
+# CONFIG_USB_EHCI_SPLIT_ISO is not set
+# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
+# CONFIG_USB_EHCI_TT_NEWSCHED is not set
 # CONFIG_USB_ISP116X_HCD is not set
 # CONFIG_USB_OHCI_HCD is not set
 CONFIG_USB_UHCI_HCD=y
@@ -1406,7 +1612,6 @@
 # CONFIG_USB_AIPTEK is not set
 # CONFIG_USB_WACOM is not set
 # CONFIG_USB_ACECAD is not set
-CONFIG_USB_APPLEIR=m
 # CONFIG_USB_KBTAB is not set
 # CONFIG_USB_POWERMATE is not set
 # CONFIG_USB_TOUCHSCREEN is not set
@@ -1607,8 +1812,8 @@
 #
 # CONFIG_ADFS_FS is not set
 # CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
 # CONFIG_BEFS_FS is not set
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
@@ -1665,7 +1870,11 @@
 # CONFIG_AMIGA_PARTITION is not set
 # CONFIG_ATARI_PARTITION is not set
 # CONFIG_MAC_PARTITION is not set
-# CONFIG_MSDOS_PARTITION is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_BSD_DISKLABEL is not set
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
 # CONFIG_LDM_PARTITION is not set
 # CONFIG_SGI_PARTITION is not set
 # CONFIG_ULTRIX_PARTITION is not set

Modified: trunk/mach_linux_boot/loader_init.c
===================================================================
--- trunk/mach_linux_boot/loader_init.c 2007-04-06 00:11:26 UTC (rev 99)
+++ trunk/mach_linux_boot/loader_init.c 2007-04-07 12:59:40 UTC (rev 100)
@@ -103,7 +103,7 @@
        
        bootparms = (boot_parms *)args;
 
-       vmode.width = 1536;
+       vmode.width = bootparms->video.rowb / 4;
        vmode.height = bootparms->video.height;
        MEMSET(bootparms->video.addr, vmode.width * vmode.height *4, 0x00);
        vmode.xmargin = 0;
@@ -112,8 +112,9 @@
        VIDEO_ATTR=0xffc8c8c8;
 
        printk("Hello AppleTV\n");
-       printk("FB Start 0x%08X\n", bootparms->video.addr);
+       printk("FB Start 0x%08X, with %d height %d rowb %d depth %d\n", 
bootparms->video.addr, bootparms->video.width,  bootparms->video.height, 
bootparms->video.rowb, bootparms->video.depth);
 
+
                shax(&sha_Message_Digest[0], szKernel , lKernel);
        
        printk("Kernel SHA1 hash : ");
@@ -156,7 +157,9 @@
        MEMSET(bp, BOOT_PARAM_MEMSIZE, 0);
        memcpy(bp, szKernel, 0x2000);
 
-       strcpy(&szBootSect[BOOT_PARAM_MEMSIZE - 2048], bootparms->cmdline);
+       //strcpy(&szBootSect[BOOT_PARAM_MEMSIZE - 2048], bootparms->cmdline);
+       sprintf(&szBootSect[BOOT_PARAM_MEMSIZE - 2048], "%s 
video=imacfb:appletv,width:%d,height:%d,linelength:%d,base:%d", 
+               bootparms->cmdline, bootparms->video.width, 
bootparms->video.height, bootparms->video.rowb, bootparms->video.addr);
 
        if (sysdeps_create_boot_params(bp, &szBootSect[BOOT_PARAM_MEMSIZE - 
2048]) == -1) {
                while(1);


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Mactel-linux-devel mailing list
Mactel-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mactel-linux-devel

Reply via email to