Portál AbcLinuxu, 5. listopadu 2025 10:29
c.adapter = adap;
for (i = 0; -1 != probe[i]; i++) {
c.addr = probe[i];
+
+ if (c.adapter->id == I2C_HW_SAA7134 && probe[i] == 0xb) {
+ /* enable ir receiver */
+ buf = 0;
+ if (1 != i2c_master_send(&c,&buf,1))
+ dprintk(1,"Unable to enable ir receiver.\n");
+ }
rc = i2c_master_recv(&c,&buf,0);
dprintk(1,"probe 0x%02x @ %s: %s\n",
probe[i], adap->name,
což by mohla být nějaká inicializace nebo detekce dálkového ovládaní, ale v novějších jádrech se proměnné dost poměnily, takže jsem se na tom zaseknul. V novějším jádře je for (i = 0; -1 != probe[i]; i++) {
msg.addr = probe[i];
rc = i2c_transfer(adap, &msg, 1);
dprintk(1,"probe 0x%02x @ %s: %s\n",
probe[i], adap->name,
(1 == rc) ? "yes" : "no");
if (1 == rc) {
ir_attach(adap, probe[i], 0, 0);
break;
}
}
return 0;
a já nejsem schopen ten patch na tohle napasovat. Dokáže to někdo?
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.