- First pass at const'ifying ata(4) as appropriate.

- Use DEVMETHOD_END.
- Use NULL instead of 0 for pointers

MFC after:	1 week
This commit is contained in:
Marius Strobl 2012-03-21 16:59:39 +00:00
parent ce30db0b31
commit 5187458fcd
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=233282
32 changed files with 138 additions and 124 deletions

View File

@ -1209,7 +1209,7 @@ ata_udelay(int interval)
}
#ifndef ATA_CAM
char *
const char *
ata_unit2str(struct ata_device *atadev)
{
struct ata_channel *ch = device_get_softc(device_get_parent(atadev->dev));

View File

@ -622,7 +622,7 @@ int ata_identify(device_t dev);
void ata_default_registers(device_t dev);
void ata_modify_if_48bit(struct ata_request *request);
void ata_udelay(int interval);
char *ata_unit2str(struct ata_device *atadev);
const char *ata_unit2str(struct ata_device *atadev);
const char *ata_mode2str(int mode);
int ata_str2mode(const char *str);
const char *ata_satarev2str(int rev);
@ -649,7 +649,7 @@ void ata_timeout(struct ata_request *);
void ata_catch_inflight(device_t dev);
void ata_fail_requests(device_t dev);
void ata_drop_requests(device_t dev);
char *ata_cmd2str(struct ata_request *request);
const char *ata_cmd2str(struct ata_request *request);
/* ata-lowlevel.c: */
void ata_generic_hw(device_t dev);

View File

@ -49,7 +49,7 @@ __FBSDID("$FreeBSD$");
#include "pccarddevs.h"
static const struct pccard_product ata_pccard_products[] = {
static const struct pccard_product const ata_pccard_products[] = {
PCMCIA_CARD(FREECOM, PCCARDIDE),
PCMCIA_CARD(EXP, EXPMULTIMEDIA),
PCMCIA_CARD(IODATA3, CBIDE2),
@ -172,7 +172,7 @@ static device_method_t ata_pccard_methods[] = {
DEVMETHOD(device_attach, ata_pccard_attach),
DEVMETHOD(device_detach, ata_pccard_detach),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ata_pccard_driver = {
@ -181,5 +181,5 @@ static driver_t ata_pccard_driver = {
sizeof(struct ata_channel),
};
DRIVER_MODULE(ata, pccard, ata_pccard_driver, ata_devclass, 0, 0);
DRIVER_MODULE(ata, pccard, ata_pccard_driver, ata_devclass, NULL, NULL);
MODULE_DEPEND(ata, ata, 1, 1, 1);

View File

@ -248,7 +248,7 @@ static device_method_t ata_cbus_methods[] = {
DEVMETHOD(bus_setup_intr, ata_cbus_setup_intr),
DEVMETHOD(bus_print_child, ata_cbus_print_child),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ata_cbus_driver = {
@ -393,7 +393,7 @@ static device_method_t ata_cbuschannel_methods[] = {
/* ATA methods */
DEVMETHOD(ata_locking, ata_cbuschannel_banking),
#endif
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ata_cbuschannel_driver = {
@ -402,5 +402,5 @@ static driver_t ata_cbuschannel_driver = {
sizeof(struct ata_channel),
};
DRIVER_MODULE(ata, atacbus, ata_cbuschannel_driver, ata_devclass, 0, 0);
DRIVER_MODULE(ata, atacbus, ata_cbuschannel_driver, ata_devclass, NULL, NULL);
MODULE_DEPEND(ata, ata, 1, 1, 1);

View File

@ -591,7 +591,7 @@ static device_method_t ad_methods[] = {
/* ATA methods */
DEVMETHOD(ata_reinit, ad_reinit),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ad_driver = {

View File

@ -595,7 +595,7 @@ static device_method_t ata_pci_methods[] = {
DEVMETHOD(bus_print_child, ata_pci_print_child),
DEVMETHOD(bus_child_location_str, ata_pci_child_location_str),
{ 0, 0 }
DEVMETHOD_END
};
devclass_t ata_pci_devclass;
@ -606,7 +606,7 @@ static driver_t ata_pci_driver = {
sizeof(struct ata_pci_controller),
};
DRIVER_MODULE(atapci, pci, ata_pci_driver, ata_pci_devclass, 0, 0);
DRIVER_MODULE(atapci, pci, ata_pci_driver, ata_pci_devclass, NULL, NULL);
MODULE_VERSION(atapci, 1);
MODULE_DEPEND(atapci, ata, 1, 1, 1);
@ -773,7 +773,7 @@ static device_method_t ata_pcichannel_methods[] = {
#endif
DEVMETHOD(ata_reset, ata_pcichannel_reset),
{ 0, 0 }
DEVMETHOD_END
};
driver_t ata_pcichannel_driver = {
@ -782,7 +782,7 @@ driver_t ata_pcichannel_driver = {
sizeof(struct ata_channel),
};
DRIVER_MODULE(ata, atapci, ata_pcichannel_driver, ata_devclass, 0, 0);
DRIVER_MODULE(ata, atapci, ata_pcichannel_driver, ata_devclass, NULL, NULL);
/*
* misc support fucntions
@ -863,8 +863,8 @@ ata_set_desc(device_t dev)
device_set_desc_copy(dev, buffer);
}
struct ata_chip_id *
ata_match_chip(device_t dev, struct ata_chip_id *index)
const struct ata_chip_id *
ata_match_chip(device_t dev, const struct ata_chip_id *index)
{
uint32_t devid;
uint8_t revid;
@ -879,10 +879,10 @@ ata_match_chip(device_t dev, struct ata_chip_id *index)
return (NULL);
}
struct ata_chip_id *
ata_find_chip(device_t dev, struct ata_chip_id *index, int slot)
const struct ata_chip_id *
ata_find_chip(device_t dev, const struct ata_chip_id *index, int slot)
{
struct ata_chip_id *idx;
const struct ata_chip_id *idx;
device_t *children;
int nchildren, i;
uint8_t s;
@ -904,7 +904,7 @@ ata_find_chip(device_t dev, struct ata_chip_id *index, int slot)
return (NULL);
}
char *
const char *
ata_pcivendor2str(device_t dev)
{
switch (pci_get_vendor(dev)) {

View File

@ -33,7 +33,7 @@ struct ata_chip_id {
int cfg1;
int cfg2;
u_int8_t max_dma;
char *text;
const char *text;
};
#define ATA_PCI_MAX_CH 8
@ -50,7 +50,7 @@ struct ata_pci_controller {
int r_irq_rid;
struct resource *r_irq;
void *handle;
struct ata_chip_id *chip;
const struct ata_chip_id *chip;
int legacy;
int channels;
int ichannels;
@ -569,15 +569,15 @@ int ata_pci_status(device_t dev);
void ata_pci_hw(device_t dev);
void ata_pci_dmainit(device_t dev);
void ata_pci_dmafini(device_t dev);
char *ata_pcivendor2str(device_t dev);
const char *ata_pcivendor2str(device_t dev);
int ata_legacy(device_t);
void ata_generic_intr(void *data);
int ata_generic_chipinit(device_t dev);
int ata_generic_setmode(device_t dev, int target, int mode);
int ata_setup_interrupt(device_t dev, void *intr_func);
void ata_set_desc(device_t dev);
struct ata_chip_id *ata_match_chip(device_t dev, struct ata_chip_id *index);
struct ata_chip_id *ata_find_chip(device_t dev, struct ata_chip_id *index, int slot);
const struct ata_chip_id *ata_match_chip(device_t dev, const struct ata_chip_id *index);
const struct ata_chip_id *ata_find_chip(device_t dev, const struct ata_chip_id *index, int slot);
int ata_mode2idx(int mode);
/* global prototypes from chipsets/ata-*.c */
@ -611,15 +611,14 @@ static device_method_t __CONCAT(dname,_methods)[] = { \
DEVMETHOD(pci_write_config, ata_pci_write_config), \
DEVMETHOD(bus_print_child, ata_pci_print_child), \
DEVMETHOD(bus_child_location_str, ata_pci_child_location_str), \
{ 0, 0 } \
DEVMETHOD_END \
}; \
static driver_t __CONCAT(dname,_driver) = { \
"atapci", \
__CONCAT(dname,_methods), \
sizeof(struct ata_pci_controller) \
}; \
DRIVER_MODULE(dname, pci, __CONCAT(dname,_driver), ata_pci_devclass, 0, 0); \
DRIVER_MODULE(dname, pci, __CONCAT(dname,_driver), ata_pci_devclass, NULL, NULL); \
MODULE_VERSION(dname, 1); \
MODULE_DEPEND(dname, ata, 1, 1, 1); \
MODULE_DEPEND(dname, atapci, 1, 1, 1);

View File

@ -684,7 +684,7 @@ ata_sort_queue(struct ata_channel *ch, struct ata_request *request)
}
#endif
char *
const char *
ata_cmd2str(struct ata_request *request)
{
static char buffer[20];

View File

@ -4546,7 +4546,7 @@ static device_method_t ata_raid_sub_methods[] = {
DEVMETHOD(device_probe, ata_raid_subdisk_probe),
DEVMETHOD(device_attach, ata_raid_subdisk_attach),
DEVMETHOD(device_detach, ata_raid_subdisk_detach),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ata_raid_sub_driver = {

View File

@ -122,7 +122,7 @@ static device_method_t atapi_cam_methods[] = {
DEVMETHOD(device_attach, atapi_cam_attach),
DEVMETHOD(device_detach, atapi_cam_detach),
DEVMETHOD(ata_reinit, atapi_cam_reinit),
{0, 0}
DEVMETHOD_END
};
static driver_t atapi_cam_driver = {

View File

@ -1899,7 +1899,7 @@ static device_method_t acd_methods[] = {
/* ATA methods */
DEVMETHOD(ata_reinit, acd_reinit),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t acd_driver = {

View File

@ -423,7 +423,7 @@ static device_method_t afd_methods[] = {
/* ATA methods */
DEVMETHOD(ata_reinit, afd_reinit),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t afd_driver = {

View File

@ -723,7 +723,7 @@ static device_method_t ast_methods[] = {
/* ATA methods */
DEVMETHOD(ata_reinit, ast_reinit),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ast_driver = {

View File

@ -81,7 +81,7 @@ static int
ata_acard_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_ATP850R, 0, ATP_OLD, 0x00, ATA_UDMA2, "ATP850" },
{ ATA_ATP860A, 0, 0, 0x00, ATA_UDMA4, "ATP860A" },
{ ATA_ATP860R, 0, 0, 0x00, ATA_UDMA4, "ATP860R" },

View File

@ -75,7 +75,7 @@ static int
ata_ali_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_ALI_5289, 0x00, 2, ALI_SATA, ATA_SA150, "M5289" },
{ ATA_ALI_5288, 0x00, 4, ALI_SATA, ATA_SA300, "M5288" },
{ ATA_ALI_5287, 0x00, 4, ALI_SATA, ATA_SA150, "M5287" },
@ -304,11 +304,12 @@ ata_ali_setmode(device_t dev, int target, int mode)
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
int piomode;
u_int32_t piotimings[] =
static const uint32_t piotimings[] =
{ 0x006d0003, 0x00580002, 0x00440001, 0x00330001,
0x00310001, 0x006d0003, 0x00330001, 0x00310001 };
u_int8_t udma[] = {0x0c, 0x0b, 0x0a, 0x09, 0x08, 0x0f, 0x0d};
u_int32_t word54;
static const uint8_t udma[] = {0x0c, 0x0b, 0x0a, 0x09, 0x08, 0x0f,
0x0d};
uint32_t word54;
mode = min(mode, ctlr->chip->max_dma);

View File

@ -55,7 +55,6 @@ __FBSDID("$FreeBSD$");
#define MV_60XX 60 //must match ata_marvell.c's definition
#define MV_7042 72 //must match ata_marvell.c's definition
/*
* Adaptec chipset support functions
*/
@ -63,7 +62,7 @@ static int
ata_adaptec_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_ADAPTEC_1420, 0, 4, MV_60XX, ATA_SA300, "1420SA" },
{ ATA_ADAPTEC_1430, 0, 4, MV_7042, ATA_SA300, "1430SA" },
{ 0, 0, 0, 0, 0, 0}};

View File

@ -1056,11 +1056,12 @@ static device_method_t ata_ahci_ata_methods[] = {
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
DEVMETHOD(bus_setup_intr, ata_pci_setup_intr),
DEVMETHOD(bus_teardown_intr, ata_pci_teardown_intr),
{ 0, 0 }
DEVMETHOD_END
};
static driver_t ata_ahci_ata_driver = {
"atapci",
ata_ahci_ata_methods,
sizeof(struct ata_pci_controller)
};
DRIVER_MODULE(ata_ahci_ata, atapci, ata_ahci_ata_driver, ata_pci_devclass, 0, 0);
DRIVER_MODULE(ata_ahci_ata, atapci, ata_ahci_ata_driver, ata_pci_devclass,
NULL, NULL);

View File

@ -67,7 +67,7 @@ static int
ata_amd_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_AMD756, 0x00, 0x00, 0, ATA_UDMA4, "756" },
{ ATA_AMD766, 0x00, AMD_CABLE|AMD_BUG, 0, ATA_UDMA5, "766" },
{ ATA_AMD768, 0x00, AMD_CABLE, 0, ATA_UDMA5, "768" },
@ -113,8 +113,10 @@ ata_amd_setmode(device_t dev, int target, int mode)
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
int piomode;
u_int8_t timings[] = { 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
int modes[7] = { 0xc2, 0xc1, 0xc0, 0xc4, 0xc5, 0xc6, 0xc7 };
static const uint8_t timings[] =
{ 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
static const uint8_t modes[] =
{ 0xc2, 0xc1, 0xc0, 0xc4, 0xc5, 0xc6, 0xc7 };
int reg = 0x53 - devno;
mode = min(mode, ctlr->chip->max_dma);

View File

@ -58,11 +58,12 @@ static int ata_ati_ixp700_ch_attach(device_t dev);
static int ata_ati_setmode(device_t dev, int target, int mode);
/* misc defines */
#define ATI_PATA 0x01
#define ATI_SATA 0x02
#define SII_MEMIO 1 /* must match ata_siliconimage.c's definition */
#define SII_BUG 0x04 /* must match ata_siliconimage.c's definition */
#define ATI_SATA SII_MEMIO
#define ATI_PATA 0x02
#define ATI_AHCI 0x04
#define SII_MEMIO 1
#define SII_BUG 0x04
static int force_ahci = 1;
TUNABLE_INT("hw.ahci.force", &force_ahci);
@ -74,13 +75,13 @@ static int
ata_ati_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_ATI_IXP200, 0x00, ATI_PATA, 0, ATA_UDMA5, "IXP200" },
{ ATA_ATI_IXP300, 0x00, ATI_PATA, 0, ATA_UDMA6, "IXP300" },
{ ATA_ATI_IXP300_S1, 0x00, ATI_SATA, 0, ATA_SA150, "IXP300" },
{ ATA_ATI_IXP300_S1, 0x00, ATI_SATA, SII_BUG, ATA_SA150, "IXP300" },
{ ATA_ATI_IXP400, 0x00, ATI_PATA, 0, ATA_UDMA6, "IXP400" },
{ ATA_ATI_IXP400_S1, 0x00, ATI_SATA, 0, ATA_SA150, "IXP400" },
{ ATA_ATI_IXP400_S2, 0x00, ATI_SATA, 0, ATA_SA150, "IXP400" },
{ ATA_ATI_IXP400_S1, 0x00, ATI_SATA, SII_BUG, ATA_SA150, "IXP400" },
{ ATA_ATI_IXP400_S2, 0x00, ATI_SATA, SII_BUG, ATA_SA150, "IXP400" },
{ ATA_ATI_IXP600, 0x00, ATI_PATA, 0, ATA_UDMA6, "IXP600" },
{ ATA_ATI_IXP600_S1, 0x00, ATI_AHCI, 0, ATA_SA300, "IXP600" },
{ ATA_ATI_IXP700, 0x00, ATI_PATA, 0, ATA_UDMA6, "IXP700/800" },
@ -107,10 +108,7 @@ ata_ati_probe(device_t dev)
case ATI_SATA:
/*
* the ATI SATA controller is actually a SiI 3112 controller
* cfg values below much match those in ata-siliconimage.c
*/
ctlr->chip->cfg1 = SII_MEMIO;
ctlr->chip->cfg2 = SII_BUG;
ctlr->chipinit = ata_sii_chipinit;
break;
case ATI_AHCI:
@ -212,8 +210,8 @@ ata_ati_setmode(device_t dev, int target, int mode)
int devno = (ch->unit << 1) + target;
int offset = (devno ^ 0x01) << 3;
int piomode;
u_int8_t piotimings[] = { 0x5d, 0x47, 0x34, 0x22, 0x20 };
u_int8_t dmatimings[] = { 0x77, 0x21, 0x20 };
static const uint8_t piotimings[] = { 0x5d, 0x47, 0x34, 0x22, 0x20 };
static const uint8_t dmatimings[] = { 0x77, 0x21, 0x20 };
mode = min(mode, ctlr->chip->max_dma);
if (mode >= ATA_UDMA0) {

View File

@ -101,10 +101,12 @@ ata_cyrix_setmode(device_t dev, int target, int mode)
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
int piomode;
u_int32_t piotiming[] =
static const uint32_t piotiming[] =
{ 0x00009172, 0x00012171, 0x00020080, 0x00032010, 0x00040010 };
u_int32_t dmatiming[] = { 0x00077771, 0x00012121, 0x00002020 };
u_int32_t udmatiming[] = { 0x00921250, 0x00911140, 0x00911030 };
static const uint32_t dmatiming[] =
{ 0x00077771, 0x00012121, 0x00002020 };
static const uint32_t udmatiming[] =
{ 0x00921250, 0x00911140, 0x00911030 };
mode = min(mode, ATA_UDMA2);
/* dont try to set the mode if we dont have the resource */

View File

@ -72,8 +72,8 @@ static int
ata_highpoint_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
struct ata_chip_id *idx;
static struct ata_chip_id ids[] =
const struct ata_chip_id *idx;
static const struct ata_chip_id const ids[] =
{{ ATA_HPT374, 0x07, HPT_374, 0, ATA_UDMA6, "HPT374" },
{ ATA_HPT372, 0x02, HPT_372, 0, ATA_UDMA6, "HPT372N" },
{ ATA_HPT372, 0x01, HPT_372, 0, ATA_UDMA6, "HPT372" },
@ -163,8 +163,8 @@ ata_highpoint_setmode(device_t dev, int target, int mode)
struct ata_pci_controller *ctlr = device_get_softc(parent);
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
u_int32_t timings33[][4] = {
/* HPT366 HPT370 HPT372 HPT374 mode */
static const uint32_t timings33[][4] = {
/* HPT366 HPT370 HPT372 HPT374 mode */
{ 0x40d0a7aa, 0x06914e57, 0x0d029d5e, 0x0ac1f48a }, /* PIO 0 */
{ 0x40d0a7a3, 0x06914e43, 0x0d029d26, 0x0ac1f465 }, /* PIO 1 */
{ 0x40d0a753, 0x06514e33, 0x0c829ca6, 0x0a81f454 }, /* PIO 2 */

View File

@ -105,7 +105,7 @@ static int
ata_intel_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_I82371FB, 0, 0, 2, ATA_WDMA2, "PIIX" },
{ ATA_I82371SB, 0, 0, 2, ATA_WDMA2, "PIIX3" },
{ ATA_I82371AB, 0, 0, 2, ATA_UDMA2, "PIIX4" },
@ -519,8 +519,10 @@ ata_intel_new_setmode(device_t dev, int target, int mode)
u_int16_t reg54 = pci_read_config(parent, 0x54, 2);
u_int32_t mask40 = 0, new40 = 0;
u_int8_t mask44 = 0, new44 = 0;
u_int8_t timings[] = { 0x00, 0x00, 0x10, 0x21, 0x23, 0x00, 0x21, 0x23 };
u_int8_t utimings[] = { 0x00, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02 };
static const uint8_t timings[] =
{ 0x00, 0x00, 0x10, 0x21, 0x23, 0x00, 0x21, 0x23 };
static const uint8_t utimings[] =
{ 0x00, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02 };
/* In combined mode, skip PATA stuff for SATA channel. */
if (ch->flags & ATA_SATA)

View File

@ -57,7 +57,6 @@ static int ata_ite_ch_attach(device_t dev);
static int ata_ite_821x_setmode(device_t dev, int target, int mode);
static int ata_ite_8213_setmode(device_t dev, int target, int mode);
/*
* Integrated Technology Express Inc. (ITE) chipset support functions
*/
@ -65,7 +64,7 @@ static int
ata_ite_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_IT8213F, 0x00, 0x00, 0x00, ATA_UDMA6, "IT8213F" },
{ ATA_IT8212F, 0x00, 0x00, 0x00, ATA_UDMA6, "IT8212F" },
{ ATA_IT8211F, 0x00, 0x00, 0x00, ATA_UDMA6, "IT8211F" },
@ -132,9 +131,9 @@ ata_ite_821x_setmode(device_t dev, int target, int mode)
int devno = (ch->unit << 1) + target;
int piomode;
uint8_t *timings = (uint8_t*)(&ctlr->chipset_data);
u_int8_t udmatiming[] =
static const uint8_t udmatiming[] =
{ 0x44, 0x42, 0x31, 0x21, 0x11, 0xa2, 0x91 };
u_int8_t chtiming[] =
static const uint8_t chtiming[] =
{ 0xaa, 0xa3, 0xa1, 0x33, 0x31, 0x88, 0x32, 0x31 };
mode = min(mode, ctlr->chip->max_dma);
@ -182,8 +181,10 @@ ata_ite_8213_setmode(device_t dev, int target, int mode)
u_int16_t reg54 = pci_read_config(parent, 0x54, 2);
u_int16_t mask40 = 0, new40 = 0;
u_int8_t mask44 = 0, new44 = 0;
u_int8_t timings[] = { 0x00, 0x00, 0x10, 0x21, 0x23, 0x00, 0x21, 0x23 };
u_int8_t utimings[] = { 0x00, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02 };
static const uint8_t timings[] =
{ 0x00, 0x00, 0x10, 0x21, 0x23, 0x00, 0x21, 0x23 };
static const uint8_t utimings[] =
{ 0x00, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02 };
mode = min(mode, ctlr->chip->max_dma);

View File

@ -63,8 +63,8 @@ static int
ata_jmicron_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
struct ata_chip_id *idx;
static struct ata_chip_id ids[] =
const struct ata_chip_id *idx;
static const struct ata_chip_id const ids[] =
{{ ATA_JMB360, 0, 1, 0, ATA_SA300, "JMB360" },
{ ATA_JMB361, 0, 1, 1, ATA_UDMA6, "JMB361" },
{ ATA_JMB363, 0, 2, 1, ATA_UDMA6, "JMB363" },

View File

@ -99,7 +99,7 @@ static int
ata_marvell_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_M88SX5040, 0, 4, MV_50XX, ATA_SA150, "88SX5040" },
{ ATA_M88SX5041, 0, 4, MV_50XX, ATA_SA150, "88SX5041" },
{ ATA_M88SX5080, 0, 8, MV_50XX, ATA_SA150, "88SX5080" },

View File

@ -103,11 +103,13 @@ ata_national_setmode(device_t dev, int target, int mode)
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
int piomode;
u_int32_t piotiming[] =
static const uint32_t piotiming[] =
{ 0x9172d132, 0x21717121, 0x00803020, 0x20102010, 0x00100010,
0x9172d132, 0x20102010, 0x00100010 };
u_int32_t dmatiming[] = { 0x80077771, 0x80012121, 0x80002020 };
u_int32_t udmatiming[] = { 0x80921250, 0x80911140, 0x80911030 };
static const uint32_t dmatiming[] =
{ 0x80077771, 0x80012121, 0x80002020 };
static const uint32_t udmatiming[] =
{ 0x80921250, 0x80911140, 0x80911030 };
mode = min(mode, ATA_UDMA2);

View File

@ -75,7 +75,7 @@ static int
ata_nvidia_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_NFORCE1, 0, 0, 0, ATA_UDMA5, "nForce" },
{ ATA_NFORCE2, 0, 0, 0, ATA_UDMA6, "nForce2" },
{ ATA_NFORCE2_PRO, 0, 0, 0, ATA_UDMA6, "nForce2 Pro" },
@ -332,8 +332,10 @@ ata_nvidia_setmode(device_t dev, int target, int mode)
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
int piomode;
u_int8_t timings[] = { 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
int modes[7] = { 0xc2, 0xc1, 0xc0, 0xc4, 0xc5, 0xc6, 0xc7 };
static const uint8_t timings[] =
{ 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
static const uint8_t modes[] =
{ 0xc2, 0xc1, 0xc0, 0xc4, 0xc5, 0xc6, 0xc7 };
int reg = 0x63 - devno;
mode = min(mode, ctlr->chip->max_dma);

View File

@ -129,8 +129,8 @@ static int
ata_promise_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
struct ata_chip_id *idx;
static struct ata_chip_id ids[] =
const struct ata_chip_id *idx;
static const struct ata_chip_id const ids[] =
{{ ATA_PDC20246, 0, PR_OLD, 0x00, ATA_UDMA2, "PDC20246" },
{ ATA_PDC20262, 0, PR_NEW, 0x00, ATA_UDMA4, "PDC20262" },
{ ATA_PDC20263, 0, PR_NEW, 0x00, ATA_UDMA4, "PDC20263" },
@ -454,7 +454,7 @@ ata_promise_setmode(device_t dev, int target, int mode)
struct ata_pci_controller *ctlr = device_get_softc(parent);
struct ata_channel *ch = device_get_softc(dev);
int devno = (ch->unit << 1) + target;
u_int32_t timings[][2] = {
static const uint32_t timings[][2] = {
/* PR_OLD PR_NEW mode */
{ 0x004ff329, 0x004fff2f }, /* PIO 0 */
{ 0x004fec25, 0x004ff82a }, /* PIO 1 */

View File

@ -75,7 +75,7 @@ static int
ata_serverworks_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_ROSB4, 0x00, SWKS_33, 0, ATA_WDMA2, "ROSB4" },
{ ATA_CSB5, 0x92, SWKS_100, 0, ATA_UDMA5, "CSB5" },
{ ATA_CSB5, 0x00, SWKS_66, 0, ATA_UDMA4, "CSB5" },
@ -350,8 +350,8 @@ ata_serverworks_setmode(device_t dev, int target, int mode)
int devno = (ch->unit << 1) + target;
int offset = (devno ^ 0x01) << 3;
int piomode;
u_int8_t piotimings[] = { 0x5d, 0x47, 0x34, 0x22, 0x20 };
u_int8_t dmatimings[] = { 0x77, 0x21, 0x20 };
static const uint8_t piotimings[] = { 0x5d, 0x47, 0x34, 0x22, 0x20 };
static const uint8_t dmatimings[] = { 0x77, 0x21, 0x20 };
mode = min(mode, ctlr->chip->max_dma);
if (mode >= ATA_UDMA0) {

View File

@ -87,7 +87,7 @@ static int
ata_sii_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_SII3114, 0x00, SII_MEMIO, SII_4CH, ATA_SA150, "3114" },
{ ATA_SII3512, 0x02, SII_MEMIO, 0, ATA_SA150, "3512" },
{ ATA_SII3112, 0x02, SII_MEMIO, 0, ATA_SA150, "3112" },
@ -272,10 +272,11 @@ ata_cmd_setmode(device_t dev, int target, int mode)
int treg = 0x54 + ((devno < 3) ? (devno << 1) : 7);
int ureg = ch->unit ? 0x7b : 0x73;
int piomode;
uint8_t piotimings[] = { 0xa9, 0x57, 0x44, 0x32, 0x3f, 0x87, 0x32, 0x3f };
uint8_t udmatimings[][2] = { { 0x31, 0xc2 }, { 0x21, 0x82 },
{ 0x11, 0x42 }, { 0x25, 0x8a },
{ 0x15, 0x4a }, { 0x05, 0x0a } };
static const uint8_t piotimings[] =
{ 0xa9, 0x57, 0x44, 0x32, 0x3f, 0x87, 0x32, 0x3f };
static const uint8_t udmatimings[][2] =
{ { 0x31, 0xc2 }, { 0x21, 0x82 }, { 0x11, 0x42 },
{ 0x25, 0x8a }, { 0x15, 0x4a }, { 0x05, 0x0a } };
mode = min(mode, ctlr->chip->max_dma);
if (mode >= ATA_UDMA0) {
@ -410,9 +411,11 @@ ata_sii_setmode(device_t dev, int target, int mode)
u_int8_t preg = 0xa4 + rego;
u_int8_t dreg = 0xa8 + rego;
u_int8_t ureg = 0xac + rego;
u_int16_t piotimings[] = { 0x328a, 0x2283, 0x1104, 0x10c3, 0x10c1 };
u_int16_t dmatimings[] = { 0x2208, 0x10c2, 0x10c1 };
u_int8_t udmatimings[] = { 0xf, 0xb, 0x7, 0x5, 0x3, 0x2, 0x1 };
static const uint16_t piotimings[] =
{ 0x328a, 0x2283, 0x1104, 0x10c3, 0x10c1 };
static const uint16_t dmatimings[] = { 0x2208, 0x10c2, 0x10c1 };
static const uint8_t udmatimings[] =
{ 0xf, 0xb, 0x7, 0x5, 0x3, 0x2, 0x1 };
mode = min(mode, ctlr->chip->max_dma);

View File

@ -66,7 +66,6 @@ static int ata_sis_setmode(device_t dev, int target, int mode);
#define SIS_133OLD 6
#define SIS_SATA 7
/*
* Silicon Integrated Systems Corp. (SiS) chipset support functions
*/
@ -74,8 +73,8 @@ static int
ata_sis_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
struct ata_chip_id *idx;
static struct ata_chip_id ids[] =
const struct ata_chip_id *idx;
static const struct ata_chip_id const ids[] =
{{ ATA_SIS182, 0x00, SIS_SATA, 0, ATA_SA150, "182" }, /* south */
{ ATA_SIS181, 0x00, SIS_SATA, 0, ATA_SA150, "181" }, /* south */
{ ATA_SIS180, 0x00, SIS_SATA, 0, ATA_SA150, "180" }, /* south */
@ -102,6 +101,8 @@ ata_sis_probe(device_t dev)
{ ATA_SIS5513, 0xc2, SIS_33, 1, ATA_UDMA2, "5513" },
{ ATA_SIS5513, 0x00, SIS_33, 1, ATA_WDMA2, "5513" },
{ 0, 0, 0, 0, 0, 0 }};
static struct ata_chip_id id[] =
{{ ATA_SISSOUTH, 0x10, 0, 0, 0, "" }, { 0, 0, 0, 0, 0, 0 }};
char buffer[64];
int found = 0;
@ -114,14 +115,15 @@ ata_sis_probe(device_t dev)
if (!(idx = ata_find_chip(dev, ids, -pci_get_slot(dev))))
return ENXIO;
if (idx->cfg2 && !found) {
if (idx->cfg2) {
u_int8_t reg57 = pci_read_config(dev, 0x57, 1);
pci_write_config(dev, 0x57, (reg57 & 0x7f), 1);
if (pci_read_config(dev, PCIR_DEVVENDOR, 4) == ATA_SIS5518) {
found = 1;
idx->cfg1 = SIS_133NEW;
idx->max_dma = ATA_UDMA6;
memcpy(&id[0], idx, sizeof(id[0]));
id[0].cfg1 = SIS_133NEW;
id[0].max_dma = ATA_UDMA6;
sprintf(buffer, "SiS 962/963 %s controller",
ata_mode2str(idx->max_dma));
}
@ -132,17 +134,13 @@ ata_sis_probe(device_t dev)
pci_write_config(dev, 0x4a, (reg4a | 0x10), 1);
if (pci_read_config(dev, PCIR_DEVVENDOR, 4) == ATA_SIS5517) {
struct ata_chip_id id[] =
{{ ATA_SISSOUTH, 0x10, 0, 0, 0, "" }, { 0, 0, 0, 0, 0, 0 }};
found = 1;
if (ata_find_chip(dev, id, pci_get_slot(dev))) {
idx->cfg1 = SIS_133OLD;
idx->max_dma = ATA_UDMA6;
}
else {
idx->cfg1 = SIS_100NEW;
idx->max_dma = ATA_UDMA5;
id[0].cfg1 = SIS_133OLD;
id[0].max_dma = ATA_UDMA6;
} else {
id[0].cfg1 = SIS_100NEW;
id[0].max_dma = ATA_UDMA5;
}
sprintf(buffer, "SiS 961 %s controller",ata_mode2str(idx->max_dma));
}
@ -151,6 +149,8 @@ ata_sis_probe(device_t dev)
if (!found)
sprintf(buffer,"SiS %s %s controller",
idx->text, ata_mode2str(idx->max_dma));
else
idx = &id[0];
device_set_desc_copy(dev, buffer);
ctlr->chip = idx;
@ -262,7 +262,7 @@ ata_sis_setmode(device_t dev, int target, int mode)
switch (ctlr->chip->cfg1) {
case SIS_133NEW: {
u_int32_t timings[] =
static const uint32_t timings[] =
{ 0x28269008, 0x0c266008, 0x04263008, 0x0c0a3008, 0x05093008,
0x22196008, 0x0c0a3008, 0x05093008, 0x050939fc, 0x050936ac,
0x0509347c, 0x0509325c, 0x0509323c, 0x0509322c, 0x0509321c};
@ -273,7 +273,7 @@ ata_sis_setmode(device_t dev, int target, int mode)
break;
}
case SIS_133OLD: {
u_int16_t timings[] =
static const uint16_t timings[] =
{ 0x00cb, 0x0067, 0x0044, 0x0033, 0x0031, 0x0044, 0x0033, 0x0031,
0x8f31, 0x8a31, 0x8731, 0x8531, 0x8331, 0x8231, 0x8131 };
@ -283,7 +283,7 @@ ata_sis_setmode(device_t dev, int target, int mode)
break;
}
case SIS_100NEW: {
u_int16_t timings[] =
static const uint16_t timings[] =
{ 0x00cb, 0x0067, 0x0044, 0x0033, 0x0031, 0x0044, 0x0033,
0x0031, 0x8b31, 0x8731, 0x8531, 0x8431, 0x8231, 0x8131 };
u_int16_t reg = 0x40 + (devno << 1);
@ -294,7 +294,7 @@ ata_sis_setmode(device_t dev, int target, int mode)
case SIS_100OLD:
case SIS_66:
case SIS_33: {
u_int16_t timings[] =
static const uint16_t timings[] =
{ 0x0c0b, 0x0607, 0x0404, 0x0303, 0x0301, 0x0404, 0x0303,
0x0301, 0xf301, 0xd301, 0xb301, 0xa301, 0x9301, 0x8301 };
u_int16_t reg = 0x40 + (devno << 1);

View File

@ -82,7 +82,6 @@ static int ata_via_sata_status(device_t dev);
#define VIAAHCI 0x08
#define VIASATA 0x10
/*
* VIA Technologies Inc. chipset support functions
*/
@ -90,7 +89,7 @@ static int
ata_via_probe(device_t dev)
{
struct ata_pci_controller *ctlr = device_get_softc(dev);
static struct ata_chip_id ids[] =
static const struct ata_chip_id const ids[] =
{{ ATA_VIA82C586, 0x02, VIA33, 0x00, ATA_UDMA2, "82C586B" },
{ ATA_VIA82C586, 0x00, VIA33, 0x00, ATA_WDMA2, "82C586" },
{ ATA_VIA82C596, 0x12, VIA66, VIACLK, ATA_UDMA4, "82C596B" },
@ -114,7 +113,7 @@ ata_via_probe(device_t dev)
{ ATA_VIAVX855, 0x00, VIA133, 0x00, ATA_UDMA6, "VX855" },
{ ATA_VIAVX900, 0x00, VIA133, VIASATA, ATA_SA300, "VX900" },
{ 0, 0, 0, 0, 0, 0 }};
static struct ata_chip_id new_ids[] =
static const struct ata_chip_id const new_ids[] =
{{ ATA_VIA6410, 0x00, 0, 0x00, ATA_UDMA6, "6410" },
{ ATA_VIA6420, 0x00, 7, 0x00, ATA_SA150, "6420" },
{ ATA_VIA6421, 0x00, 6, VIABAR, ATA_SA150, "6421" },
@ -328,8 +327,10 @@ ata_via_new_setmode(device_t dev, int target, int mode)
if ((ctlr->chip->cfg2 & VIABAR) && (ch->unit > 1)) {
int piomode;
u_int8_t pio_timings[] = { 0xa8, 0x65, 0x65, 0x32, 0x20 };
u_int8_t dma_timings[] = { 0xee, 0xe8, 0xe6, 0xe4, 0xe2, 0xe1, 0xe0 };
static const uint8_t pio_timings[] =
{ 0xa8, 0x65, 0x65, 0x32, 0x20 };
static const uint8_t dma_timings[] =
{ 0xee, 0xe8, 0xe6, 0xe4, 0xe2, 0xe1, 0xe0 };
/* This chip can't do WDMA. */
if (mode >= ATA_WDMA0 && mode < ATA_UDMA0)
@ -355,8 +356,9 @@ ata_via_old_setmode(device_t dev, int target, int mode)
int devno = (ch->unit << 1) + target;
int reg = 0x53 - devno;
int piomode;
uint8_t timings[] = { 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
uint8_t modes[][7] = {
static const uint8_t timings[] =
{ 0xa8, 0x65, 0x42, 0x22, 0x20, 0xa8, 0x22, 0x20 };
static const uint8_t modes[][7] = {
{ 0xc2, 0xc1, 0xc0, 0x00, 0x00, 0x00, 0x00 }, /* VIA ATA33 */
{ 0xee, 0xec, 0xea, 0xe9, 0xe8, 0x00, 0x00 }, /* VIA ATA66 */
{ 0xf7, 0xf6, 0xf4, 0xf2, 0xf1, 0xf0, 0x00 }, /* VIA ATA100 */