Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 32517
b: refs/heads/master
c: e47f317
h: refs/heads/master
i:
  32515: 2408e1e
v: v3
  • Loading branch information
Linus Torvalds committed Jul 13, 2006
1 parent 3130d27 commit 9be016f
Show file tree
Hide file tree
Showing 129 changed files with 1,527 additions and 909 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: a6f157a88d1398d7ccb743c5a56138edf6f6ef0b
refs/heads/master: e47f31787dee5bf57453e18edefff56e17fa44f9
19 changes: 11 additions & 8 deletions trunk/Documentation/feature-removal-schedule.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,14 +55,6 @@ Who: Mauro Carvalho Chehab <mchehab@brturbo.com.br>

---------------------------

What: remove EXPORT_SYMBOL(insert_resource)
When: April 2006
Files: kernel/resource.c
Why: No modular usage in the kernel.
Who: Adrian Bunk <bunk@stusta.de>

---------------------------

What: PCMCIA control ioctl (needed for pcmcia-cs [cardmgr, cardctl])
When: November 2005
Files: drivers/pcmcia/: pcmcia_ioctl.c
Expand Down Expand Up @@ -255,3 +247,14 @@ Why: The interrupt related SA_* flags are replaced by IRQF_* to move them
Who: Thomas Gleixner <tglx@linutronix.de>

---------------------------

What: i2c-ite and i2c-algo-ite drivers
When: September 2006
Why: These drivers never compiled since they were added to the kernel
tree 5 years ago. This feature removal can be reevaluated if
someone shows interest in the drivers, fixes them and takes over
maintenance.
http://marc.theaimsgroup.com/?l=linux-mips&m=115040510817448
Who: Jean Delvare <khali@linux-fr.org>

---------------------------
32 changes: 30 additions & 2 deletions trunk/Documentation/hwmon/abituguru
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,36 @@ Kernel driver abituguru
=======================

Supported chips:
* Abit uGuru (Hardware Monitor part only)
* Abit uGuru revision 1-3 (Hardware Monitor part only)
Prefix: 'abituguru'
Addresses scanned: ISA 0x0E0
Datasheet: Not available, this driver is based on reverse engineering.
A "Datasheet" has been written based on the reverse engineering it
should be available in the same dir as this file under the name
abituguru-datasheet.
Note:
The uGuru is a microcontroller with onboard firmware which programs
it to behave as a hwmon IC. There are many different revisions of the
firmware and thus effectivly many different revisions of the uGuru.
Below is an incomplete list with which revisions are used for which
Motherboards:
uGuru 1.00 ~ 1.24 (AI7, KV8-MAX3, AN7) (1)
uGuru 2.0.0.0 ~ 2.0.4.2 (KV8-PRO)
uGuru 2.1.0.0 ~ 2.1.2.8 (AS8, AV8, AA8, AG8, AA8XE, AX8)
uGuru 2.2.0.0 ~ 2.2.0.6 (AA8 Fatal1ty)
uGuru 2.3.0.0 ~ 2.3.0.9 (AN8)
uGuru 3.0.0.0 ~ 3.0.1.2 (AW8, AL8, NI8)
uGuru 4.xxxxx? (AT8 32X) (2)
1) For revisions 2 and 3 uGuru's the driver can autodetect the
sensortype (Volt or Temp) for bank1 sensors, for revision 1 uGuru's
this doesnot always work. For these uGuru's the autodection can
be overriden with the bank1_types module param. For all 3 known
revison 1 motherboards the correct use of this param is:
bank1_types=1,1,0,0,0,0,0,2,0,0,0,0,2,0,0,1
You may also need to specify the fan_sensors option for these boards
fan_sensors=5
2) The current version of the abituguru driver is known to NOT work
on these Motherboards

Authors:
Hans de Goede <j.w.r.degoede@hhs.nl>,
Expand All @@ -22,14 +45,19 @@ Module Parameters
* force: bool Force detection. Note this parameter only causes the
detection to be skipped, if the uGuru can't be read
the module initialization (insmod) will still fail.
* bank1_types: int[] Bank1 sensortype autodetection override:
-1 autodetect (default)
0 volt sensor
1 temp sensor
2 not connected
* fan_sensors: int Tell the driver how many fan speed sensors there are
on your motherboard. Default: 0 (autodetect).
* pwms: int Tell the driver how many fan speed controls (fan
pwms) your motherboard has. Default: 0 (autodetect).
* verbose: int How verbose should the driver be? (0-3):
0 normal output
1 + verbose error reporting
2 + sensors type probing info\n"
2 + sensors type probing info (default)
3 + retryable error reporting
Default: 2 (the driver is still in the testing phase)

