ВНИМАНИЕ! Наша конференция посвящена космической тематике и компьютерным играм. Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!
|
» LPC bus I/O под linux | страница 4 |
|
|
|
Железный канал: «LPC bus I/O под linux» |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
А всё так и должно быть всё правильно.
Этож конфиг регистры.
Код: |
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdint.h>
void Outport(int fd, uint16_t port, uint8_t value){
lseek(fd, port, SEEK_SET);
write(fd, &value, 1);
}
uint8_t Inport(int fd, uint16_t port){
uint8_t value;
lseek(fd, port, SEEK_SET);
read(fd, &value, 1);
return value;
}
int main(){
int file;
uint8_t version, revision;
file = open("/dev/port", O_RDWR | O_RSYNC | O_SYNC);
if(file == -1){
printf("Cant open /dev/port\r\n");
}
Ouport(file, 0x2E, 0x55);
Ouport(file, 0x2E, 0x0D);
version = Inport(file, 0x2F);
Ouport(file, 0x2E, 0x0E);
revision = Inport(file, 0x2F);
Ouport(file, 0x2E, 0xAA);
printf("Version - 0x%02X.0x%02X\r\n", version, revision);
close(file);
} |
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
VBKesha : |
А всё так и должно быть всё правильно.
Этож конфиг регистры.
Cкрытый текст (кликните здесь для просмотра)
Код: |
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdint.h>
void Outport(int fd, uint16_t port, uint8_t value){
lseek(fd, port, SEEK_SET);
write(fd, &value, 1);
}
uint8_t Inport(int fd, uint16_t port){
uint8_t value;
lseek(fd, port, SEEK_SET);
read(fd, &value, 1);
return value;
}
int main(){
int file;
uint8_t version, revision;
file = open("/dev/port", O_RDWR | O_RSYNC | O_SYNC);
if(file == -1){
printf("Cant open /dev/port\r\n");
}
Ouport(file, 0x2E, 0x55);
Ouport(file, 0x2E, 0x0D);
version = Inport(file, 0x2F);
Ouport(file, 0x2E, 0x0E);
revision = Inport(file, 0x2F);
Ouport(file, 0x2E, 0xAA);
printf("Version - 0x%02X.0x%02X\r\n", version, revision);
close(file);
} |
|
|
root@nar1gw1 ~/pm# cc test.c
/tmp/ccKcA4W6.o: In function `main':
test.c .text+0xc4): undefined reference to `Ouport'
test.c .text+0xd6): undefined reference to `Ouport'
test.c .text+0xfb): undefined reference to `Ouport'
test.c .text+0x123): undefined reference to `Ouport'
collect2: error: ld returned 1 exit status
root@nar1gw1 ~/pm#
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (15:14 10-02-2019), всего редактировалось 1 раз |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
Ouport поменяй на Outport
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
VBKesha : |
Ouport поменяй на Outport
|
ага заметил
Cкрытый текст (кликните здесь для просмотра)
root@nar1gw1 ~# cd pm
root@nar1gw1 ~/pm# cc test.c
/tmp/ccKcA4W6.o: In function `main':
test.c  .text+0xc4): undefined reference to `Ouport'
test.c  .text+0xd6): undefined reference to `Ouport'
test.c  .text+0xfb): undefined reference to `Ouport'
test.c  .text+0x123): undefined reference to `Ouport'
collect2: error: ld returned 1 exit status
root@nar1gw1 ~/pm# nano file
root@nar1gw1 ~/pm# nano test.c
root@nar1gw1 ~/pm# cc test.c
root@nar1gw1 ~/pm# ./a.out
Version - 0x5A.0x00
root@nar1gw1 ~/pm#
|
_________________ Quaere Vērum
------------------------ |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
Ну вот CR0D как раз и должен быть 0x5A.
Дальше или сам, ну или я ближе к 6ти напишу, тут сейчас рядом компилятора нет.
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
VBKesha : |
Ну вот CR0D как раз и должен быть 0x5A.
Дальше или сам, ну или я ближе к 6ти напишу, тут сейчас рядом компилятора нет.
|
OK!
Благодарствую, попытаюсь самъ, отпишусь.
чето странно както
Cкрытый текст (кликните здесь для просмотра)
root@nar1gw1 ~/pm# cc testCRx.c
root@nar1gw1 ~/pm# ./a.out
CR31 - 0x00
CR32 - 0x00
CR33 - 0x00
CR34 - 0x00
CR35 - 0x78
CR36 - 0x00
CR37 - 0xFD
CR38 - 0x00
CR39 - 0x80
Runtime Register Block Address - 0x68
|
Вроде лампочка включилось wlan0 появился в списке интерфейсов, rfkill говорит ничего не блокед!
Cкрытый текст (кликните здесь для просмотра)
root@nar1gw1 ~/pm# cc testCRx_GP4Out_03h.c
root@nar1gw1 ~/pm# ./a.out
GP4_port_0x68Fh - 0x03
CR31 - 0x00
CR32 - 0x00
CR33 - 0x02
CR34 - 0x00
CR35 - 0x78
CR36 - 0x00
CR37 - 0xFD
CR38 - 0x00
CR39 - 0x80
Runtime Register Block Address - 0x68
root@nar1gw1 ~/pm# rfkill list all
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
root@nar1gw1 ~/pm#
|
интерфейс поднялся!
wlan0 Link encap:Ethernet HWaddr 00:22:fb:be:1e:4a
inet addr:192.168.147.102 Bcast:192.168.147.255 Mask:255.255.255.0
inet6 addr: fe80::222:fbff:febe:1e4a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:86 errors:0 dropped:0 overruns:0 frame:0
TX packets:37 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17177 (16.7 KiB) TX bytes:8009 (7.8 KiB)
root@nar1gw1 ~/pm#
Огромное спасибо! с меня причетается!
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (16:49 10-02-2019), всего редактировалось 3 раз(а) |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
PS. Всётаки неплохо бы готовый вариант выложить на какой нить гитхаб с небольшим описанием, что делает и зачем.
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
VBKesha : |
PS. Всётаки неплохо бы готовый вариант выложить на какой нить гитхаб с небольшим описанием, что делает и зачем.
|
всё что я сделал это прочел из GP4 data порта 0x68Fh там было 0х02h
нулевой бит в нуле, поднял его записав 1 (0х03h)
остальное сделал ты.
мне показалось неправельным направление бита GP2.1
там по схеме должно быть выход а число там 78h - 01111000
что соответствует входу, в итоге RF_LED_ON всеравно загарается
и я решил его не трогать.
Cкрытый текст (кликните здесь для просмотра)
Код: |
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdint.h>
void Outport(int fd, uint16_t port, uint8_t value){
lseek(fd, port, SEEK_SET);
write(fd, &value, 1);
}
uint8_t Inport(int fd, uint16_t port){
uint8_t value;
lseek(fd, port, SEEK_SET);
read(fd, &value, 1);
return value;
}
int main(){
int file;
uint8_t GP4, CR31, CR32, CR33, CR34, CR35, CR36, CR37, CR38, CR39, RRBA;
file = open("/dev/port", O_RDWR | O_RSYNC | O_SYNC);
if(file == -1){
printf("Cant open /dev/port\r\n");
}
Outport(file, 0x68F, 0x03);
GP4 = Inport(file, 0x68F);
Outport(file, 0x2E, 0x55);
Outport(file, 0x2E, 0x31);
CR31 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x32);
CR32 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x33);
CR33 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x34);
CR34 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x35);
CR35 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x36);
CR36 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x37);
CR37 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x38);
CR38 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x39);
CR39 = Inport(file, 0x2F);
Outport(file, 0x2E, 0x30);
RRBA = Inport(file, 0x2F);
Outport(file, 0x2E, 0xAA);
printf("GP4_port_0x68Fh - 0x%02X\r\n", GP4);
printf("CR31 - 0x%02X\r\n", CR31);
printf("CR32 - 0x%02X\r\n", CR32);
printf("CR33 - 0x%02X\r\n", CR33);
printf("CR34 - 0x%02X\r\n", CR34);
printf("CR35 - 0x%02X\r\n", CR35);
printf("CR36 - 0x%02X\r\n", CR36);
printf("CR37 - 0x%02X\r\n", CR37);
printf("CR38 - 0x%02X\r\n", CR38);
printf("CR39 - 0x%02X\r\n", CR39);
printf("Runtime Register Block Address - 0x%02X\r\n", RRBA);
close(file);
}
|
|
пока в таком виде поставил в cron при старте /path/./a.out
и не заморачивался особо хотя наверно так делать ненадо так как оно должно включаться до инициализации драйвера wifi интерфейса.
Если по поводу кода чтото нужно специальное (все регистры там повыводить пстой командный интерфейс сделать), скажи как ты видиш, попробую сделаю и выложу куда надо как скажеш.
_________________ Quaere Vērum
------------------------ |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
По коду в первых строках у тебя
Код: |
Outport(file, 0x68F, 0x03); |
Это может работать, но это неправильно.
Неправильно как минимум по той причине что если регистр CX30 не настроен правильно, то эта запись ничего не сделает, контроллер её просто не будет обрабатывать.
По хорошему тебе всётаки нужно правильно настроить все регитсы а уже потом делать запись в 0x68F
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do
Последний раз редактировалось: VBKesha (19:46 10-02-2019), всего редактировалось 1 раз |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
VBKesha : |
По коду в первых строках у тебя
Код: |
Outport(file, 0x68F, 0x03); |
Это может работать, но это неправильно.
Неправильно как минимум по той причине что если регистр CX30 не настроен правильно, то эта запись ничего не сделает, контроллер её просто не будет обрабатывать.
По хорошему тебе всётаки нужно правильно настроить все регитсы а уже потом делать запись в 0x68F
|
есть ли чтото ещё кроме этого
j_Outport(46, 85);
v6 = sub_4F87BB(v24, 48);
v17 = v6;
if ( !v6 )
sub_4FCF1E(48, 104);
j_Outport(46, 55);
j_Outport(47, 245);
j_Outport(46, 53);
j_Outport(47, 120);
j_Outport(46, 170);
что необходимо встроить в наши правельные настройки?
всетки непонятно кто пишет в ЦР30 <68Н сразу после рестарта
похоже это должно делаться на уровне биоса и он просто недописан
и потому ось нуждается в дополнительных примочках доделывающих инициализацию моста так как это необходимо пользователю
этот наш скомпилированный a.out независимо от оси будет работать если пускать его до загрузки системы?
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (10:41 11-02-2019), всего редактировалось 2 раз(а) |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 4(58) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
_RAZAAR_ : |
этот наш скомпилированный a.out независимо от оси будет работать
|
На сколько мне известно - не будет отдельно без ОС работать, это не образ для запуска на чистом железе.
добавлено спустя 1 минуту:
А ты что, хочешь некий образ грузить с этой программой и использовать твою железку чисто как "роутер"?
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (17:02 11-02-2019), всего редактировалось 1 раз |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
БулерМэн : |
_RAZAAR_ : |
этот наш скомпилированный a.out независимо от оси будет работать
|
На сколько мне известно - не будет отдельно без ОС работать, это не образ для запуска на чистом железе.
добавлено спустя 1 минуту:
А ты что, хочешь некий образ грузить с этой программой и использовать твою железку чисто как "роутер"?
|
дляначала хочу просто пустить его до загрузки драйвера вйфай
ато попрежнему драйвер при загрузке выводит эту надпись
Cкрытый текст (кликните здесь для просмотра)
Feb 4 18:08:51 nar1gw1 kernel: [ 9.501024] Intel(R) Wireless WiFi driver for Linux, in-tree:
Feb 4 18:08:51 nar1gw1 kernel: [ 9.501032] Copyright(c) 2003- 2014 Intel Corporation
Feb 4 18:08:51 nar1gw1 kernel: [ 9.501298] iwlwifi 0000:01:00.0: can't disable ASPM; OS doesn't have ASPM control
Feb 4 18:08:51 nar1gw1 kernel: [ 9.501468] iwlwifi 0000:01:00.0: irq 40 for MSI/MSI-X
Feb 4 18:08:51 nar1gw1 kernel: [ 9.537029] iwlwifi 0000:01:00.0: firmware: direct-loading firmware iwlwifi-5000-5.ucode
Feb 4 18:08:51 nar1gw1 kernel: [ 9.537512] iwlwifi 0000:01:00.0: loaded firmware version 8.83.5.1 build 33692 op_mode iwldvm
Feb 4 18:08:51 nar1gw1 kernel: [ 9.544138] floppy0: no floppy controllers found
Feb 4 18:08:51 nar1gw1 kernel: [ 9.544160] work still pending
Feb 4 18:08:51 nar1gw1 kernel: [ 9.616549] iwlwifi 0000:01:00.0: CONFIG_IWLWIFI_DEBUG disabled
Feb 4 18:08:51 nar1gw1 kernel: [ 9.616558] iwlwifi 0000:01:00.0: CONFIG_IWLWIFI_DEBUGFS disabled
Feb 4 18:08:51 nar1gw1 kernel: [ 9.616564] iwlwifi 0000:01:00.0: CONFIG_IWLWIFI_DEVICE_TRACING disabled
Feb 4 18:08:51 nar1gw1 kernel: [ 9.616571] iwlwifi 0000:01:00.0: Detected Intel(R) WiFi Link 5100 AGN, REV=0x54
Feb 4 18:08:51 nar1gw1 kernel: [ 9.617333] iwlwifi 0000:01:00.0: L1 Disabled - LTR Disabled
Feb 4 18:08:51 nar1gw1 kernel: [ 9.617744] iwlwifi 0000:01:00.0: RF_KILL bit toggled to disable radio.
Feb 4 18:08:51 nar1gw1 kernel: [ 9.672209] ieee80211 phy0: Selected rate control algorithm 'iwl-agn-rs'
|
както можно поставить условие грузить драйвер вайфай только после отработки самопальной включалки нашей?
ато даже после включения вайфай в последствии iwlist както неадекватно отвечает хотя никаких других проблем в работе интерфейса по назначению не наблюдается.
в виде рутера на базе zeroshell тоже планирую потестить
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (20:11 11-02-2019), всего редактировалось 1 раз |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 4(58) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
_RAZAAR_ : |
както можно поставить условие грузить драйвер вайфай только после отработки самопальной включалки нашей?
|
см Скрипты загрузки и выгрузки модулей https://ixnfo.com/zagruzka-i-vyigruzka-moduley-v-linux.html
Смысл всего этого в том, чтобы модуль с вафлей загружался позднее твоей программы в /init.d/.
Как вариант, твой скрипт, который запускает программу - сначала выгружает из ядра модуль вафли, потом запускает твою программку, и наконец снова загружает модуль вафли.
См. на тему ядра линукс и почему стоит сначала пошаманить с выгрузкой, прежде чем собирать собственные модули и запихивать их в ядро https://habr.com/ru/post/117654/
ЗЫ в роутер еще не просто так запихнуть свой модуль, т.к. прошивку роутера нужно собирать на машине с той же архитектурой, а в роутерах обычно кастрированные ядра, без возможности что-либо собирать непосредственно на них. Поэтому если очень хочется - то для роутера нужна виртуалка с загруженным образом системы работающей под RISC-архитектурой.
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (07:12 12-02-2019), всего редактировалось 4 раз(а) |
|
|
VBKesha
817 EGP
      Рейтинг канала: 7(600) Репутация: 132 Сообщения: 3330 Откуда: обл.Брянская г. Трубчевск Зарегистрирован: 07.12.2005
 |
