<feed xmlns='http://www.w3.org/2005/Atom'>
<title>teythoon/gnumach.git/linux/src/drivers/scsi, branch master</title>
<subtitle>Personal GNU Mach development repository</subtitle>
<id>https://darnassus.sceen.net/cgit/teythoon/gnumach.git/atom?h=master</id>
<link rel='self' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/'/>
<updated>2014-01-05T13:22:15Z</updated>
<entry>
<title>linux: fix bit tests</title>
<updated>2014-01-05T13:22:15Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2014-01-05T13:22:15Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=e013a9371d567af6504ed38befb6e866faf7afe7'/>
<id>urn:sha1:e013a9371d567af6504ed38befb6e866faf7afe7</id>
<content type='text'>
The pattern is !x&amp;y. An expression of this form is almost always
meaningless, because it combines a boolean operator with a bit
operator. In particular, if the rightmost bit of y is 0, the result
will always be 0.

Fixed using coccinelle.

// !x&amp;y combines boolean negation with bitwise and
//
// Confidence: High
// Copyright: (C) Gilles Muller, Julia Lawall, EMN, DIKU.  GPLv2.
// URL: http://www.emn.fr/x-info/coccinelle/rules/notand.html
// Options:

@@ expression E1,E2; @@
(
  !E1 &amp; !E2
|
- !E1 &amp; E2
+ !(E1 &amp; E2)
)

* linux/src/drivers/scsi/FlashPoint.c: Fix bit tests.
</content>
</entry>
<entry>
<title>linux: fix bit tests</title>
<updated>2014-01-05T13:11:29Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2014-01-05T13:11:29Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=5faed5128d3c07f055f96d910529c95814073a09'/>
<id>urn:sha1:5faed5128d3c07f055f96d910529c95814073a09</id>
<content type='text'>
The pattern is !x&amp;y. An expression of this form is almost always
meaningless, because it combines a boolean operator with a bit
operator. In particular, if the rightmost bit of y is 0, the result
will always be 0.

Fixed using coccinelle.

// !x&amp;y combines boolean negation with bitwise and
//
// Confidence: High
// Copyright: (C) Gilles Muller, Julia Lawall, EMN, DIKU.  GPLv2.
// URL: http://www.emn.fr/x-info/coccinelle/rules/notand.html
// Options:

@@ expression E; constant C; @@
(
  !E &amp; !C
|
- !E &amp; C
+ !(E &amp; C)
)

* linux/src/drivers/net/tlan.c: Fix bit tests.
* linux/src/drivers/scsi/AM53C974.c: Likewise.
* linux/src/drivers/scsi/FlashPoint.c: Likewise.
* linux/src/drivers/scsi/NCR5380.c: Likewise.
* linux/src/drivers/scsi/t128.c: Likewise.
</content>
</entry>
<entry>
<title>Fix slow boot in virtualbox</title>
<updated>2012-12-27T20:48:42Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2012-12-27T20:48:42Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=14a29498dfee39e72443ff0e6f463be7f3bfd4ec'/>
<id>urn:sha1:14a29498dfee39e72443ff0e6f463be7f3bfd4ec</id>
<content type='text'>
By disabling some of the most slow drivers by default, and giving progress
feedback to the user.

* linux/configfrag.ac (CONFIG_SCSI_NCR53C7xx, CONFIG_SCSI_AIC7XXX,
CONFIG_SCSI_GDTH): Disable by default
* linux/src/drivers/scsi/eata.c (__initfunc): Don't feed line in probe
message.
* linux/src/drivers/scsi/hosts.c (scsi_init): Print SCSI probe progress.
</content>
</entry>
<entry>
<title>Fix compilation error with older versions of GCC</title>
<updated>2012-11-19T15:28:16Z</updated>
<author>
<name>Matthew Leach</name>
<email>matthew@mattleach.net</email>
</author>
<published>2012-11-19T15:02:52Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=bdae52f1465743ad96b2261e053ae4967f807557'/>
<id>urn:sha1:bdae52f1465743ad96b2261e053ae4967f807557</id>
<content type='text'>
Some versions of GCC will error if you define a type twice (even if
the definition is the same). The NCR53C8XX SCSI driver defines
'vm_offset_t', this is also defined in vm_types.h and will therefore
cause a compilation error depending on the GCC version.