Expand Down
4 changes: 2 additions & 2 deletions trunk/Documentation/i2c/busses/i2c-sis96x
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ I suspect that this driver could be made to work for the following SiS
chipsets as well: 635, and 635T. If anyone owns a board with those chips
AND is willing to risk crashing & burning an otherwise well-behaved kernel
in the name of progress... please contact me at <mhoffman@lightlink.com> or
via the project's mailing list: <lm-sensors@lm-sensors.org>. Please
send bug reports and/or success stories as well.
via the project's mailing list: <i2c@lm-sensors.org>. Please send bug
reports and/or success stories as well.


TO DOs
Expand Down
4 changes: 2 additions & 2 deletions trunk/Documentation/usb/usb-serial.txt
Original file line number Diff line number Diff line change
Expand Up @@ -399,10 +399,10 @@ REINER SCT cyberJack pinpad/e-com USB chipcard reader

Prolific PL2303 Driver

This driver support any device that has the PL2303 chip from Prolific
This driver supports any device that has the PL2303 chip from Prolific
in it. This includes a number of single port USB to serial
converters and USB GPS devices. Devices from Aten (the UC-232) and
IO-Data work with this driver.
IO-Data work with this driver, as does the DCU-11 mobile-phone cable.

For any questions or problems with this driver, please contact Greg
Kroah-Hartman at greg@kroah.com
Expand Down
13 changes: 9 additions & 4 deletions trunk/MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,7 @@ S: Maintained
ALI1563 I2C DRIVER
P: Rudolf Marek
M: r.marek@sh.cvut.cz
L: lm-sensors@lm-sensors.org
L: i2c@lm-sensors.org
S: Maintained

ALPHA PORT
Expand Down Expand Up @@ -1249,7 +1249,7 @@ S: Maintained
I2C SUBSYSTEM
P: Jean Delvare
M: khali@linux-fr.org
L: lm-sensors@lm-sensors.org
L: i2c@lm-sensors.org
W: http://www.lm-sensors.nu/
T: quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
S: Maintained
Expand Down Expand Up @@ -2093,7 +2093,7 @@ S: Maintained
OPENCORES I2C BUS DRIVER
P: Peter Korsgaard
M: jacmet@sunsite.dk
L: lm-sensors@lm-sensors.org
L: i2c@lm-sensors.org
S: Maintained

ORACLE CLUSTER FILESYSTEM 2 (OCFS2)
Expand Down Expand Up @@ -3138,7 +3138,7 @@ S: Maintained
VIAPRO SMBUS DRIVER
P: Jean Delvare
M: khali@linux-fr.org
L: lm-sensors@lm-sensors.org
L: i2c@lm-sensors.org
S: Maintained

UCLINUX (AND M68KNOMMU)
Expand Down Expand Up @@ -3186,6 +3186,11 @@ S: Maintained
W1 DALLAS'S 1-WIRE BUS
P: Evgeniy Polyakov
M: johnpol@2ka.mipt.ru
S: Maintained

W83791D HARDWARE MONITORING DRIVER
P: Charles Spirakis
M: bezaur@gmail.com
L: lm-sensors@lm-sensors.org
S: Maintained

Expand Down
4 changes: 0 additions & 4 deletions trunk/arch/i386/pci/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@

#include "pci.h"

#ifdef CONFIG_PCI_BIOS
extern void pcibios_sort(void);
#endif

unsigned int pci_probe = PCI_PROBE_BIOS | PCI_PROBE_CONF1 | PCI_PROBE_CONF2 |
PCI_PROBE_MMCONF;

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/i386/pci/pci.h
Original file line number Diff line number Diff line change
Expand Up @@ -84,4 +84,4 @@ extern int pci_conf1_read(unsigned int seg, unsigned int bus,
extern void pci_direct_init(void);
extern void pci_pcbios_init(void);
extern void pci_mmcfg_init(void);

extern void pcibios_sort(void);
60 changes: 24 additions & 36 deletions trunk/drivers/acpi/osl.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@
#include <linux/delay.h>
#include <linux/workqueue.h>
#include <linux/nmi.h>
#include <linux/kthread.h>
#include <acpi/acpi.h>
#include <asm/io.h>
#include <acpi/acpi_bus.h>
Expand Down Expand Up @@ -583,16 +582,6 @@ static void acpi_os_execute_deferred(void *context)
return;
}

