Home
last modified time | relevance | path

Searched refs:di (Results 1 – 25 of 207) sorted by relevance

123456789

/linux/drivers/regulator/
H A Dfan53555.c156 struct fan53555_device_info *di = rdev_get_drvdata(rdev); in fan53555_set_suspend_voltage() local
159 if (di->sleep_vol_cache == uV) in fan53555_set_suspend_voltage()
164 ret = regmap_update_bits(rdev->regmap, di->sleep_reg, in fan53555_set_suspend_voltage()
165 di->desc.vsel_mask, ret); in fan53555_set_suspend_voltage()
170 di->sleep_vol_cache = uV; in fan53555_set_suspend_voltage()
177 struct fan53555_device_info *di = rdev_get_drvdata(rdev); in fan53555_set_suspend_enable() local
179 return regmap_update_bits(rdev->regmap, di->sleep_en_reg, in fan53555_set_suspend_enable()
185 struct fan53555_device_info *di = rdev_get_drvdata(rdev); in fan53555_set_suspend_disable() local
187 return regmap_update_bits(rdev->regmap, di->sleep_en_reg, in fan53555_set_suspend_disable()
193 struct fan53555_device_info *di = rdev_get_drvdata(rdev); in fan53555_set_mode() local
[all …]
H A Dsy8827n.c41 struct sy8827n_device_info *di = rdev_get_drvdata(rdev); in sy8827n_set_mode() local
45 regmap_update_bits(rdev->regmap, di->vsel_reg, in sy8827n_set_mode()
49 regmap_update_bits(rdev->regmap, di->vsel_reg, in sy8827n_set_mode()
60 struct sy8827n_device_info *di = rdev_get_drvdata(rdev); in sy8827n_get_mode() local
64 ret = regmap_read(rdev->regmap, di->vsel_reg, &val); in sy8827n_get_mode()
86 static int sy8827n_regulator_register(struct sy8827n_device_info *di, in sy8827n_regulator_register() argument
89 struct regulator_desc *rdesc = &di->desc; in sy8827n_regulator_register()
97 rdesc->enable_reg = di->vsel_reg; in sy8827n_regulator_register()
101 rdesc->vsel_reg = di->vsel_reg; in sy8827n_regulator_register()
105 rdev = devm_regulator_register(di->dev, &di->desc, config); in sy8827n_regulator_register()
[all …]
H A Dmp886x.c45 static void mp886x_set_switch_freq(struct mp886x_device_info *di, in mp886x_set_switch_freq() argument
49 const struct mp886x_cfg_info *ci = di->ci; in mp886x_set_switch_freq()
60 dev_err(di->dev, "invalid frequency %d\n", freq); in mp886x_set_switch_freq()
117 struct mp886x_device_info *di = rdev_get_drvdata(rdev); in mp8869_get_voltage_sel() local
129 uv = mp8869_scale(uv, di->r[0], di->r[1]); in mp8869_get_voltage_sel()
177 struct mp886x_device_info *di = rdev_get_drvdata(rdev); in mp8867_set_voltage_sel() local
184 delta = di->sel - sel; in mp8867_set_voltage_sel()
188 di->sel = sel; in mp8867_set_voltage_sel()
195 struct mp886x_device_info *di = rdev_get_drvdata(rdev); in mp8867_get_voltage_sel() local
211 uv = mp8869_scale(uv, di->r[0], di->r[1]); in mp8867_get_voltage_sel()
[all …]
H A Dsy8824x.c40 struct sy8824_device_info *di = rdev_get_drvdata(rdev); in sy8824_set_mode() local
41 const struct sy8824_config *cfg = di->cfg; in sy8824_set_mode()
60 struct sy8824_device_info *di = rdev_get_drvdata(rdev); in sy8824_get_mode() local
61 const struct sy8824_config *cfg = di->cfg; in sy8824_get_mode()
87 static int sy8824_regulator_register(struct sy8824_device_info *di, in sy8824_regulator_register() argument
90 struct regulator_desc *rdesc = &di->desc; in sy8824_regulator_register()
91 const struct sy8824_config *cfg = di->cfg; in sy8824_regulator_register()
107 rdev = devm_regulator_register(di->dev, &di->desc, config); in sy8824_regulator_register()
129 struct sy8824_device_info *di; in sy8824_i2c_probe() local
134 di = devm_kzalloc(dev, sizeof(struct sy8824_device_info), GFP_KERNEL); in sy8824_i2c_probe()
[all …]
/linux/drivers/power/supply/
H A Dds2760_battery.c254 static int ds2760_battery_read_status(struct ds2760_device_info *di) in ds2760_battery_read_status() argument
258 if (di->update_time && time_before(jiffies, di->update_time + in ds2760_battery_read_status()
264 if (di->update_time == 0) { in ds2760_battery_read_status()
272 ret = w1_ds2760_read(di->dev, di->raw + start, start, count); in ds2760_battery_read_status()
274 dev_warn(di->dev, "call to w1_ds2760_read failed (0x%p)\n", in ds2760_battery_read_status()
275 di->dev); in ds2760_battery_read_status()
279 di->update_time = jiffies; in ds2760_battery_read_status()
283 di->voltage_raw = (di->raw[DS2760_VOLTAGE_MSB] << 3) | in ds2760_battery_read_status()
284 (di->raw[DS2760_VOLTAGE_LSB] >> 5); in ds2760_battery_read_status()
285 di->voltage_uV = di->voltage_raw * 4880; in ds2760_battery_read_status()
[all …]
H A Dbq27xxx_battery.c1085 #define BQ27XXX_DM_BUF(di, i) { \ argument
1086 .class = (di)->dm_regs[i].subclass_id, \
1087 .block = (di)->dm_regs[i].offset / BQ27XXX_DM_SZ, \
1120 struct bq27xxx_device_info *di; in poll_interval_param_set() local
1129 list_for_each_entry(di, &bq27xxx_battery_devices, list) in poll_interval_param_set()
1130 mod_delayed_work(system_wq, &di->work, 0); in poll_interval_param_set()
1150 static inline int bq27xxx_read(struct bq27xxx_device_info *di, int reg_index, in bq27xxx_read() argument
1155 if (!di || di->regs[reg_index] == INVALID_REG_ADDR) in bq27xxx_read()
1158 ret = di->bus.read(di, di->regs[reg_index], single); in bq27xxx_read()
1160 dev_dbg(di->dev, "failed to read register 0x%02x (index %d)\n", in bq27xxx_read()
[all …]
H A Drx51_battery.c41 static int rx51_battery_read_voltage(struct rx51_device_info *di) in rx51_battery_read_voltage() argument
43 int voltage = rx51_battery_read_adc(di->channel_vbat); in rx51_battery_read_voltage()
46 dev_err(di->dev, "Could not read ADC: %d\n", voltage); in rx51_battery_read_voltage()
93 static int rx51_battery_read_temperature(struct rx51_device_info *di) in rx51_battery_read_temperature() argument
97 int raw = rx51_battery_read_adc(di->channel_temp); in rx51_battery_read_temperature()
100 dev_err(di->dev, "Could not read ADC: %d\n", raw); in rx51_battery_read_temperature()
132 static int rx51_battery_read_capacity(struct rx51_device_info *di) in rx51_battery_read_capacity() argument
134 int capacity = rx51_battery_read_adc(di->channel_bsi); in rx51_battery_read_capacity()
137 dev_err(di->dev, "Could not read ADC: %d\n", capacity); in rx51_battery_read_capacity()
151 struct rx51_device_info *di = power_supply_get_drvdata(psy); in rx51_battery_get_property() local
[all …]
H A Dbq27xxx_battery_i2c.c21 struct bq27xxx_device_info *di = data; in bq27xxx_battery_irq_handler_thread() local
23 bq27xxx_battery_update(di); in bq27xxx_battery_irq_handler_thread()
28 static int bq27xxx_battery_i2c_read(struct bq27xxx_device_info *di, u8 reg, in bq27xxx_battery_i2c_read() argument
31 struct i2c_client *client = to_i2c_client(di->dev); in bq27xxx_battery_i2c_read()
73 static int bq27xxx_battery_i2c_write(struct bq27xxx_device_info *di, u8 reg, in bq27xxx_battery_i2c_write() argument
76 struct i2c_client *client = to_i2c_client(di->dev); in bq27xxx_battery_i2c_write()
105 static int bq27xxx_battery_i2c_bulk_read(struct bq27xxx_device_info *di, u8 reg, in bq27xxx_battery_i2c_bulk_read() argument
108 struct i2c_client *client = to_i2c_client(di->dev); in bq27xxx_battery_i2c_bulk_read()
122 static int bq27xxx_battery_i2c_bulk_write(struct bq27xxx_device_info *di, in bq27xxx_battery_i2c_bulk_write() argument
125 struct i2c_client *client = to_i2c_client(di->dev); in bq27xxx_battery_i2c_bulk_write()
[all …]
/linux/drivers/gpu/ipu-v3/
H A Dipu-di.c123 static inline u32 ipu_di_read(struct ipu_di *di, unsigned offset) in ipu_di_read() argument
125 return readl(di->base + offset); in ipu_di_read()
128 static inline void ipu_di_write(struct ipu_di *di, u32 value, unsigned offset) in ipu_di_write() argument
130 writel(value, di->base + offset); in ipu_di_write()
133 static void ipu_di_data_wave_config(struct ipu_di *di, in ipu_di_data_wave_config() argument
140 ipu_di_write(di, reg, DI_DW_GEN(wave_gen)); in ipu_di_data_wave_config()
143 static void ipu_di_data_pin_config(struct ipu_di *di, int wave_gen, int di_pin, in ipu_di_data_pin_config() argument
148 reg = ipu_di_read(di, DI_DW_GEN(wave_gen)); in ipu_di_data_pin_config()
151 ipu_di_write(di, reg, DI_DW_GEN(wave_gen)); in ipu_di_data_pin_config()
153 ipu_di_write(di, (down << 16) | up, DI_DW_SET(wave_gen, set)); in ipu_di_data_pin_config()
[all …]
/linux/drivers/net/wireless/intel/iwlwifi/tests/
H A Ddevinfo.c14 static void iwl_pci_print_dev_info(const char *pfx, const struct iwl_dev_info *di) in iwl_pci_print_dev_info() argument
16 u16 subdevice_mask = GENMASK(di->subdevice_m_h, di->subdevice_m_l); in iwl_pci_print_dev_info()
20 if (di->match_rf_type) in iwl_pci_print_dev_info()
22 " rf_type=%03x", di->rf_type); in iwl_pci_print_dev_info()
27 if (di->match_bw_limit) in iwl_pci_print_dev_info()
29 " bw_limit=%d", di->bw_limit); in iwl_pci_print_dev_info()
34 if (di->match_rf_id) in iwl_pci_print_dev_info()
36 " rf_id=0x%x", di->rf_id); in iwl_pci_print_dev_info()
41 if (di->match_cdb) in iwl_pci_print_dev_info()
43 " cdb=%d", di->cdb); in iwl_pci_print_dev_info()
[all …]
/linux/Documentation/translations/it_IT/locking/
H A Dlocktorture.rst12 L'opzione di configurazione CONFIG_LOCK_TORTURE_TEST fornisce un
13 modulo kernel che esegue delle verifiche che *torturano* le primitive di
20 programma si basa sulle modalità di verifica di RCU tramite rcutorture.
22 Questa verifica consiste nella creazione di un certo numero di thread
24 quantità di tempo così da simulare diversi comportamenti nelle sezioni
25 critiche. La quantità di contese su un blocco può essere simulata
35 Specifici di locktorture
39 Numero di thread del kernel che stresseranno l'acquisizione
40 esclusiva dei blocchi (scrittori). Il valore di base è il
41 doppio del numero di processori attivi presenti.
[all …]
H A Dlockstat.rst24 *Lockdep* ha punti di collegamento nelle funzioni di blocco e inoltre
25 mappa le istanze di blocco con le relative classi. Partiamo da questo punto
28 funzioni di blocco e i vari punti di collegamenti che ci sono al loro
51 lock, unlock - le classiche funzioni di blocco
52 __* - i punti di collegamento
55 Grazie a questi punti di collegamento possiamo fornire le seguenti statistiche:
58 - numero di contese su un blocco che riguarda dati di un processore
61 - numero di acquisizioni di blocchi che hanno dovuto attendere
65 - tempo minimo (diverso da zero) che sia mai stato speso in attesa di
69 - tempo massimo che sia mai stato speso in attesa di un blocco
[all …]
H A Dlockdep-design.rst5 Validatore di sincronizzazione durante l'esecuzione
8 Classi di blocchi
11 L'oggetto su cui il validatore lavora è una "classe" di blocchi.
13 Una classe di blocchi è un gruppo di blocchi che seguono le stesse regole di
15 decine di migliaia). Per esempio un blocco nella struttura inode è una classe,
16 mentre ogni inode sarà un'istanza di questa classe di blocco.
18 Il validatore traccia lo "stato d'uso" di una classe di blocchi e le sue
19 dipendenze con altre classi. L'uso di un blocco indica come quel blocco viene
20 usato rispetto al suo contesto d'interruzione, mentre le dipendenze di un blocco
22 che un processo cerca di acquisire L2 mentre già trattiene L1. Dal punto di
[all …]
/linux/Documentation/translations/it_IT/process/
H A Dadding-syscalls.rst8 Aggiungere una nuova chiamata di sistema
12 nuove chiamate di sistema al kernel Linux; questo è da considerarsi come
17 Alternative alle chiamate di sistema
20 La prima considerazione da fare quando si aggiunge una nuova chiamata di
21 sistema è quella di valutare le alternative. Nonostante le chiamate di sistema
22 siano il punto di interazione fra spazio utente e kernel più tradizionale ed
26 - Se le operazioni coinvolte possono rassomigliare a quelle di un filesystem,
27 allora potrebbe avere molto più senso la creazione di un nuovo filesystem o
34 di file all'oggetto corrispondente permette allo spazio utente di
47 considerata un'interfaccia di 'produzione' verso lo spazio utente.
[all …]
H A D1.Intro.rst14 Il resto di questa sezione riguarda il processo di sviluppo del kernel e
15 quella sorta di frustrazione che gli sviluppatori e i loro datori di lavoro
19 differenti modalità, e la capacità di influenzare la direzione dello sviluppo
24 La sezione :ref:`it_development_process` introduce il processo di sviluppo,
25 il ciclo di rilascio del kernel, ed i meccanismi della finestra
26 d'incorporazione. Il capitolo copre le varie fasi di una modifica: sviluppo,
28 liste di discussione. Gli sviluppatori che sono in attesa di poter sviluppare
33 pianificazione di un progetto di sviluppo, con particolare enfasi sul
36 La sezione :ref:`it_development_coding` riguarda il processo di scrittura
42 La sezione :ref:`it_development_posting` parla del processo di pubblicazione
[all …]
H A Ddeprecated.rst14 In un mondo perfetto, sarebbe possibile prendere tutti gli usi di
16 possibile rimuovere la vecchia interfaccia in un singolo ciclo di sviluppo.
18 le tempistiche, non è sempre possibile fare questo tipo di conversione tutta
19 in una volta. Questo significa che nuove istanze di una vecchia interfaccia
20 potrebbero aggiungersi al kernel proprio quando si sta cercando di rimuoverle,
21 aumentando così il carico di lavoro. Al fine di istruire gli sviluppatori su
30 perché uno degli obiettivi del kernel è quello di compilare senza avvisi;
32 di `__deprecated` in un file d'intestazione sia opportuno per segnare una
45 sono stati ripristinati?). Molto spesso l'uso di BUG()
47 impossibile un'attività di debug o anche solo leggere un rapporto
[all …]
H A D3.Early-stage.rst11 Osservando un progetto di sviluppo per il kernel Linux, si potrebbe essere
14 viene fatta prima che una sola linea di codice venga scritta. Il tempo speso
21 Come qualsiasi progetto ingegneristico, un miglioramento del kernel di
26 può portare all'emergere di problemi.
35 lista di discussione linux-kernel, dove incontrò subito dei problemi.
37 Per gli sviluppatori audio, questo modulo di sicurezza era sufficiente a
41 e un rischio per la stabilità del sistema. Le loro soluzioni di punta nel
46 La comunità audio, comunque, non poteva vedere al di là della singola
48 Il conseguente dissenso lasciò in quegli sviluppatori un senso di
49 disillusione nei confronti dell'intero processo di sviluppo; uno di loro
[all …]
H A Dvolatile-considered-harmful.rst12 essere cambiate al di fuori dal thread di esecuzione corrente; come risultato,
15 *volatile* come una variabile atomica di facile utilizzo, ma non è così.
16 L'uso di *volatile* nel kernel non è quasi mai corretto; questo documento ne
19 Il punto chiave da capire su *volatile* è che il suo scopo è quello di
23 Il processo di protezione contro gli accessi concorrenti indesiderati eviterà
28 (spinlock, mutex, barriere di sincronizzazione, ecc) sono progettate per
30 non ci sarà bisogno di utilizzare *volatile*. Se vi sembra che *volatile* sia
32 In un pezzo di codice kernel scritto a dovere, *volatile* può solo servire a
35 Considerate questo tipico blocco di codice kernel::
42 Se tutto il codice seguisse le regole di sincronizzazione, il valore di un
[all …]
H A Dmanagement-style.rst8 Il modello di gestione del kernel Linux
11 Questo breve documento descrive il modello di gestione del kernel Linux.
14 ed è principalmente scritto per evitare di rispondere [#f1]_ in continuazione
17 Il modello di gestione è qualcosa di molto personale e molto più difficile da
18 qualificare rispetto a delle semplici regole di codifica, quindi questo
26 occupate di convalidare acquisti o avete una qualche idea sul budget del vostro
30 Prima di tutto, suggerirei di acquistare "Le sette regole per avere successo",
31 e di non leggerlo. Bruciatelo, è un grande gesto simbolico.
35 di come rispondere.
49 Il gioco consiste nell'"evitare" di dover prendere decisioni. In particolare
[all …]
H A Dmaintainer-pgp-guide.rst23 Il ruolo di PGP nello sviluppo del kernel Linux
27 di sviluppo del kernel e, in secondo luogo, stabilisce canali di comunicazione
28 affidabili tra sviluppatori attraverso lo scambio di email firmate con PGP.
33 - repositori distribuiti di sorgenti (git)
34 - rilasci periodici di istantanee (archivi tar)
40 hanno sul loro posto di lavoro. A tal scopo:
50 Fin dal 2011, quando i sistemi di kernel.org furono compromessi, il principio
51 generale del progetto Kernel Archives è stato quello di assumere che qualsiasi
56 pratiche di sicurezza messe in atto.
60 non sia fatto semplicemente per incolpare qualcun'altro per future falle di
[all …]
H A Dbotching-up-ioctls.rst6 (Come evitare di) Raffazzonare delle ioctl
14 imparato negli ultimi anni è l'inutilità di cercare di creare un'interfaccia
15 unificata per gestire la memoria e le unità esecutive di diverse GPU. Dunque,
16 oggigiorno ogni driver ha il suo insieme di ioctl per allocare memoria ed
18 sistema che finge di essere generico, ma al suo posto ci sono interfacce
21 Per evitare di ripetere gli stessi errori ho preso nota delle lezioni imparate
22 mentre raffazzonavo il driver drm/i915. La maggior parte di queste lezioni si
25 GPU. Probabilmente, ogni sviluppatore di driver per GPU dovrebbe imparare queste
33 partenza e ritrovarvi ad aggiungere un livello di compatibilità a 32-bit.
48 quando si passano vettori di strutture dati al kernel, o quando il kernel
[all …]
/linux/fs/btrfs/
H A Dxattr.c30 struct btrfs_dir_item *di; in btrfs_getxattr() local
42 di = btrfs_lookup_xattr(NULL, root, path, btrfs_ino(BTRFS_I(inode)), in btrfs_getxattr()
44 if (!di) { in btrfs_getxattr()
47 } else if (IS_ERR(di)) { in btrfs_getxattr()
48 ret = PTR_ERR(di); in btrfs_getxattr()
55 ret = btrfs_dir_data_len(leaf, di); in btrfs_getxattr()
60 if (btrfs_dir_data_len(leaf, di) > size) { in btrfs_getxattr()
72 data_ptr = (unsigned long)((char *)(di + 1) + in btrfs_getxattr()
73 btrfs_dir_name_len(leaf, di)); in btrfs_getxattr()
75 btrfs_dir_data_len(leaf, di)); in btrfs_getxattr()
[all …]
/linux/Documentation/translations/it_IT/i2c/
H A Di2c-protocol.rst5 Questo documento è una panoramica delle transazioni di base I2C e delle API
12 S Condizione di avvio
13 P Condizione di stop
14 Rd/Wr (1 bit) Bit di lettura/scrittura. Rd vale 1, Wr vale 0.
15 A, NA (1 bit) Bit di riconoscimento (ACK) e di non riconoscimento (NACK).
18 Dati (8 bit) Un byte di dati.
25 Transazione semplice di invio
33 Transazione semplice di ricezione
46 Sono come le transazioni di cui sopra, ma invece di uno condizione di stop P
47 viene inviata una condizione di inizio S e la transazione continua.
[all …]
/linux/Documentation/translations/it_IT/core-api/
H A Dsymbol-namespaces.rst17 l'API esposta internamente al kernel. Permette ai manutentori di un
18 sottosistema di organizzare i simboli esportati in diversi spazi di
21 la disponibilità di un gruppo di simboli in altre parti del kernel. Ad
22 oggi, i moduli che usano simboli esportati da uno spazio di nomi
24 della configurazione, potrebbe rifiutare di caricare il modulo o
25 avvisare l'utente di un'importazione mancante.
32 EXPORT_SYMBOL e simili vengono guidati verso la creazione di voci in ksymtab.
38 di esportare simboli del kernel nella rispettiva tabella, ci sono
39 varianti che permettono di esportare simboli all'interno di uno spazio dei
43 essere un simbolo di preprocessore. Per esempio per esportare il
[all …]
/linux/Documentation/translations/it_IT/RCU/
H A Dtorture.rst12 L'opzione CONFIG_RCU_TORTURE_TEST è disponibile per tutte le implementazione di
18 I parametri di modulo hanno tutti il prefisso "rcutortute.", vedere
35 usare altri comandi per visualizzare i messaggi di printk(). La funzione
38 La prima e l'ultima riga mostrano i parametri di module di rcutorture, e solo
47 * "ver": Il numero di volte dall'avvio che il processo scrittore di RCU ha
50 * "tfle": se non è zero, indica la lista di strutture "torture freelist" da
54 * "rta": numero di strutture allocate dalla lista "torture freelist".
56 * "rtaf": il numero di allocazioni fallite dalla lista "torture freelist" a
58 un brutto segno se questo numero rappresenta una frazione troppo alta di
61 * "rtf": il numero di rilasci nella lista "torture freelist"
[all …]

123456789