* linux/src/drivers/scsi/ncr53c8xx.c [!MACH] (vm_offset_t, vm_size_t): Don't
define types.
</content>
</entry>
<entry>
<title>Add missing phystokv/kvtophys calls</title>
<updated>2012-03-24T01:54:49Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2012-03-23T01:19:44Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=264b750cc2d576beadfd74bcde45ac75edc4aab9'/>
<id>urn:sha1:264b750cc2d576beadfd74bcde45ac75edc4aab9</id>
<content type='text'>
* i386/i386/vm_param.h [!MACH_XEN]: Do not include &lt;xen/public/xen.h&gt;.
* i386/i386at/model_dep.c (init_alloc_aligned): Use phystokv to compare physical
memory addresses with kernel start, end, and symbol table.
* i386/intel/pmap.c (pmap_enter): Use kvtophys to convert ptp pointer to pte
entry.
* linux/dev/init/main.c (alloc_contig_mem, linux_init): Use phystokv to convert
allocated pages to virtual pointer.
* linux/src/include/asm-i386/io.h: Include &lt;machine/vm_param.h&gt;.
(virt_to_phys): Call _kvtophys.
(phys_to_virt): Call phystokv.
* linux/src/include/linux/compatmac.h: Include &lt;asm/io.h&gt;.
(ioremap): Use phys_to_virt to convert physical address to virtual pointer.
(my_iounmap): Likewise.
* linux/dev/include/asm-i386/page.h: Include &lt;mach/vm_param.h&gt;.
(PAGE_SHIFT, PAGE_SIZE, PAGE_MASK): Remove macros.
* linux/src/drivers/scsi/ncr53c8xx.c (vm_size_t): Remove type.
* linux/dev/glue/net.c: Include &lt;machine/vm_param.h&gt;
(device_write): Call phystokv to convert from physical page address to
virtual pointer.
* linux/dev/glue/block.c (alloc_buffer, free_buffer, rdwr_full): Likewise.
</content>
</entry>
<entry>
<title>Change types holding cpu flags from int to long</title>
<updated>2012-03-20T01:09:13Z</updated>
<author>
<name>Guillem Jover</name>
<email>guillem@debian.org</email>
</author>
<published>2009-12-09T01:59:26Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=735cf19fdebf4a3df886426a51cad78b7ef025f2'/>
<id>urn:sha1:735cf19fdebf4a3df886426a51cad78b7ef025f2</id>
<content type='text'>
On amd64 the cpu flags is a 64-bit word, and long on 32-bit systems is
32-bit wide anyway.

* linux/dev/glue/kmem.c (linux_kmalloc, linux_kfree, __get_free_pages,
free_pages): Use unsigned long instead of unsigned.
* linux/dev/include/asm-i386/system.h (__save_flags, __restore_flags):
Likewise.
* linux/dev/kernel/printk.c (printk): Likewise.
* linux/src/drivers/scsi/advansys.c (DvcEnterCritical, DvcLeaveCritical,
advansys_queuecommand, advansys_abort, advansys_reset, advansys_interrupt,
interrupts_enabled, AdvISR): Likewise.
* linux/src/drivers/scsi/aha152x.c (aha152x_intr): Likewise.
* linux/src/drivers/scsi/aha1542.c (aha1542_intr_handle): Likewise.
* linux/src/drivers/scsi/aic7xxx.c (aic7xxx_done_cmds_complete): Likewise.
* linux/src/drivers/scsi/ultrastor.c (log_ultrastor_abort,
ultrastor_queuecommand, ultrastor_abort): Likewise.
</content>
</entry>
<entry>
<title>Fix format for string print</title>
<updated>2012-02-19T01:32:19Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2012-02-19T01:32:19Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=93b599833f426b5b8aa526e6366d26aa7c3fa9d0'/>
<id>urn:sha1:93b599833f426b5b8aa526e6366d26aa7c3fa9d0</id>
<content type='text'>
* linux/src/drivers/scsi/aha1542.c (aha1542_setup): Use %s format for printing a
mere string, not the string.
</content>
</entry>
<entry>
<title>Fix format for string print</title>
<updated>2012-02-19T01:17:21Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2012-02-19T01:17:21Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=fd767c866dc1d0f6a4059a394e24848d4da8e086'/>
<id>urn:sha1:fd767c866dc1d0f6a4059a394e24848d4da8e086</id>
<content type='text'>
* linux/src/drivers/scsi/advansys.c (asc_prt_line): Use %s format for
printing a mere string, not the string.
</content>
</entry>
<entry>
<title>Leave interrupts enabled in sym53c8xx driver</title>
<updated>2011-10-09T23:01:37Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2011-10-09T23:01:37Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=84fee6a668c3e94b9fd9b4b140acfe011fecbebd'/>
<id>urn:sha1:84fee6a668c3e94b9fd9b4b140acfe011fecbebd</id>
<content type='text'>
The driver can work with them, and request_irq works fine with them.

* linux/src/drivers/scsi/sym53c8xx.c (ncr_attach): Do not pass SA_INTERRUPT to
request_irq().
</content>
</entry>
<entry>
<title>Add sym53c8xx driver from linux 2.2</title>
<updated>2011-10-08T20:07:08Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2011-10-08T20:07:08Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=564f10917b933c2bd8ea0292d538b9bfd63d3597'/>
<id>urn:sha1:564f10917b933c2bd8ea0292d538b9bfd63d3597</id>
<content type='text'>
This driver supports qemu's SCSI host device.
Unfortunately it seems to be breaking the network device, so test with care.

* linux/Makefrag.am (liblinux_a_SOURCES): Add
linux/src/drivers/scsi/sym53c8xx{.c,_comm.h,.h,_defs.h}
* linux/configfrag.ac: Add AC_Linux_DRIVER([sym53c8xx] to enable
CONFIG_SCSI_SYM53C8XX.
* linux/dev/glue/kmem.c (MEM_CHUNKS): Increase to 16.
* linux/src/drivers/scsi/hosts.c [CONFIG_SCSI_SYM53C8XX]: Include "sym53c8xx.h".
(builtin_scsi_hosts): include SYM53C8XX.
</content>
</entry>
</feed>
