English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1452) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2026.01.07. 14:10)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés
Σ: 1 post

miklos_akos  (statz) Főfasz
#5, Főfasz (1047)
4661 | #5ab5 | ^ | Idézet | Wed, 31 Dec 2025 00:34:53 +01
185.187.*.* Linux x86 Mozilla Firefox Unknown *.75.187.185.dialin.segfault.club
@TCH:
Tehát felfutó élnél kéne piszkálni, de lefutónál piszkálják? Na, most ezzel nekem így elsőre az a bajom, hogy az él az nem egy lekérdezhető állapot, hanem trigger. Amikor fel, vagy lefut, akkor megszakítás keletkezik és az odavágó kód meghívódik.
Igen, de ugye a kodot is ehhez kell igazitani, jobb esetben max lassabban fut le, rosszabb esetben szetveri a teljes buszt (ha ez esetlegesen opcio I2C buszon).
@TCH:
Viszont te kódból ezt nem látod, hogy mire hívódtál meg, mert az a hardver szintjén dől el és éppen ezért nem is hívódhat meg rossz élre. Kódból jelszintet lehet nézni, mert az állapot, amit le lehet kérdezni. Úgyhogy, most hirtelen csak úgy tudnám ezt elképzelni, hogy itt a fel és a lefutó élek is triggerek és a kódban meg is vannak rá az interrupt vektorok és ezekben látod te, hogy pont a másik vektornál akarják piszkálni, mint amelyiknél illene. Vagy, félreértetted és jelszintet csekkol a kód. Tudsz mutatni kódrészletet, ahol ezt látod? (Aztán, majd holnap lecsekkolom, mert mingyán ráalszok a billentyűzetre.)

Vagy én értem félre és a kód itt nem kapja az éleket (vagy jelszintet), hanem adja, azaz ő triggereli az IC-t, hogy olvasni lehessen? Azzal meg az volna a baj, hogy a hozzáférési időt - és az odavágó jeleket - a busz adja, a kód max. az irányt szabhatja meg a jelszint beállításával, dehát egy kódsor az N db. gépi kódú utasítás a CPU-nak és egy utasítás alatt akár több buszciklus is bekövetkezhet, szóval megint csak nem értem.


Van az irqreturn_t tipusu nvt_ts_irq fuggveny, ami igy hirtelenjeben kiugrik es kezd barmit is az IRQ-val:
static irqreturn_t nvt_ts_irq(int irq, void *dev_id)
{
        struct nvt_ts_data *data = dev_id;
        struct device *dev = &data->client->dev;
        int i, error, slot, x, y;
        bool active;
        u8 *touch;

        if (!data->input)
                return IRQ_HANDLED;

        error = nvt_ts_read_data(data->client, NVT_TS_TOUCH_START, data->buf,
                                 data->max_touches * NVT_TS_TOUCH_SIZE);
        if (error)
                return IRQ_HANDLED;

        for (i = 0; i < data->max_touches; i++) {
                touch = &data->buf[i * NVT_TS_TOUCH_SIZE];

                if (touch[0] == NVT_TS_TOUCH_INVALID)
                        continue;

                slot = touch[0] >> NVT_TS_TOUCH_SLOT_SHIFT;
                if (slot < 1 || slot > data->max_touches) {
                        dev_dbg(dev, "slot %d out of range, ignoring\n", slot);
                        continue;
                }

                switch (touch[0] & NVT_TS_TOUCH_TYPE_MASK) {
                case NVT_TS_TOUCH_NEW:
                case NVT_TS_TOUCH_UPDATE:
                        active = true;
                        break;
                case NVT_TS_TOUCH_RELEASE:
                        active = false;
                        break;
                default:
                        dev_warn(dev, "slot %d unknown state %d\n", slot, touch[0] & 7);
                        continue;
                }

                slot--;
                x = (touch[1] << 4) | (touch[3] >> 4);
                y = (touch[2] << 4) | (touch[3] & 0x0f);

                input_mt_slot(data->input, slot);
                input_mt_report_slot_state(data->input, MT_TOOL_FINGER, active);
                touchscreen_report_pos(data->input, &data->prop, x, y, true);
        }

        input_mt_sync_frame(data->input);
        input_sync(data->input);

        return IRQ_HANDLED;
}

Illetve ez a struct definialja a kulonbozo IRQ-kat:
static const int nvt_ts_irq_type[4] = {
        IRQF_TRIGGER_RISING,
        IRQF_TRIGGER_FALLING,
        IRQF_TRIGGER_LOW,
        IRQF_TRIGGER_HIGH
};

Meg ez is hasznalja az IRQ-kat: nvt_ts_initial_power_on_and_register_inputdev:
        error = devm_request_threaded_irq(dev, data->client->irq, NULL,
                                          nvt_ts_irq,
                                          IRQF_ONESHOT | IRQF_NO_AUTOEN |
                                                nvt_ts_irq_type[irq_type],
                                          data->client->name, data);
        if (error) {
                dev_err(dev, "failed to request irq: %d\n", error);
                return error;
        }


Mint mondtam en sik hulye vagyok ehhez, szimplan csak nyomkodom a cuccot, dobalom a szart es ami a falon marad az a "jo megoldas".


English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1452) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2026.01.07. 14:10)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés

Név: (max 255 byte)

Email: (max 255 byte) Nem kötelező!

Üzenet: (max 65536 kar.) 65536-0=65536




crap_vkn v4.34.10 by TCH
Thx to saxus for the escaped string decoder function (PHP), the realIP function (PHP) & the SQL handle layer (PHP), to thookerov for the int_divide function (PHP), to Jeff Anderson for the getSelText function (JS), to Alex King for the insertAtCursor function (JS), Flood3r for the new CSS styles, Pety for the spamprotection idea and some design and comfort ideas, MaxMind for the IP2Country database, famfamfam for the flags of countries and an unknown PHP programmer for the removeAccents function.



Kecskebaszók ide!