[coreboot] [FILO] r93 - in trunk/filo: configs drivers

svn at coreboot.org svn at coreboot.org
Wed Apr 29 21:19:55 CEST 2009


Author: stepan
Date: 2009-04-29 21:19:55 +0200 (Wed, 29 Apr 2009)
New Revision: 93

Modified:
   trunk/filo/configs/defconfig
   trunk/filo/drivers/ide_new.c
   trunk/filo/drivers/ide_new.h
Log:
disable some dead code in the new IDE driver, and enable the new ide driver per
default.


Modified: trunk/filo/configs/defconfig
===================================================================
--- trunk/filo/configs/defconfig	2009-04-29 19:15:52 UTC (rev 92)
+++ trunk/filo/configs/defconfig	2009-04-29 19:19:55 UTC (rev 93)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# FILO version: 0.6.0b1
-# Thu Sep 11 20:18:11 2008
+# FILO version: 0.6.0
+# Wed Apr 29 21:18:12 2009
 #
 CONFIG_TARGET_I386=y
 # CONFIG_REVIEW is not set
@@ -18,12 +18,9 @@
 #
 # Drivers
 #
-CONFIG_IDE_DISK=y
-CONFIG_IDE_DISK_POLL_DELAY=0
-# CONFIG_SLOW_SATA is not set
-# CONFIG_PCMCIA_CF is not set
+# CONFIG_IDE_DISK is not set
+CONFIG_IDE_NEW_DISK=y
 CONFIG_USB_NEW_DISK=y
-# CONFIG_USB_DISK is not set
 # CONFIG_FLASH_DISK is not set
 CONFIG_SUPPORT_PCI=y
 # CONFIG_PCI_BRUTE_SCAN is not set

Modified: trunk/filo/drivers/ide_new.c
===================================================================
--- trunk/filo/drivers/ide_new.c	2009-04-29 19:15:52 UTC (rev 92)
+++ trunk/filo/drivers/ide_new.c	2009-04-29 19:19:55 UTC (rev 93)
@@ -63,9 +63,9 @@
  */
 #undef ATA_PEDANTIC
 
+#ifdef CONFIG_DEBUG_IDE
 static void dump_drive(struct ide_drive *drive)
 {
-#ifdef CONFIG_DEBUG_IDE
 	printk("IDE DRIVE @%lx:\n", (unsigned long)drive);
 	printk("unit: %d\n",drive->unit);
 	printk("present: %d\n",drive->present);
@@ -77,8 +77,8 @@
 	printk("head: %d\n",drive->head);
 	printk("sect: %d\n",drive->sect);
 	printk("bs: %d\n",drive->bs);
+}
 #endif
-}
 
 /*
  * old style io port operations
@@ -673,7 +673,7 @@
  * read from an atapi device, using READ_10
  */
 static int