static int acpi_os_execute_thread(void *context)
{
struct acpi_os_dpc *dpc = (struct acpi_os_dpc *)context;
if (dpc) {
dpc->function(dpc->context);
kfree(dpc);
}
do_exit(0);
}

/*******************************************************************************
*
* FUNCTION: acpi_os_execute
Expand All @@ -614,10 +603,16 @@ acpi_status acpi_os_execute(acpi_execute_type type,
acpi_status status = AE_OK;
struct acpi_os_dpc *dpc;
struct work_struct *task;
struct task_struct *p;

ACPI_FUNCTION_TRACE("os_queue_for_execution");

ACPI_DEBUG_PRINT((ACPI_DB_EXEC,
"Scheduling function [%p(%p)] for deferred execution.\n",
function, context));

if (!function)
return AE_BAD_PARAMETER;
return_ACPI_STATUS(AE_BAD_PARAMETER);

/*
* Allocate/initialize DPC structure. Note that this memory will be
* freed by the callee. The kernel handles the tq_struct list in a
Expand All @@ -628,34 +623,27 @@ acpi_status acpi_os_execute(acpi_execute_type type,
* We can save time and code by allocating the DPC and tq_structs
* from the same memory.
*/
if (type == OSL_NOTIFY_HANDLER) {
dpc = kmalloc(sizeof(struct acpi_os_dpc), GFP_KERNEL);
} else {
dpc = kmalloc(sizeof(struct acpi_os_dpc) +
sizeof(struct work_struct), GFP_ATOMIC);
}

dpc =
kmalloc(sizeof(struct acpi_os_dpc) + sizeof(struct work_struct),
GFP_ATOMIC);
if (!dpc)
return AE_NO_MEMORY;
return_ACPI_STATUS(AE_NO_MEMORY);

dpc->function = function;
dpc->context = context;

if (type == OSL_NOTIFY_HANDLER) {
p = kthread_create(acpi_os_execute_thread, dpc, "kacpid_notify");
if (!IS_ERR(p)) {
wake_up_process(p);
} else {
status = AE_NO_MEMORY;
kfree(dpc);
}
} else {
task = (void *)(dpc + 1);
INIT_WORK(task, acpi_os_execute_deferred, (void *)dpc);
if (!queue_work(kacpid_wq, task)) {
status = AE_ERROR;
kfree(dpc);
}
task = (void *)(dpc + 1);
INIT_WORK(task, acpi_os_execute_deferred, (void *)dpc);

if (!queue_work(kacpid_wq, task)) {
ACPI_DEBUG_PRINT((ACPI_DB_ERROR,
"Call to queue_work() failed.\n"));
kfree(dpc);
status = AE_ERROR;
}
return status;

return_ACPI_STATUS(status);
}

EXPORT_SYMBOL(acpi_os_execute);
Expand Down
5 changes: 3 additions & 2 deletions trunk/drivers/base/bus.c
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ static struct kobj_type ktype_bus = {

};

decl_subsys(bus, &ktype_bus, NULL);
static decl_subsys(bus, &ktype_bus, NULL);


#ifdef CONFIG_HOTPLUG
Expand Down Expand Up @@ -598,12 +598,13 @@ void put_bus(struct bus_type * bus)
*
* Note that kset_find_obj increments bus' reference count.
*/

#if 0
struct bus_type * find_bus(char * name)
{
struct kobject * k = kset_find_obj(&bus_subsys.kset, name);
return k ? to_bus(k) : NULL;
}
#endif /* 0 */