|
_RAZAAR_ : |
что необходимо встроить в наши правельные настройки?
|
Попозже распишу...
БулерМэн : |
нужна виртуалка с загруженным образом системы работающей под RISC-архитектурой.
|
Надо использовать кроскомпиляцию.
_________________ JumpGate. Quantar Optimus.
Jumpgate(TM) . . . welcome to your next life . . . There's nothing you can't do |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 4(58) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
VBKesha : |
кроскомпиляцию.
|
например как тут? https://habr.com/ru/post/278159/
а ничего, что там товарищи используют виртуальные платы?
_________________ Сосиска в хлебе |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
БулерМэн : |
_RAZAAR_ : |
както можно поставить условие грузить драйвер вайфай только после отработки самопальной включалки нашей?
|
см Скрипты загрузки и выгрузки модулей https://ixnfo.com/zagruzka-i-vyigruzka-moduley-v-linux.html
Смысл всего этого в том, чтобы модуль с вафлей загружался позднее твоей программы в /init.d/.
Как вариант, твой скрипт, который запускает программу - сначала выгружает из ядра модуль вафли, потом запускает твою программку, и наконец снова загружает модуль вафли.
См. на тему ядра линукс и почему стоит сначала пошаманить с выгрузкой, прежде чем собирать собственные модули и запихивать их в ядро https://habr.com/ru/post/117654/
ЗЫ в роутер еще не просто так запихнуть свой модуль, т.к. прошивку роутера нужно собирать на машине с той же архитектурой, а в роутерах обычно кастрированные ядра, без возможности что-либо собирать непосредственно на них. Поэтому если очень хочется - то для роутера нужна виртуалка с загруженным образом системы работающей под RISC-архитектурой.
|
под какой такой RISC-архитектурой?
яж не собираюсь платформу менять, CISC x86 на атоме как была так и остаётся, буду экспериментировать только однотипной осью даже возможно одним и темже ядром незнаю какие различия между последним для debian jessie и тем что используется на данный момент в zeroshell (centOS помойму)
и что получается скомпилированный три строчки команд ничего особого не делающий код под линукс условно номер 1 небудет работать под линукс условно номер 2 под одним и темже процом и железом?
на мыло изведусь распотрашу этот код встрою его в бут рекорд какой бы он там небыл и знать ни про какие системы ничего не знаю
за загрузку выгрузку спасибко!
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (20:22 12-02-2019), всего редактировалось 1 раз |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 4(58) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
_RAZAAR_ : |
распотрашу этот код встрою его в бут рекорд
|
по моему проще скрипт написать, который сделает все что нужно
Или ты решил уже Bios модифицировать этим кодом?
_________________ Сосиска в хлебе |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
БулерМэн : |
_RAZAAR_ : |
распотрашу этот код встрою его в бут рекорд
|
по моему проще скрипт написать, который сделает все что нужно
Или ты решил уже Bios модифицировать этим кодом?
|
Куда уж проще ничего кроме сделанного не делать вообще
машинка под линухом крутится , wifi работает, цель достигнута.
скрипты загрузки выгрузки тотже костылёк что и с cronом при старте.
то что биос надо доделать как минимум опцией меню Wifi Hardlock on/off
это темя отдельное довольно сложное.
а модифицировать загрущик оси с такой опцией наверно по проще будет.
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (18:39 13-02-2019), всего редактировалось 1 раз |
|
|
AnrDaemon
864 EGP
        Рейтинг канала: 8(796) Репутация: 37 Сообщения: 12322