-ob_ide_read_atapi(struct ide_drive *drive, unsigned long long block, char *buf,
+ob_ide_read_atapi(struct ide_drive *drive, unsigned long long block, unsigned char *buf,
 		  unsigned int sectors)
 {
 	struct atapi_command *cmd = &drive->channel->atapi_cmd;
@@ -682,7 +682,7 @@
 		return 1;
 
 	if (drive->bs == 2048) {
-		if ((block & 3 != 0) || (sectors & 3 != 0)) {
+		if (((block & 3) != 0) || ((sectors & 3) != 0)) {
 			printf("ob_ide_read_atapi: unaligned atapi access: %x blocks, starting from %x\n", sectors, block);
 		}
 		block >>= 2;
@@ -711,7 +711,7 @@
 
 static int
 ob_ide_read_ata_chs(struct ide_drive *drive, unsigned long long block,
-		    char *buf, unsigned int sectors)
+		    unsigned char *buf, unsigned int sectors)
 {
 	struct ata_command *cmd = &drive->channel->ata_cmd;
 	unsigned int track = (block / drive->sect);
@@ -740,7 +740,7 @@
 
 static int
 ob_ide_read_ata_lba28(struct ide_drive *drive, unsigned long long block,
-		      char *buf, unsigned int sectors)
+		      unsigned char *buf, unsigned int sectors)
 {
 	struct ata_command *cmd = &drive->channel->ata_cmd;
 
@@ -766,7 +766,7 @@
 
 static int
 ob_ide_read_ata_lba48(struct ide_drive *drive, unsigned long long block,
-		      char *buf, unsigned int sectors)
+		      unsigned char *buf, unsigned int sectors)
 {
 	struct ata_command *cmd = &drive->channel->ata_cmd;
 	struct ata_sector ata_sector;
@@ -799,8 +799,8 @@
  * read 'sectors' sectors from ata device
  */
 static int
-ob_ide_read_ata(struct ide_drive *drive, unsigned long long block, char *buf,
-		unsigned int sectors)
+ob_ide_read_ata(struct ide_drive *drive, unsigned long long block, 
+		unsigned char *buf, unsigned int sectors)
 {
 	unsigned long long end_block = block + sectors;
 	const int need_lba48 = (end_block > (1ULL << 28)) || (sectors > 255);
@@ -823,7 +823,7 @@
 
 static int
 ob_ide_read_sectors(struct ide_drive *drive, unsigned long long block,
-		    char *buf, unsigned int sectors)
+		    unsigned char *buf, unsigned int sectors)
 {
 	if (!sectors)
 		return 1;
@@ -938,7 +938,7 @@
 		drive->sect = id.sectors;
 	}
 
-	strcpy(drive->model, id.model);
+	strcpy(drive->model, (char *)id.model);
 	return 0;
 }
 
@@ -1116,6 +1116,7 @@
 	}
 }
 
+#ifdef OPENBIOS
 /*
  * The following functions are interfacing with OpenBIOS. They
  * are device node methods. Thus they have to do proper stack handling.
@@ -1132,9 +1133,10 @@
 
 	return (drive->max_sectors * drive->bs);
 }
+#endif
 
 int
-ob_ide_read_blocks(struct ide_drive *drive, int n, u32 blk, char* dest)
+ob_ide_read_blocks(struct ide_drive *drive, int n, u32 blk, unsigned char* dest)
 {
 	int cnt = n;
 	while (n) {
@@ -1156,12 +1158,14 @@
 	return (cnt);
 }
 
+#ifdef OPENBIOS
 static int
 ob_ide_block_size(int *idx)
 {
 	struct ide_drive *drive=&ob_ide_channels[idx[1]].drives[idx[0]];
 	return(drive->bs);
 }
+#endif
 
 #ifdef CONFIG_SUPPORT_PCI
 static int pci_find_ata_device_on_bus(int bus, pcidev_t * dev, int *index, int sata, int pata)
@@ -1418,8 +1422,6 @@
 	return 0;
 }
 
-static int inited=0;
-
 int ide_probe(int drive)
 {
 	struct ide_drive *curr_drive = & ob_ide_channels[drive / 2].drives[drive % 2];

Modified: trunk/filo/drivers/ide_new.h
===================================================================
--- trunk/filo/drivers/ide_new.h	2009-04-29 19:15:52 UTC (rev 92)
+++ trunk/filo/drivers/ide_new.h	2009-04-29 19:19:55 UTC (rev 93)
@@ -98,7 +98,7 @@
  * simple ata command that works for everything (except 48-bit lba commands)
  */
 struct ata_command {
-	char *buffer;
+	unsigned char *buffer;
 	unsigned int buflen;
 
 	/*
@@ -214,7 +214,7 @@
 };
 
 int
-ob_ide_read_blocks(struct ide_drive *drive, int n, u32 blk, char* dest);
+ob_ide_read_blocks(struct ide_drive *drive, int n, u32 blk, unsigned char* dest);
 static int
 ob_ide_atapi_request_sense(struct ide_drive *drive);
 //int ob_ide_init(int (*func)(struct ide_drive*));





More information about the coreboot mailing list