/**
Expand Down
30 changes: 15 additions & 15 deletions trunk/drivers/base/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -559,20 +559,20 @@ static void device_create_release(struct device *dev)

/**
* device_create - creates a device and registers it with sysfs
* @cs: pointer to the struct class that this device should be registered to.
* @parent: pointer to the parent struct device of this new device, if any.
* @dev: the dev_t for the char device to be added.
* @fmt: string for the class device's name
* @class: pointer to the struct class that this device should be registered to
* @parent: pointer to the parent struct device of this new device, if any
* @devt: the dev_t for the char device to be added
* @fmt: string for the device's name
*
* This function can be used by char device classes. A struct device
* will be created in sysfs, registered to the specified class.
*
* This function can be used by char device classes. A struct
* device will be created in sysfs, registered to the specified
* class.
* A "dev" file will be created, showing the dev_t for the device, if
* the dev_t is not 0,0.
* If a pointer to a parent struct device is passed in, the newly
* created struct device will be a child of that device in sysfs. The
* pointer to the struct device will be returned from the call. Any
* further sysfs files that might be required can be created using this
* If a pointer to a parent struct device is passed in, the newly created
* struct device will be a child of that device in sysfs.
* The pointer to the struct device will be returned from the call.
* Any further sysfs files that might be required can be created using this
* pointer.
*
* Note: the struct class passed to this function must have previously
Expand Down Expand Up @@ -620,11 +620,11 @@ EXPORT_SYMBOL_GPL(device_create);

/**
* device_destroy - removes a device that was created with device_create()
* @class: the pointer to the struct class that this device was registered * with.
* @dev: the dev_t of the device that was previously registered.
* @class: pointer to the struct class that this device was registered with
* @devt: the dev_t of the device that was previously registered
*
* This call unregisters and cleans up a class device that was created with a
* call to class_device_create()
* This call unregisters and cleans up a device that was created with a
* call to device_create().
*/
void device_destroy(struct class *class, dev_t devt)
{
Expand Down
21 changes: 19 additions & 2 deletions trunk/drivers/hwmon/abituguru.c
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,14 @@ static const u8 abituguru_pwm_max[5] = { 0, 255, 255, 75, 75 };
static int force;
module_param(force, bool, 0);
MODULE_PARM_DESC(force, "Set to one to force detection.");
static int bank1_types[ABIT_UGURU_MAX_BANK1_SENSORS] = { -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 };
module_param_array(bank1_types, int, NULL, 0);
MODULE_PARM_DESC(bank1_types, "Bank1 sensortype autodetection override:\n"
" -1 autodetect\n"
" 0 volt sensor\n"
" 1 temp sensor\n"
" 2 not connected");
static int fan_sensors;
module_param(fan_sensors, int, 0);
MODULE_PARM_DESC(fan_sensors, "Number of fan sensors on the uGuru "
Expand Down Expand Up @@ -397,6 +405,15 @@ abituguru_detect_bank1_sensor_type(struct abituguru_data *data,
u8 val, buf[3];
int ret = ABIT_UGURU_NC;

/* If overriden by the user return the user selected type */
if (bank1_types[sensor_addr] >= ABIT_UGURU_IN_SENSOR &&
bank1_types[sensor_addr] <= ABIT_UGURU_NC) {
ABIT_UGURU_DEBUG(2, "assuming sensor type %d for bank1 sensor "
"%d because of \"bank1_types\" module param\n",
bank1_types[sensor_addr], (int)sensor_addr);
return bank1_types[sensor_addr];
}

/* First read the sensor and the current settings */
if (abituguru_read(data, ABIT_UGURU_SENSOR_BANK1, sensor_addr, &val,
1, ABIT_UGURU_MAX_RETRIES) != 1)
Expand Down Expand Up @@ -514,7 +531,7 @@ abituguru_detect_no_bank2_sensors(struct abituguru_data *data)
{
int i;

if (fan_sensors) {
if (fan_sensors > 0 && fan_sensors <= ABIT_UGURU_MAX_BANK2_SENSORS) {
data->bank2_sensors = fan_sensors;
ABIT_UGURU_DEBUG(2, "assuming %d fan sensors because of "
"\"fan_sensors\" module param\n",
Expand Down Expand Up @@ -568,7 +585,7 @@ abituguru_detect_no_pwms(struct abituguru_data *data)
{
int i, j;

if (pwms) {
if (pwms > 0 && pwms <= ABIT_UGURU_MAX_PWMS) {
data->pwms = pwms;
ABIT_UGURU_DEBUG(2, "assuming %d PWM outputs because of "
"\"pwms\" module param\n", (int)data->pwms);
Expand Down
Loading

0 comments on commit 9be016f

Please sign in to comment.