Зарегистрирован: 17.10.2004
 |
|
_RAZAAR_ : |
скрипты загрузки выгрузки тотже костылёк
|
Как-нибудь загляни в то, что у тебя сейчас при загрузке запускается.
Быстро отбивает желание писать такой бред.
_________________ Люблю свободный полёт... :) |
|
|
_RAZAAR_
62 EGP
  Рейтинг канала: 2(11) Репутация: -13 Сообщения: 2854 Заблокирован Откуда: РАЗААРЪ - 40Лы от Лаве Зарегистрирован: 15.04.2008
 |
|
AnrDaemon : |
_RAZAAR_ : |
скрипты загрузки выгрузки тотже костылёк
|
Как-нибудь загляни в то, что у тебя сейчас при загрузке запускается.
Быстро отбивает желание писать такой бред.
|
При загрузке чего?
Загрузке загрузчика ОС?
Что ещё тут можно почикать чтоб какможно ближе к трём командам процессора продвинуться?
Cкрытый текст (кликните здесь для просмотра)
Код: |
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdint.h>
void Outport(int fd, uint16_t port, uint8_t value){
lseek(fd, port, SEEK_SET);
write(fd, &value, 1);
}
int main(){
int file;
uint8_t GP4;
file = open("/dev/port", O_RDWR | O_RSYNC | O_SYNC);
Outport(file, 0x68F, 0x03);
close(file);
} |
|
это ужас конечно
Cкрытый текст (кликните здесь для просмотра)
 [/url]
|
_________________ Quaere Vērum
------------------------
Последний раз редактировалось: _RAZAAR_ (21:07 13-02-2019), всего редактировалось 1 раз |
|
|
|
|
|
Железный канал: «LPC bus I/O под linux» |
|
К списку каналов | Наверх страницы |
Цитата не в тему: Семья Зейн приглашает на свадьбу! Прилетайте с друзьями: чем больше народу, тем веселее шоу!
|
» LPC bus I/O под linux | страница 4 |
|